suppression de wcs/qommon/backoffice/ (#77144) #274

Merged
fpeters merged 3 commits from wip/77144-wcs-qommon-backoffice into main 2023-05-15 17:19:23 +02:00
Owner
No description provided.
fpeters force-pushed wip/77144-wcs-qommon-backoffice from 77d28d8494 to 950721eba0 2023-04-29 11:49:38 +02:00 Compare
fpeters force-pushed wip/77144-wcs-qommon-backoffice from 950721eba0 to 4306bd9ca6 2023-04-30 15:20:15 +02:00 Compare
fpeters force-pushed wip/77144-wcs-qommon-backoffice from 4306bd9ca6 to 12cb08e669 2023-05-13 12:06:19 +02:00 Compare
fpeters force-pushed wip/77144-wcs-qommon-backoffice from 12cb08e669 to aff95f999f 2023-05-13 12:31:32 +02:00 Compare
fpeters force-pushed wip/77144-wcs-qommon-backoffice from aff95f999f to 2998ede565 2023-05-13 12:56:43 +02:00 Compare
fpeters force-pushed wip/77144-wcs-qommon-backoffice from 2998ede565 to 0c50c18b28 2023-05-13 13:17:06 +02:00 Compare
Author
Owner

backoffice: remove qommon.backoffice.root base class (#77144)
misc: move pagination links module to wcs/backoffice/ (#77144)

Les deux premiers commits sont vraiment juste de la suppression/déplacement de code.

misc: replace html_top by response methods (#77144)

Le troisième commit est nettement plus intéressant, de base l'objet était de supprimer le wcs/qommon/backoffice/menu.py, qui contient surtout une fonction html_top() qui sert partout dans le backoffice pour fixer la section active et le titre de la page.

Je remplace cette fonction par deux méthodes posées sur HttpResponse : set_backoffice_section() pour poser la section et set_title() pour poser le titre.

Le gros avantage ensuite c'est qu'il n'y a plus à transporter la section (ou la méthode html_top le long des objets), ça permet par exemple de nettoyer les choses ainsi :

 class WorkflowItemPage(Directory):
     _q_exports = ['', 'delete', 'copy']

-    def __init__(self, workflow, parent, component, html_top):
+    def __init__(self, workflow, parent, component):
         try:
             self.item = [x for x in parent.items if x.id == component][0]
         except (IndexError, ValueError):
             raise errors.TraversalError()
         self.workflow = workflow
         self.parent = parent
-        self.html_top = html_top

Au final c'est un patch long et barbant.

> backoffice: remove qommon.backoffice.root base class (#77144) > misc: move pagination links module to wcs/backoffice/ (#77144) Les deux premiers commits sont vraiment juste de la suppression/déplacement de code. > misc: replace html_top by response methods (#77144) Le troisième commit est nettement plus intéressant, de base l'objet était de supprimer le wcs/qommon/backoffice/menu.py, qui contient surtout une fonction html_top() qui sert partout dans le backoffice pour fixer la section active et le titre de la page. Je remplace cette fonction par deux méthodes posées sur HttpResponse : set_backoffice_section() pour poser la section et set_title() pour poser le titre. Le gros avantage ensuite c'est qu'il n'y a plus à transporter la section (ou la méthode html_top le long des objets), ça permet par exemple de nettoyer les choses ainsi : ``` class WorkflowItemPage(Directory): _q_exports = ['', 'delete', 'copy'] - def __init__(self, workflow, parent, component, html_top): + def __init__(self, workflow, parent, component): try: self.item = [x for x in parent.items if x.id == component][0] except (IndexError, ValueError): raise errors.TraversalError() self.workflow = workflow self.parent = parent - self.html_top = html_top ``` Au final c'est un patch long et barbant.
fpeters changed title from WIP: suppression de wcs/qommon/backoffice/ (#77144) to suppression de wcs/qommon/backoffice/ (#77144) 2023-05-13 13:23:40 +02:00
tnoel approved these changes 2023-05-15 17:18:13 +02:00
tnoel left a comment
Owner

Vive les nettoyages.

Vive les nettoyages.
fpeters merged commit df35bc818f into main 2023-05-15 17:19:23 +02:00
fpeters deleted branch wip/77144-wcs-qommon-backoffice 2023-05-15 17:19:23 +02:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: entrouvert/wcs#274
No description provided.