9.7 Paramétrage des droits pour un cycle de vie
Le cycle de vie ne peut qu'avoir un profil dédié. Les droits d'un workflow sont ceux d'un document auquel sont ajoutés un droit par type de transition définie dans le cycle de vie.
9.7.1 Transitions
Le profil du cycle de vie permet de donner les droits sur le passage de la
transition. Le nom du droit pour la transition est l'identifiant de la
transition utilisé dans la propriété $transitions
de la
classe de cycle de vie.
Extrait d'une classe de cycle de vie :
const TFirst = "my_firstTransition"; const TSecond = "my_secondTransition"; public $transitions = array( self::TFirst => array(), self::TSecond => array() ); public $cycle = array( array( "e1" => "EA", "e2" => "EB", "t" => self::TFirst ) , array( "e1" => "EB", "e2" => "EC", "t" => self::TSecond ) , array( "e1" => "EA", "e2" => "EC", "t" => self::TSecond ) );
my_firstTransition
et my_secondTransition
sont
ajoutés au profil de ce cycle.
Les cycles de vie ont la possibilité d'avoir un profil dynamique
en indiquant la famille dans l'attribut "dynamique\famille" (dpdoc_famid
).
Dans ce cas, ce sont les valeurs des attributs du document associé qui seront
utilisées pour vérifier les droits d'accès aux transitions.
Avec le profil suivant :
Compte | my_firstTransition | my_secondTransition |
---|---|---|
MY_FIRSTROLE | X | |
MY_SECONDROLE | X |
les droits suivants sont obtenus sur les transitions :
Rôles | Transition | Transition | Transition |
---|---|---|---|
MY_FIRSTROLE | EA → EB | ||
MY_SECONDROLE | EB → EC | EA → EC | |
MY_FIRSTROLE et MY_SECONDROLE | EA → EB | EB → EC | EA → EC |
Pour l'importation de droits sur un cycle de vie, les identifiants des transitions sont utilisés pour référencer les droits spécifiques.
Identifiant du profil | / | Option | Droit | Droit | |
---|---|---|---|---|---|
PROFIL | MY_WORKFLOW | RESET | my_firstTransition=MY_FIRSTROLE | my_secondTransition=MY_SECONDROLE |
9.7.2 Profil d'étape
Pour chacune des étapes du cycle de vie, un profil peut être défini. Ce profil sera associé au document attaché au cycle de vie lorsqu'il passera dans l'étape. Ce profil lié doit être compatible avec le document associé.
Si aucun profil n'est attaché à une étape, le document conserve son profil actuel lorsqu'il passe dans cette étape.