Skip to content
Snippets Groups Projects
Commit edab018f authored by Sébastien DA ROCHA's avatar Sébastien DA ROCHA :bicyclist:
Browse files

Merge branch 'redmine-issue/14480' into 'develop'

REDMINE_ISSUE-14480 | Permissions

See merge request !455
parents c0003652 bf58256b
No related branches found
No related tags found
No related merge requests found
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
</router-link> </router-link>
<a <a
v-if="((permissions && permissions.can_update_feature) || isFeatureCreator) && isOnline" v-if="canDeleteFeature && isOnline"
id="currentFeature-delete" id="currentFeature-delete"
class="ui button button-hover-red tiny-margin" class="ui button button-hover-red tiny-margin"
data-tooltip="Supprimer le signalement" data-tooltip="Supprimer le signalement"
...@@ -200,6 +200,10 @@ export default { ...@@ -200,6 +200,10 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
canDeleteFeature: {
type: Boolean,
default: false,
},
}, },
computed: { computed: {
......
...@@ -465,7 +465,9 @@ export default { ...@@ -465,7 +465,9 @@ export default {
Contributeur : ['draft', 'pending', 'published'], Contributeur : ['draft', 'pending', 'published'],
}; };
if (this.userStatus === 'Contributeur' && feature.display_creator !== this.user.username) { if (this.user.is_superuser) {
return true;
} else if (this.userStatus === 'Contributeur' && feature.display_creator !== `${this.user.first_name} ${this.user.last_name}`) {
return false; return false;
} else if (permissions[this.userStatus]) { } else if (permissions[this.userStatus]) {
return permissions[this.userStatus].includes(feature.status); return permissions[this.userStatus].includes(feature.status);
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
:display-to-list-button="displayToListButton" :display-to-list-button="displayToListButton"
:is-feature-creator="isFeatureCreator" :is-feature-creator="isFeatureCreator"
:can-edit-feature="canEditFeature" :can-edit-feature="canEditFeature"
:can-delete-feature="canDeleteFeature"
@setIsDeleting="isDeleting = true" @setIsDeleting="isDeleting = true"
@tofeature="pushNgo" @tofeature="pushNgo"
/> />
...@@ -242,6 +243,7 @@ export default { ...@@ -242,6 +243,7 @@ export default {
computed: { computed: {
...mapState([ ...mapState([
'USER_LEVEL_PROJECTS', 'USER_LEVEL_PROJECTS',
'user'
]), ]),
...mapState('projects', [ ...mapState('projects', [
'project' 'project'
...@@ -282,10 +284,23 @@ export default { ...@@ -282,10 +284,23 @@ export default {
return this.USER_LEVEL_PROJECTS && this.USER_LEVEL_PROJECTS[this.$route.params.slug] === 'Modérateur'; return this.USER_LEVEL_PROJECTS && this.USER_LEVEL_PROJECTS[this.$route.params.slug] === 'Modérateur';
}, },
isAdministrator() {
return this.USER_LEVEL_PROJECTS && this.USER_LEVEL_PROJECTS[this.$route.params.slug] === 'Administrateur projet';
},
canEditFeature() { canEditFeature() {
return (this.permissions && this.permissions.can_update_feature) || return (this.permissions && this.permissions.can_update_feature) ||
this.isFeatureCreator || this.isFeatureCreator ||
this.isModerator; this.isModerator ||
this.user.is_superuser;
},
canDeleteFeature() {
return (this.permissions && this.permissions.can_delete_feature && this.isFeatureCreator) ||
this.isFeatureCreator ||
this.isModerator ||
this.isAdministrator ||
this.user.is_superuser;
} }
}, },
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment