Développement #57894
possibilité de copier une action d'un statut à un autre
0%
Description
via #57263,
A la réflexion ça pourrait être un bouton "copier" (en précisant vers quel statut copier l'action) car ça arrive aussi souvent d'avoir besoin de dupliquer une action d'un statut dans un autre (et si on veut déplacer, on peut supprimer celui de départ, ça c'est rapide).
Files
Related issues
Associated revisions
History
Updated by Valentin Deniaud about 3 years ago
- File 0001-workflows-copy-action-from-one-status-to-another-578.patch 0001-workflows-copy-action-from-one-status-to-another-578.patch added
- Status changed from Nouveau to Solution proposée
- Patch proposed changed from No to Yes
Qu'est-ce qu'on fait pour l'icône du coup ? Pierre a proposé un .svg dans le ticket lié, je prends ça ?
Updated by Frédéric Péters about 3 years ago
On ne peut pas prendre l'svg du noun project sans licence précisant l'attribution etc. il y a sans doute à, comme steph, composer avec l'existant, mais faire ça correctement, svg dans gadjo etc.
Updated by Valentin Deniaud about 3 years ago
- Related to Développement #59670: Avoir une icône qui symbolise la copie d'une action added
Updated by Valentin Deniaud about 3 years ago
- File 0001-workflows-copy-action-from-one-status-to-another-578.patch 0001-workflows-copy-action-from-one-status-to-another-578.patch added
Ajout du CSS qui va bien pour fonctionner avec l'icône dans gadjo.
Updated by Thomas Noël almost 3 years ago
Le deepcopy est séduisant dans :
new_item = copy.deepcopy(self.item)
mais à ma connaissance on n'a jamais tenté ça sur une action dans un status. Il faudrait par exemple vérifier que pour l'action "document" on se retrouve bien avec le modèle de document dupliqué dans models/export_to_model-16-1-XXX.upload ... Je n'ai pas d'autre idée en tête d'action qui ont des relations avec d'autres objets externes, mais bon, voilà, au moins celle là.
Updated by Valentin Deniaud almost 3 years ago
Thomas Noël a écrit :
Le deepcopy est séduisant mais à ma connaissance on n'a jamais tenté ça sur une action dans un status.
C'est ce qu'on fait quand on duplique le workflow en entier, ça crée effectivement une situation où plusieurs actions document pointent sur le même modèle, et ça n'a pas l'air de poser problème.
Updated by Thomas Noël almost 3 years ago
- Status changed from Solution proposée to Solution validée
Valentin Deniaud a écrit :
Thomas Noël a écrit :
Le deepcopy est séduisant mais à ma connaissance on n'a jamais tenté ça sur une action dans un status.
C'est ce qu'on fait quand on duplique le workflow en entier, ça crée effectivement une situation où plusieurs actions document pointent sur le même modèle, et ça n'a pas l'air de poser problème.
Je crois ici à un bogue alors, parce que si on modifie le modèle sur le workflow d'origine, ça va le modifier silencieusement sur l'autre... Mais considérons que c'est un bogue qui n'a pas à être corrigé ici, faudra confirmer cette affaire sur un autre ticket éventuellement.
Je valide donc ton code qui me parait tout simple et tout bien.
Updated by Frédéric Péters almost 3 years ago
S'il y a un bug pressenti ça m'irait bien qu'on vérifie dès maintenant qu'il existe, ou pas, plutôt que le redécouvrir par hasard plus tard quand on n'arrivera pas à comprendre un comportement.
Updated by Frédéric Péters almost 3 years ago
deepcopy (...)
C'est ce qu'on fait quand on duplique le workflow en entier
Pour la duplication l'id et le slug sont mis à None et .store() est fait, je ne vois pas le deepcopy() en question. (cela pour dire aussi que #61838 aura beau être corrigé ça ne couvrira pas nécessairement le bug à vérifier ici).
Updated by Valentin Deniaud almost 3 years ago
- Status changed from Solution validée to En cours
Ouep mauvais git grep de ma part il n'y a effectivement pas de deepcopy quand on duplique un wf. Je vais voir pour corriger ici.
Updated by Thomas Noël almost 3 years ago
Pour info, au niveau de #61838 Frédéric a complétement revu le système de copie de workflow et passe par un export/import du XML, ce qui garanti des objets complétement distincts.
Updated by Valentin Deniaud almost 3 years ago
- File 0001-workflows-copy-action-from-one-status-to-another-578.patch 0001-workflows-copy-action-from-one-status-to-another-578.patch added
- Status changed from En cours to Solution proposée
Revoici en appliquant la même correction que pour #61838, c'est à dire passer par l'export xml (+ un test également adapté de ce ticket).
Updated by Thomas Noël almost 3 years ago
Que penserais-tu d'ajouter un « check_datasources=False » lors du init_with_xml, dans l'idée que la copie d'une action un peu pétée donne une action un peu pétée...? Perso je ne trouverais pas ça scandaleux.
Sinon il faut gérer les FormdefImportUnknownReferencedError ou BlockdefImportError et ça donne pas très envie.
Updated by Valentin Deniaud almost 3 years ago
Branche à jour avec check_datasources=False, ça me paraît effectivement toujours bon à prendre mais pas de test en plus parce que je ne sais pas par quel biais ce problème pourrait arriver, la suppression d'une source de données utilisée est interdite par exemple.
Updated by Thomas Noël almost 3 years ago
Valentin Deniaud a écrit :
Branche à jour avec check_datasources=False, ça me paraît effectivement toujours bon à prendre mais pas de test en plus parce que je ne sais pas par quel biais ce problème pourrait arriver, la suppression d'une source de données utilisée est interdite par exemple.
Faignasse :) C'est accordé cependant.
Updated by Thomas Noël almost 3 years ago
- Status changed from Solution proposée to Solution validée
"Branche à jour", j'avais pas bien lu, go.
Updated by Valentin Deniaud almost 3 years ago
- Status changed from Solution validée to Résolu (à déployer)
commit 885dc8c2de097bcffccb82138b38dfc0e8edae02 Author: Valentin Deniaud <vdeniaud@entrouvert.com> Date: Tue Dec 14 10:05:02 2021 +0100 workflows: copy action from one status to another (#57894)
Updated by Transition automatique almost 3 years ago
- Status changed from Résolu (à déployer) to Solution déployée
Updated by Marie Kuntz over 2 years ago
- Has duplicate Développement #30622: [Workflow] Permettre de dupliquer les actions, les déplacer d'un statut à un autre added
workflows: copy action from one status to another (#57894)