Development #17601
déplacer du code de la visualisation du journal d'une demande de la vue vers le modèle
0%
Description
L'idée est d'arriver ensuite à écrire un template django de rendu du journal qui ne soit pas trop compliqué.
Fichiers
Révisions associées
templates: use a template to render formdata history (#17601)
Historique
Mis à jour par Frédéric Péters il y a presque 7 ans
- Fichier 0002-formdata-move-formdata-journal-methods-from-view-to-.patch 0002-formdata-move-formdata-journal-methods-from-view-to-.patch ajouté
- Fichier 0001-formdata-keep-link-from-evolution-objects-to-related.patch 0001-formdata-keep-link-from-evolution-objects-to-related.patch ajouté
- Statut changé de Nouveau à En cours
- Patch proposed changé de Non à Oui
0001 pour permettre depuis l'objet Evolution de retrouver le formdata correspondant.
0002 pour le véritable déplacement du code des vuers vers l'objet.
Mis à jour par Thomas Noël il y a plus de 6 ans
0001: ok
0002:- factoriser
evo_author = evo.get_author_name()
- et j'ai pas compris le calcul de evo_author_more mais c'est la fatigue
Mis à jour par Frédéric Péters il y a plus de 6 ans
et j'ai pas compris le calcul de evo_author_more mais c'est la fatigue
J'avais regardé et ce truc remontait à loin, à l'utilisation de "user_hash", et donc un tas de trucs compliqués qui avaient aujourd'hui comme seul résultat d'afficher "(Original Submitter)" derrière le nom de l'usager.
Tout ça est bien beau mais il y a un troisième commit à ce ticket, visible dans la branche :
https://git.entrouvert.org/wcs.git/commit/?h=wip/django&id=6a451dcf35452005a770a246701dd50119a4058b
Et il supprime de toute façon ce code python. (en fait même pour 0002 vaut mieux regarder la branche).
Au final cette partie donne :
def get_author_qualification(self): if self.who == '_submitter' and not self.formdata.is_submitter(get_request().user): return _('Original Submitter') return None
Et donc on affiche "original submitter" derrière le nom de l'usager, quand ce n'est pas lui qui consulte.
Mis à jour par Frédéric Péters il y a plus de 6 ans
- Fichier 0001-templates-use-a-template-to-render-formdata-history-.patch 0001-templates-use-a-template-to-render-formdata-history-.patch ajouté
En fait tout ça est bien plus lisible une fois réuni en un seul commit. En laissant 0001 comme il est ici, voici les deux autres patchs de la branche réunis.
Mis à jour par Thomas Noël il y a plus de 6 ans
Je pense que sur l'algo qui évite d'afficher 10 fois un status, il y a une différence de logique entre le if not (parts_value or evo.status != previous_status):
dans l'ancien code et le if evolution.who or evolution.is_status_change or display_parts
du template.
Dans le premier, le previous_status est bien celui qu'on a affiché en dernier, en fonction de l'usager (s'il y a le droit de le voir ou pas). Dans le template, is_status_change ne prend pas en compte l'usager, il regarde juste si le statut est nouveau dans la liste des évolutions.
Dans le cadre d'une évolution genre "en attente","relance interne","en attente" où la relance n'est pas visible de l'usager, on doit juste afficher "en attente" une seule fois.
Je me demande dans quelle mesure on ne pourrait pas juste utiliser le "ifchanged" de Django (https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#ifchanged) -- ah non, y'a l'heure...
Mis à jour par Frédéric Péters il y a plus de 6 ans
C'est très juste, patch revu https://git.entrouvert.org/wcs.git/commit/?h=wip/django&id=7d24ec44ee86480dd42239a6f53a7108f6f54750
Aussi, ce qui n'était pas fait avant (même avant django il me semble), ça prend en compte l'auteur, comme ça deux interventions dans un même statut par deux personnes différentes, même s'il n'y a ni commentaire ni rien d'autre à afficher, seront visibles.
Et yield, parce que 2017.
Mis à jour par Frédéric Péters il y a plus de 6 ans
- Statut changé de En cours à Résolu (à déployer)
commit db4d4778986e33e9e4eb49932f8a44ea08f01f53 Author: Frédéric Péters <fpeters@entrouvert.com> Date: Thu Jul 13 11:29:45 2017 +0200 templates: use a template to render formdata history (#17601) commit 98b74edd3fd54d7b92ed5f990d40e2c874c9c57f Author: Frédéric Péters <fpeters@entrouvert.com> Date: Thu Jul 13 10:40:01 2017 +0200 formdata: keep link from evolution objects to related formdata (#17601)
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Statut changé de Résolu (à déployer) à Solution déployée
formdata: keep link from evolution objects to related formdata (#17601)