Skip to content
Snippets Groups Projects
Merged Timothee P requested to merge redmine-issues/13048 into develop
3 files
+ 51
88
Compare changes
  • Side-by-side
  • Inline
Files
3
+ 35
0
export function parseDate(date) {
let dateArr = date.split('/').reverse();
return new Date(dateArr[0], dateArr[1] - 1, dateArr[2]);
}
export function allowedStatus2change(statusChoices, isModerate, userStatus, isOwnFeature, currentRouteName) {
if ( //* si admin, modérateur ou super contributeur, statuts toujours disponibles: Brouillon, Publié, Archivé
userStatus === 'Modérateur' ||
userStatus === 'Administrateur projet' ||
(userStatus === 'Super Contributeur' && !isModerate)
) {
return statusChoices.filter((el) => el.value !== 'pending');
} else if (userStatus === 'Super Contributeur' && isModerate) {
return statusChoices.filter(
(el) => el.value === 'draft' || el.value === 'pending'
);
} else if (userStatus === 'Contributeur') { //* cas particuliers du contributeur
if (currentRouteName === 'ajouter-signalement' || !isOwnFeature) {
//* même cas à l'ajout d'une feature ou si feature n'a pas été créé par le contributeur
return isModerate
? statusChoices.filter(
(el) => el.value === 'draft' || el.value === 'pending'
)
: statusChoices.filter(
(el) => el.value === 'draft' || el.value === 'published'
);
} else {
//* à l'édition d'une feature et si le contributeur est l'auteur de la feature
return isModerate
? statusChoices.filter(
(el) => el.value !== 'published' //* toutes sauf "Publié"
)
: statusChoices.filter(
(el) => el.value !== 'pending' //* toutes sauf "En cours de publication"
);
}
}
return [];
}
\ No newline at end of file
Loading