fix(sharing): correctly check if the user has admin rights when sharing
This commit is contained in:
parent
70e81ee682
commit
8a5b1ab3e3
@ -34,6 +34,8 @@ import {useTitle} from '@vueuse/core'
|
|||||||
|
|
||||||
import ListService from '@/services/list'
|
import ListService from '@/services/list'
|
||||||
import ListModel from '@/models/list'
|
import ListModel from '@/models/list'
|
||||||
|
import type {IList} from '@/modelTypes/IList'
|
||||||
|
import {RIGHTS} from '@/constants/rights'
|
||||||
|
|
||||||
import CreateEdit from '@/components/misc/create-edit.vue'
|
import CreateEdit from '@/components/misc/create-edit.vue'
|
||||||
import LinkSharing from '@/components/sharing/linkSharing.vue'
|
import LinkSharing from '@/components/sharing/linkSharing.vue'
|
||||||
@ -45,7 +47,7 @@ import {useAuthStore} from '@/stores/auth'
|
|||||||
|
|
||||||
const {t} = useI18n({useScope: 'global'})
|
const {t} = useI18n({useScope: 'global'})
|
||||||
|
|
||||||
const list = ref()
|
const list = ref<IList>()
|
||||||
const title = computed(() => list.value?.title
|
const title = computed(() => list.value?.title
|
||||||
? t('list.share.title', {list: list.value.title})
|
? t('list.share.title', {list: list.value.title})
|
||||||
: '',
|
: '',
|
||||||
@ -56,7 +58,7 @@ const authStore = useAuthStore()
|
|||||||
const configStore = useConfigStore()
|
const configStore = useConfigStore()
|
||||||
|
|
||||||
const linkSharingEnabled = computed(() => configStore.linkSharingEnabled)
|
const linkSharingEnabled = computed(() => configStore.linkSharingEnabled)
|
||||||
const userIsAdmin = computed(() => 'owner' in list.value && list.value.owner.id === authStore.info.id)
|
const userIsAdmin = computed(() => list?.value?.maxRight === RIGHTS.ADMIN)
|
||||||
|
|
||||||
async function loadList(listId: number) {
|
async function loadList(listId: number) {
|
||||||
const listService = new ListService()
|
const listService = new ListService()
|
||||||
|
@ -31,12 +31,13 @@ import {useI18n} from 'vue-i18n'
|
|||||||
|
|
||||||
import NamespaceService from '@/services/namespace'
|
import NamespaceService from '@/services/namespace'
|
||||||
import NamespaceModel from '@/models/namespace'
|
import NamespaceModel from '@/models/namespace'
|
||||||
|
import type {INamespace} from '@/modelTypes/INamespace'
|
||||||
|
import {RIGHTS} from '@/constants/rights'
|
||||||
|
|
||||||
import CreateEdit from '@/components/misc/create-edit.vue'
|
import CreateEdit from '@/components/misc/create-edit.vue'
|
||||||
import manageSharing from '@/components/sharing/userTeam.vue'
|
import manageSharing from '@/components/sharing/userTeam.vue'
|
||||||
import {useTitle} from '@/composables/useTitle'
|
import {useTitle} from '@/composables/useTitle'
|
||||||
import {useAuthStore} from '@/stores/auth'
|
import {useAuthStore} from '@/stores/auth'
|
||||||
import type {INamespace} from '@/modelTypes/INamespace'
|
|
||||||
|
|
||||||
const {t} = useI18n({useScope: 'global'})
|
const {t} = useI18n({useScope: 'global'})
|
||||||
|
|
||||||
@ -49,7 +50,7 @@ const title = computed(() => namespace.value?.title
|
|||||||
useTitle(title)
|
useTitle(title)
|
||||||
|
|
||||||
const authStore = useAuthStore()
|
const authStore = useAuthStore()
|
||||||
const userIsAdmin = computed(() => 'owner' in namespace.value && namespace.value.owner.id === authStore.info.id)
|
const userIsAdmin = computed(() => namespace?.value?.maxRight === RIGHTS.ADMIN)
|
||||||
|
|
||||||
async function loadNamespace(namespaceId: number) {
|
async function loadNamespace(namespaceId: number) {
|
||||||
if (!namespaceId) return
|
if (!namespaceId) return
|
||||||
|
Loading…
x
Reference in New Issue
Block a user