Details
-
Bug
-
Resolution: Fixed
-
None
-
Medium
-
Terms/attributes editing/deletion access logic reworked for Term Proposer, Term Reviewer and Term Finalizer roles
-
Empty show more show less
Description
The approval workflow in TermPortal should be reworked. Roles that have rights to change and/or delete new terms, names or attributes should also be allowed to edit them.
The roles involved are: Term proposer, term reviewer and term finalizer.
This is also the order in which they occur in the approval workflow.
The rights that the roles should have are:
- Term proposer: Allowed to propose new term entries and terms.
-
- Should be able to change and/or delete terms, that the user has proposed and attributes for the term the user proposed.1
-
- Should not be able to change and/or delete attributes or terms made from other users .
- Term reviewer: Allowed to change the process status of proposed terms to provisionally processed.
-
- Should be able to change or reject terms , as long as the status of the term is still in status unprocessedThey should not be able to delete those terms.
- The ability to change terms assumes that once termReviewer changed some unprocessed term's text - that term is still kept as unprocessed. So it means that termProposer can create a proposal, and then termReviewer is able to amend that proposal (if he wants) before setting processStatus to provisionallyProcessed or rejected
- They should be able to change and delete attributes for those terms, that are still in status unprocessed.
- As soon as they set the status of the term to provisionally processed, they should not be able to change anything (not attributes or the term)
- Should be able to change or reject terms , as long as the status of the term is still in status unprocessedThey should not be able to delete those terms.
- Term finalizer: Allowed to change the process status of provisionally processed terms to finalized or rejected.
-
- Logic is the same, as for Term reviewer:
Term Finalizer: Should be able to change or reject terms, as long as the status of the term is still in status provisionally processed.- The ability to change terms assumes that once termFinalizer changed some provisionallyProcessed term's text - that term is auto-switched to processStatus=unprocessed, and became not editable for termFinalizer anymore
- They should not be able to delete those terms.
- They should be able to change and delete attributes for those terms, that are still in status provisionally processed.
- As soon as they set the status of the term to finalized, they should not be able to change anything (not attributes or the term)
- Logic is the same, as for Term reviewer:
If the roles are assigned individually for a user, the other steps cannot be altered for that user. However, it is possible to give several or all roles to one user.
The change and deletion of attributes should be available:
- If it's a term-level attribute
- if term is unprocessed
- termProposer - can do that only if user is the one who created that attribute
- termReviewer - can do that
- else if term is provisionallyProcessed - termFinalizer
- else - none of all those 3 roles can do that
- if term is unprocessed
- Else if it's a language-level attribute
- if all terms of that language are unprocessed
- termProposer - can do that only if user is the one who created that attribute
- termReviewer - can do that
- else if all terms of that language are provisionallyProcessed - termFinalizer
- if all terms of that language are unprocessed
- Else if it's a entry-level attribute
- if all terms of that entry are unprocessed
- termProposer - can do that only if user is the one who created that attribute
- termReviewer - can do that
- else if all terms of that entry are provisionallyProcessed - termFinalizer
- if all terms of that entry are unprocessed