Project

General

Profile

Tâche #22272

Scénario #22247: Evolution ACL et Quotas

ACL - EAD3 sur EOLE 2.6.2 - Sélection multiple

Added by Alain Guichard almost 6 years ago. Updated over 5 years ago.

Status:
Fermé
Priority:
Normal
Assigned To:
Start date:
01/02/2018
Due date:
% Done:

0%

Remaining (hours):
0.0

Ecran-Principal-ARBRE.png View (35.6 KB) Emmanuel IHRY, 05/22/2018 11:10 AM

Popup-gestion.png View (41.2 KB) Emmanuel IHRY, 05/22/2018 11:12 AM

Selection multipe.png View (5.37 KB) Emmanuel IHRY, 05/22/2018 11:16 AM

MultiGroup.png View (23.8 KB) Emmanuel IHRY, 05/22/2018 11:29 AM

multiUser.png View (71.5 KB) Emmanuel IHRY, 05/22/2018 11:29 AM

SelectionSimple.png View (21.7 KB) Emmanuel IHRY, 06/21/2018 04:52 PM

SelectionMulti.png View (23.7 KB) Emmanuel IHRY, 06/21/2018 04:52 PM

Associated revisions

Revision 5fabca16 (diff)
Added by Benjamin Bohard over 5 years ago

Évolutions fonctionnelles de l’action EAD3 ACL.

  • Mise à jour des composants web ;
  • sélection multiple pour affecter des droits en masse ;
  • gestion des changements de droits pour l’utilisateur et le groupe
    propriétaires du fichier, dossier.

Ref #22272

History

#1 Updated by Alain Guichard almost 6 years ago

  • File ACL-01.jpg added
  • File ACL-02.jpg added
Pouvoir faire une sélection multiple pour placer des ACLS comme cela existait avec EAD2 :
  1. Faire une sélection multiple (Voir fichier ACL-01.jpg)
  2. Valider la sélection et placer les droits (Voir fichier ACL-02.jpg)

#2 Updated by Emmanuel IHRY over 5 years ago

  • Subject changed from ACL - EAD3 sur eSBL 2.6.2 - Sélection multiple to ACL - EAD3 sur EOLE 2.6.2 - Sélection multiple

#3 Updated by Emmanuel IHRY over 5 years ago

Voici la description fonctionnelle de ce qu'il faut faire :

1) Séparation de l’écran en deux sous écrans

- arbre de navigation : toujours visible, il s'agit de l'arbre de navigation permettant le choix du répertoire. Il occupe tout l'espace disponible hormis la barre latérale gauche réservée au menu EAD).
Voir PJ Ecran-Principal-ARBRE.png
En face de chaque dossier, il faut ajouter un picto qui permet d'ouvrir la popup de gestion pour le dossier sélectionné

- popup de gestion : ouvert par clic en face du dossier pour lequel on souhaite agir
Voir PJ Popup-gestion.png

La popup est modale :
Le terme ppoup désigne une DIV qui s'affiche au dessus, mais pas une nouvelle fenêtre du navigateur
il faut volontairement la fermer (picto à intégrer)
Si une modification a été faite dans la fenêtre et que ce n'est pas enregistré, un message demande d'enregistrer / ne pas enregistrer / annuler la fermeture

2) Sélection simple ou multipe dans la popup de gestion

On garde globalement la présentation avec ces modifications :

Ajouter un picto + à droite de la zone de texte "Nom" qui permette de basculer du mode "Ajax sélection unitaire (ce qui existe actuellement)" vers "Zone de texte Selection multiple)" et réciproquement
S'inspirer de ce qui est fait dans redmine. Voir PJ Selection multipe.png

De cette manière on peut :
- continuer à faire comme maintenant, ajouter pour une personne ou un groupe via ajax, saisir ses droits sur le répertoire courant et enregistrer la ligne
- basculer en mode multi sélection, faire une sélection multiple de user ou de groupe, et appliquer les mêmes ACL pour tous les user/groupes sélectionnés et enregistrer la ligne
En mode multi, la zone de texte ressemble au fichiers MultiUser.png ou MultiGroup.png, CTRL clic permet la multi-selection

Dans les deux cas, le ou les user/groupes basculeront dans la partie basse de l'écran après validation de cette ligne.

3) Ajouter un bouton Enregistrer tout / annuler tout qui permet de faire des modifications multiple

Détecter toute modification faite pour les user et groupes listés avec des ACL spécifiques.
Permettre de modifier plusieurs lignes ensemble
Permettre de tout enregistrer en une seule fois
Si une modification est détectée, la fermeture de la popup génère une alerte demandant s'il faut enregistrer / ne pas enregistrer / annuler la fermeture

#4 Updated by Emmanuel IHRY over 5 years ago

  • File deleted (ACL-01.jpg)

#5 Updated by Emmanuel IHRY over 5 years ago

  • File deleted (ACL-02.jpg)

#6 Updated by Emmanuel IHRY over 5 years ago

#7 Updated by Benjamin Bohard over 5 years ago

Il nous semble possible de parvenir à un résultat satisfaisant sans passer par un écran intermédiaire (pour éviter une modification très importante du code).

On retient qu’il faut pouvoir appliquer des modifications (en bloc ?) à une sélection d’utilisateurs, groupes.
On retient également que le tableau doit permettre de sélectionner des utilisateurs et groupes et de les isoler visuellement.

Partant de ces remarques, il semble possible de modifier le tableau courant pour avoir une sélection multiple (sur laquelle on pourrait appliquer une modification) et un filtrage des données affichées selon le caractère sélectionné ou non.

Le point le plus problématique dans le cadre de l’implémentation actuelle est l’étape validation.

#8 Updated by Emmanuel IHRY over 5 years ago

  • Assigned To set to Benjamin Bohard

#9 Updated by Benjamin Bohard over 5 years ago

  • Status changed from Nouveau to En cours

#10 Updated by Benjamin Bohard over 5 years ago

Actuellement, l’action utilise uniquement les programmes getfacl et setfacl pour modifier les droits des utilisateurs. L’interface affiche également l’utilisateur propriétaire et le groupe propriétaire. Lors de la modification des droits de ces éléments particuliers, la commande setfacl ajoute une nouvelle règle ACL pour ces éléments. Il semble pourtant plus logique de modifier les droits non étendus.

La modification nécessiterait l’utilisation d’un module salt complémentaire pour jouer sur les droits du propriétaire.

#11 Updated by Vincent Chavanon over 5 years ago

s'il s'agit des droits du propriétaire, l'utilisation de chmod serait plus appropriée

#12 Updated by Emmanuel IHRY over 5 years ago

Exemple redmine

Basculement d'une sélection simple à sélection mutliple

#13 Updated by Emmanuel IHRY over 5 years ago

  • Status changed from En cours to Fermé
  • Remaining (hours) set to 0.0

suite dans le prochain sprint #24300

Also available in: Atom PDF