Skip to content

Fix #1071 catalogue formation avec droit formateur

Sbodrero requested to merge sbodrero/endi:issue#1071 into master

Decrire les changements qu'apporte cette MR

Ajout des permissions list.training, add.training et edit.training au groupe trainer afin de permettre d'afficher les formations dans le catalogue uniquement aux utilisateurs formateurs.

Merge Request Checklist avant soumision

  • Tests "verts" ( autonomie/test/ pytest -xv)
  • Validé par la CI
  • Rebasé sur master
  • Messages de commit mentionnant l'issue (Ref #XXX : ou Fix #XXX :)
  • PEP8 (https://www.python.org/dev/peps/pep-0008/) flake8
  • Conventions de nommage des variables, des fonctions et des classes respectées
  • Typo dans les variables, des fonctions et des classes
  • Typo dans les chaines de caractères
  • Code commenté
  • Commentaires morts (inutile, tests) nettoyés
  • Historique des commits nettoyé (rebase interactif)
  • Créer une migration de merge si nécessaire

Points de vigilance / Retours souhaités

Afin de pouvoir "filtrer" les différents type de produit je suis parti sur l'ajout du group trainer.

Une autre option possible serait d'ajouter la permission dans le méthode "get_product_acl" :

     if self.company.has_group_member('trainer'):
         acl.append(
             (
                 Allow,
                 "company:{}".format(self.company.id),
                 (
                     'list.training',
                     'add.training',
                     'edit.training',
                 )
             )
         )

Dans la logique des principals et puisqu'il s'agit dans la vue "company_products_view" de s'appuyer sur les droits de l'utilisateur courant pour afficher ou non les formations, l'idée d'appliquer les permissions au groupe 'trainer' et donc aux utilisateurs rattachés me semble cohérente.

Dans les deux cas je rencontre un souci: En tant qu'EA je peux afficher les formations d'une enseigne alors qu'aucun de ses employés n'appartient au group formateur.

Enfin actuellement si on applique un filtre à l'utilisateur courant sur l'affichage des formations ce dernier ne pourra pas non plus ajouter une formation, à partir du catalogue, dans un devis/facture. Est-ce un comportement acceptable ?

Navigateurs testés

Chrome

Edited by Sbodrero

Merge request reports