Development #4050
affichage d'une catégorie sans formulaire visible
Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
03 décembre 2013
Echéance:
% réalisé:
100%
Temps estimé:
Patch proposed:
Planning:
Description
Si je vais sur une catégorie sans formulaire visible (parce que je ne suis pas connecté ou que je n'ai pas les bons rôles), elle est affichée... sans les formulaires.
Je propose de modifier cela :- si je suis connecté, afficher un "accès refusé"
- sinon, demander le login
Révisions associées
Historique
Mis à jour par Thomas Noël il y a plus de 10 ans
Algo à prévoir :
- si aucun formulaire n'est actif dans la config => ok, on affiche (et la liste sera vide)
- sinon si aucun formulaire n'est affichable (donc manque de droit d'accès) => raise errors.AccessUnauthorizedError()
Mis à jour par Thomas Noël il y a plus de 10 ans
Et donc, proposition de patch :
diff --git a/wcs/forms/root.py b/wcs/forms/root.py index e2b5936..0e2a50c 100644 --- a/wcs/forms/root.py +++ b/wcs/forms/root.py @@ -915,6 +915,10 @@ class RootDirectory(AccessControlled, Directory): list_forms, advertised_forms = self.get_list_of_forms(formdefs, user) + if formdefs and not list_forms and not advertised_forms: + # there is forms, but none can be displayed + raise errors.AccessUnauthorizedError() + user_forms = [] if user: for formdef in list_forms:
A faire : le jeu de tests correspondant.
Mis à jour par Thomas Noël il y a plus de 10 ans
- Statut changé de Nouveau à Résolu (à déployer)
- % réalisé changé de 0 à 100
Appliqué par commit 33194a9e23ce24b2d5d8e3897d25114da2ddcb5b.
Mis à jour par Thomas Noël il y a environ 10 ans
- Statut changé de Résolu (à déployer) à Solution déployée
disable access is no accessible forms (fix #4050)