Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

TermPortal app have a number of roles, that affect both client app and server app capabilities. Currently TermPortal have 6 roles, but basically they can be divided into 3 types.


Roles


Write rights on
TermAttribute
createupdatedeletecreateupdatedelete
Type 1termSearchNoNoNoNoNoNo


Type 2

termProposerYesYes if 1YesYes if 4
termReviewerNoYes if 2NoNoYes if 5
termFinalizerNoYes if 3NoNoYes if 6
Type 3termPM

Yes

Yes

Yes

Yes

Yes

Yes

termPM_allClientsYesYesYesYesYesYes

Note that processStatus attribute has a special meaning and behaviour implemented, so that it is completely impossible to delete it for user having any role, but it is partially/fully possible to update it. See point 7 below for details.

  1. TermProposer-user can update/delete some term only if that term was created by that user
  2. TermReviewer-user can update some term only if that term is Unprocessed
  3. TermFinalizer-user can update some term only if that term is ProvisionallyProcessed
  4. TermProposer-user can update/delete some attribute only if that attribute was created by that user and all term(s) on that attribute's level are Unprocessed, so:
    1. If it's a term-level attribute - that term should be Unprocessed
    2. If it's a language-level attribute - all terms for that language should be Unprocessed
    3. If it's a termEntry-level attribute - all terms for that termEntry should be Unprocessed
  5. TermReviewer-user can update/delete some attribute only if all term(s) on that attribute's level are Unprocessed, so it's same as in point 4 but with no 'was created by that user'-requirement
  6. TermFinalizer-user can update/delete some attribute only if all term(s) on that attribute's level are ProvisionallyProcessed, so it's same as in point 5 but just other status used
  7. The ability to change processStatus attribute is:
    1. Not available for roles of Type 1
    2. Partially available for roles of Type 2
      1. TermProposer-user - not available
      2. TermReviewer-user - available, but only from unprocessed to only provisionallyProcessed or rejected
      3. TermFinalizer-user - available, but only from provisionallyProcessed to only finalized or rejected
    3. Fully available for roles of Type 3
  • No labels