J’aurais voulu savoir s’il existe nativement, un moyen de conserver le réglage pour chaque utilisateur concernant le fait que le menu soit déployé ou nom.
En résumé, le but serait de conserver le paramétrage de l’utilisateur, pour éviter un clique à chaque connexion pour passer en menu “minified” ou inversement en fonction des gouts de l’utilisateur.
Il y a le champ usr_menu_defcollapsed qui permet de spécifier cette préférence dans le formulaire du User :
Est-ce que vos utilisateurs ont accès à ce paramétrage ?
Ou vous pouvez forcer la valeur à la création ou postLoadGrant du User en fonction de ses habilitations.
J’ai fais des tests, et j’arrive à faire marcher “Menu visible” (le menu disparait bien), par contre pour “Menu collapsed by default” je n’ai aucune différence (le menu est toujours ouvert par défault).
De mémoire ce flag est un reste de la 3.x où il servait à ouvrir les domaines du menu par défaut (cet usage n’a plus de sens sur la UI 4.0+)
@Francois je ne sais pas si ce flag a été réutilisé en 4.0+ pour gérer le pliage/repliage par défaut des menus mais, effectivement ça ne semble pas avoir d’effet (testé en 5.2 à jour)
Oui il est envoyé avec les droits à la UI.
cf menuCollapsed dans le grant quand le menu est visible (sinon c’est pas envoyé).
En front, ça sert juste à faire un “click” sur le bouton collapse menu à l’ouverture
mais il y a peut être un régression, le bouton s’affiche trop tard… on va regarder
Pour donner des idées sur ce sujet : j’ai un cas où sur l’affichage d’une page particulières (un objet externe), je force le repliage du menu et le remet dans son état de pliage précédent quand on quitte la page:
var $menu = $ui.view.menu;
var min = $menu.isMenuMin();
if (!min)
$menu.menuMin(); // Force le menu en mode replié
// On revient au mode du menu précédent lorsqu'on quitte
$ctn.addClass("js-content-unload").on("ui.content.unload", function() {
if (!min)
$menu.menuMax();
});