On fait pareil que précédemment pour les articles, en rajoutant une vie
de délétion + de quoi afficher qu'un article a été supprimé.
N.B. : le formatage automatique de VSCode fait plein de changements,
donc pourquoi pas les garder.
On rajoute un bouton de suppression d'un compte utilisable avec la perm
`kfet.delete_account`, avec message de vérif. On en profite pour
cleanup un peu le css de `jconfirm`.
Pour pouvoir supprimer un compte, on crée un compte dummy qui a pour but
de recevoir les objets non supprimables (caisses, transferts/opérations
pour statistiques, etc.). Lors de la délétion d'un compte, tout est
transféré sur le dummy, qui est créé via migration.
Tous les `on_delete` étaient mis à PROTECT, ce qui faisait qu'on ne
pouvait rien supprimer... On les met à CASCADE pour tous les modèles
secondaires (`AccountNegative`, `CheckoutStatement`, `InventoryArticle`,
`SupplierArticle`, `Order` et `OrderArticle`) et pour les inventaires
créés à partir d'une commande.
Pour les modèles qui demandent une validation, et pour les `Operation`s,
on met à NULL le compte ou l'article associé (cela ne change pas le
total d'une opération, qui est la partie importante à garder).
À partir de Django 2.1, les vues de login et logout sont class-based
uniquement. On passe donc à django-cas-ng 2.6 pour harmoniser.
On cleanup un peu le processus de login avec une classe un peu propre +
un vrai formulaire/des vrais templates.
Ce patch ajoute un lien permettant de retourner sur la liste des
demandes à traiter depuis les pages de détail et de traitement d'une
demande. Idéalement, on voudrait plutôt une espèce de fil d'ariane.
Ce patch ajoute un lien bidirectionnel entre la page d'affichage d'un
petit cours pour le Burô et l'administration générale. Plus
précisément,
- Un lien est ajouté sur la page du petit cours, ainsi que sur la page
de traitement, vers l'administration générale
- La fonctionalité "Voir sur le site" de Django est utilisée pour
renvoyer sur la page de la demande. Si des modifications sont
apportées, il faut choisir "Enregistrer et continuer les
modifications", puis cliquer sur "Voir sur le site".
Le workflow n'est pas forcément optimal, mais permet au COF d'accéder
facilement à la demande si un traitement manuel ou complexe est
nécessaire - et de facilement revenir à la vue de traitement.