diff --git a/apps/files/src/components/Collaborators/AutocompleteItem.vue b/apps/files/src/components/Collaborators/AutocompleteItem.vue index 338d5d30171..bfb28943bea 100644 --- a/apps/files/src/components/Collaborators/AutocompleteItem.vue +++ b/apps/files/src/components/Collaborators/AutocompleteItem.vue @@ -18,8 +18,13 @@
-
-
+ + +
@@ -42,18 +47,21 @@ export default { data() { return { - shareTypes, loading: false } }, computed: { + shareTypes() { + return shareTypes + }, + isUser() { - return this.item.value.shareType === shareTypes.user + return this.item.value.shareType === this.shareTypes.user }, isRemoteUser() { - return this.item.value.shareType === shareTypes.remote + return this.item.value.shareType === this.shareTypes.remote }, collaboratorClass() { diff --git a/apps/files/src/components/Collaborators/Collaborator.vue b/apps/files/src/components/Collaborators/Collaborator.vue index 6f820f3e1eb..f10811dc4ba 100644 --- a/apps/files/src/components/Collaborators/Collaborator.vue +++ b/apps/files/src/components/Collaborators/Collaborator.vue @@ -105,21 +105,27 @@
- {{ - collaborator.collaborator.displayName - }} - + {{ + collaborator.collaborator.displayName + }} + + (me) + + + - (me) - + v-text="collaborator.collaborator.additionalInfo" + />
- {{ originalRole.label }}
- - + +
diff --git a/apps/files/src/mixins/collaborators.js b/apps/files/src/mixins/collaborators.js index d017cff50a5..7e1c4dc0b8a 100644 --- a/apps/files/src/mixins/collaborators.js +++ b/apps/files/src/mixins/collaborators.js @@ -1,5 +1,6 @@ import { mapGetters } from 'vuex' import roles from '../helpers/collaboratorRolesDefinition' +import { shareTypes } from '../helpers/shareTypes' export default { computed: { @@ -80,6 +81,21 @@ export default { this.selectedRole = role this.additionalPermissions = permissions this.expirationDate = expirationDate + }, + + collaboratorType(type) { + switch (type) { + case shareTypes.user: + return this.$gettext('User') + case shareTypes.group: + return this.$gettext('Group') + case shareTypes.guest: + return this.$gettext('Guest') + case shareTypes.remote: + return this.$gettext('Remote user') + default: + return this.$gettext('Unknown type') + } } } } diff --git a/changelog/unreleased/collaborator-type b/changelog/unreleased/collaborator-type new file mode 100644 index 00000000000..cf451b097cf --- /dev/null +++ b/changelog/unreleased/collaborator-type @@ -0,0 +1,5 @@ +Enhancement: Display collaborators type + +We've added a new line into the collaborators autocomplete and list in the sidebar to display their type. + +https://github.com/owncloud/phoenix/pull/4203 diff --git a/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js b/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js index f4df55c6ca4..8d1a21dcb04 100644 --- a/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js +++ b/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js @@ -236,7 +236,7 @@ module.exports = { }, collaboratorExpirationInfo: { selector: - '//div/span[.="%s"]/parent::div/following-sibling::span/span[contains(text(), "Expires")]', + '//span[.="%s"]//ancestor::div[contains(@class, "files-collaborators-collaborator-info")]//span[contains(text(), "Expires")]', locateStrategy: 'xpath' } } diff --git a/tests/acceptance/pageObjects/FilesPageElement/sharingDialog.js b/tests/acceptance/pageObjects/FilesPageElement/sharingDialog.js index 524bc360b99..04458be8979 100644 --- a/tests/acceptance/pageObjects/FilesPageElement/sharingDialog.js +++ b/tests/acceptance/pageObjects/FilesPageElement/sharingDialog.js @@ -718,7 +718,7 @@ module.exports = { }, collaboratorAutocompleteItemName: { selector: - '//div[contains(@class, "files-collaborators-autocomplete-username") and text()="%s"]', + '//div[contains(@class, "files-collaborators-autocomplete-user-text")]/span[contains(@class, "files-collaborators-autocomplete-username") and text()="%s"]', locateStrategy: 'xpath' }, collaboratorsListItemInfo: {