stash visibility
This commit is contained in:
parent
23164af04f
commit
1853577ff5
26 changed files with 276 additions and 39 deletions
|
|
@ -42,6 +42,7 @@ export default createStore({
|
|||
files: [],
|
||||
categories: [],
|
||||
availability_policies: [],
|
||||
visibility_policies: [],
|
||||
domains: [],
|
||||
storage_locations: [],
|
||||
active_workflows: [],
|
||||
|
|
@ -100,6 +101,9 @@ export default createStore({
|
|||
setAvailabilityPolicies(state, availability_policies) {
|
||||
state.availability_policies = availability_policies;
|
||||
},
|
||||
setVisibilityPolicies(state, visibility_policies) {
|
||||
state.visibility_policies = visibility_policies;
|
||||
},
|
||||
setDomains(state, domains) {
|
||||
state.domains = domains;
|
||||
},
|
||||
|
|
@ -343,7 +347,7 @@ export default createStore({
|
|||
? await dispatch('getFriendServers', {username: 'x@' + splitGroupHandle(item.owner_group).domain})
|
||||
: await dispatch('getHomeServers')
|
||||
const owner = item.owner_group ? encodeHandleForUrl(item.owner_group) : state.user
|
||||
const data = {availability_policy: 'private', ...item}
|
||||
const data = {availability_policy: 'private', visibility_policy: 'private', ...item}
|
||||
delete data.owner_group
|
||||
const reply = await servers.post(getters.signAuth, '/api/v1/inventory_items/' + owner + '/', data)
|
||||
state.last_load.files = 0
|
||||
|
|
@ -353,7 +357,7 @@ export default createStore({
|
|||
const servers = item.owner_group
|
||||
? await dispatch('getFriendServers', {username: 'x@' + splitGroupHandle(item.owner_group).domain})
|
||||
: await dispatch('getHomeServers')
|
||||
const data = {availability_policy: 'friends', ...item}
|
||||
const data = {availability_policy: 'friends', visibility_policy: 'friends', ...item}
|
||||
data.files = data.files.map(file => file.id)
|
||||
// Path is scoped by the owner's handle, not the item's own id domain - see docs/implementation.md#owner-handle-scoped-routes.
|
||||
const path = '/api/v1/inventory_items/' + encodeHandleForUrl(item.owner_group || item.owner) + '/' + item.id + '/'
|
||||
|
|
@ -661,6 +665,16 @@ export default createStore({
|
|||
state.last_load.availability_policies = Date.now()
|
||||
return data
|
||||
},
|
||||
async fetchVisibilityPolicies({state, commit, dispatch, getters}) {
|
||||
if (state.last_load.visibility_policies > Date.now() - 1000 * 60 * 60 * 24) {
|
||||
return state.visibility_policies
|
||||
}
|
||||
const servers = await dispatch('getHomeServers')
|
||||
const data = await servers.get(getters.signAuth, '/api/v1/visibility_policies/')
|
||||
commit('setVisibilityPolicies', data.map(policy => ({slug: policy[0], text: policy[1]})))
|
||||
state.last_load.visibility_policies = Date.now()
|
||||
return data
|
||||
},
|
||||
async fetchStorageLocations({state, commit, dispatch, getters}) {
|
||||
if (state.last_load.storage_locations > Date.now() - 1000 * 60 * 60 * 24) {
|
||||
return state.storage_locations
|
||||
|
|
@ -734,7 +748,8 @@ export default createStore({
|
|||
state.last_load.tags,
|
||||
state.last_load.properties,
|
||||
state.last_load.categories,
|
||||
state.last_load.availability_policies)
|
||||
state.last_load.availability_policies,
|
||||
state.last_load.visibility_policies)
|
||||
if (last_load_info > Date.now() - 1000 * 60 * 60 * 24) {
|
||||
return state.info
|
||||
}
|
||||
|
|
@ -747,11 +762,16 @@ export default createStore({
|
|||
slug: policy[0],
|
||||
text: policy[1]
|
||||
})))
|
||||
commit('setVisibilityPolicies', data.visibility_policies.map(policy => ({
|
||||
slug: policy[0],
|
||||
text: policy[1]
|
||||
})))
|
||||
commit('setDomains', data.domains)
|
||||
state.last_load.tags = Date.now()
|
||||
state.last_load.properties = Date.now()
|
||||
state.last_load.categories = Date.now()
|
||||
state.last_load.availability_policies = Date.now()
|
||||
state.last_load.visibility_policies = Date.now()
|
||||
return data
|
||||
},
|
||||
async userIdentityRecord({state}, {password}) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue