aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/src/views/SharingDetailsTab.vue
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_sharing/src/views/SharingDetailsTab.vue')
-rw-r--r--apps/files_sharing/src/views/SharingDetailsTab.vue41
1 files changed, 20 insertions, 21 deletions
diff --git a/apps/files_sharing/src/views/SharingDetailsTab.vue b/apps/files_sharing/src/views/SharingDetailsTab.vue
index 9306a0b5217..a06af89a9d0 100644
--- a/apps/files_sharing/src/views/SharingDetailsTab.vue
+++ b/apps/files_sharing/src/views/SharingDetailsTab.vue
@@ -64,9 +64,11 @@
type="radio"
button-variant-grouped="vertical"
@update:checked="expandCustomPermissions">
- <DotsHorizontalIcon :size="20" />
- <span>{{ t('files_sharing', 'Custom permissions') }}</span>
- <small>{{ t('files_sharing', customPermissionsList) }}</small>
+ {{ t('files_sharing', 'Custom permissions') }}
+ <small>{{ customPermissionsList }}</small>
+ <template #icon>
+ <DotsHorizontalIcon :size="20" />
+ </template>
</NcCheckboxRadioSwitch>
</div>
</div>
@@ -194,6 +196,8 @@
</template>
<script>
+import { getLanguage } from '@nextcloud/l10n'
+
import NcButton from '@nextcloud/vue/dist/Components/NcButton.js'
import NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'
import NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'
@@ -611,26 +615,21 @@ export default {
return this.fileInfo.shareAttributes.some(hasDisabledDownload)
},
customPermissionsList() {
- const perms = []
- if (hasPermissions(this.share.permissions, ATOMIC_PERMISSIONS.READ)) {
- perms.push('read')
- }
- if (hasPermissions(this.share.permissions, ATOMIC_PERMISSIONS.CREATE)) {
- perms.push('create')
+ // Key order will be different, because ATOMIC_PERMISSIONS are numbers
+ const translatedPermissions = {
+ [ATOMIC_PERMISSIONS.READ]: this.t('files_sharing', 'Read'),
+ [ATOMIC_PERMISSIONS.CREATE]: this.t('files_sharing', 'Create'),
+ [ATOMIC_PERMISSIONS.UPDATE]: this.t('files_sharing', 'Update'),
+ [ATOMIC_PERMISSIONS.SHARE]: this.t('files_sharing', 'Share'),
+ [ATOMIC_PERMISSIONS.DELETE]: this.t('files_sharing', 'Delete'),
}
- if (hasPermissions(this.share.permissions, ATOMIC_PERMISSIONS.UPDATE)) {
- perms.push('update')
- }
- if (hasPermissions(this.share.permissions, ATOMIC_PERMISSIONS.DELETE)) {
- perms.push('delete')
- }
- if (hasPermissions(this.share.permissions, ATOMIC_PERMISSIONS.SHARE)) {
- perms.push('share')
- }
- const capitalizeFirstAndJoin = array => array.map((item, index) => index === 0 ? item[0].toUpperCase() + item.substring(1) : item).join(', ')
-
- return capitalizeFirstAndJoin(perms)
+ return [ATOMIC_PERMISSIONS.READ, ATOMIC_PERMISSIONS.CREATE, ATOMIC_PERMISSIONS.UPDATE, ATOMIC_PERMISSIONS.SHARE, ATOMIC_PERMISSIONS.DELETE]
+ .filter((permission) => hasPermissions(this.share.permissions, permission))
+ .map((permission, index) => index === 0
+ ? translatedPermissions[permission]
+ : translatedPermissions[permission].toLocaleLowerCase(getLanguage()))
+ .join(', ')
},
},
watch: {