forms: make anonymise attribute a string (#73203) #372
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/73203-anonymisation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
aed030c9d3
to6671308795
6671308795
tof54f95718e
f54f95718e
toef3e1ac54a
ef3e1ac54a
toad792b779f
ad792b779f
to1b25e8c818
1b25e8c818
to7fff356b17
7fff356b17
to0c927b9065
0c927b9065
toab7ad76c2f
ab7ad76c2f
to2f14cd5ec7
Le premier patch pour préparer le terrain coté champs, le deuxième pour l'action, le troisième qui fait le taf.
Sur les champs le titre de l'option était 'anonymise' (à cocher ou décocher), ça passe maintenant à 'anonymisation' (3 choix possibles : final, intermediate, no), cf champ.png.
Sur l'action on pouvait cocher ou décocher 'Only perform form/card user unlinking'. Maitenant 3 choix possibles : 'final', 'intermediate', 'Only perform form/card user unlinking',cf action.png.
J'ai casé le petit texte d'aide 'If you choose "Only perform form/card user unlinking" this action will only unlink user from the form/card ...' sous le titre de l'option. Pas particulièrement satisfaisant mais je ne sais pas quoi faire d'autre.
WIP: forms: make anonymise attribute a string (73203)to forms: make anonymise attribute a string (73203)Je me dis soudainement que je pourrais virer le titre 'Anonymisation type' et mettre le texte d'aide à la place, ce serait mieux.
2f14cd5ec7
toa9181d13d9
J'ai fait ça, cf action2.png.
forms: make anonymise attribute a string (73203)to forms: make anonymise attribute a string (#73203)Ce help_text déplacé en libellé de champ ne va pas côté accessibilité, je serais pour revenir à la précédente version, avec "Type d’anonymisation" comme libellé.
Peut-être ne pas reprendre le texte d’aide mais allonger le libellé de l'option, "Uniquement délier l'usager associé à la demande/fiche. Si un code de suivi existe il sera également supprimé." ?
@ -625,0 +626,4 @@
self.anonymise = 'no'
if self.anonymise:
self.anonymise = 'final'
changed = True
Ce code va toujours mettre "final" comme valeur, ça devrait être soit if/else, soit en une seule ligne,
@ -1259,3 +1259,3 @@
for field in self.formdef.get_all_fields():
if field.anonymise:
if field.anonymise == kind:
field.set_value(self.data, None)
Je pense que si kind == 'final' ça devrait anonymiser tout, y compris ce qui est marqué pour 'intermediate'.
@ -1268,2 +1263,2 @@
self.workflow_roles = None
self.submission_context = None
if kind == 'final':
self.anonymised = localtime()
Je trouverais plus lisible (à la fois le diff et le code résultant) de moins déplacer, plutôt avoir un return supplémentaire, plus haut
@ -26,3 +26,3 @@
key = 'anonymise'
category = 'formdata-action'
unlink_user = False
kind = 'final'
Détail mais plutôt "mode" que "kind" (pour faire comme user_association_mode, operation_mode, target_mode, qui existent dans les autres actions).
a9181d13d9
toad9ab6ea7c
ad9ab6ea7c
tof3063551dc
f3063551dc
to1616caaf3a
1616caaf3a
to86e6b1b168
Toutes les remarques prises en compte.
Je crains que toute cette histoire d'anonymisation intermédiaire ne soit pas bien claire et qu'il faille revenir sur les libellés, l'ordre des options, que sais-je, mais passons ça.
@ -282,3 +282,3 @@
# flag a field for removal by AnonymiseWorkflowStatusItem
# can be overriden in field' settings
anonymise = True
anonymise = 'final'
Peut-être actualiser le commentaire qui précède, pour noter les valeurs possibles .
Fait.
86e6b1b168
to4a5c2b1541