diff --git a/htdocs/includes/menus/barre_left/eldy.php b/htdocs/includes/menus/barre_left/eldy.php index d5cd5b36bcf..cd39d25ebac 100644 --- a/htdocs/includes/menus/barre_left/eldy.php +++ b/htdocs/includes/menus/barre_left/eldy.php @@ -67,9 +67,6 @@ class MenuLeft { $user->getrights(""); - $newmenu = new Menu(); - $overwritemenufor=array('home','members','products','suppliers','commercial','accountancy','tools'); - // On récupère mainmenu et leftmenu qui définissent le menu à afficher if (isset($_GET["mainmenu"])) { // On sauve en session le menu principal choisi @@ -80,6 +77,7 @@ class MenuLeft { // On va le chercher en session si non défini par le lien $mainmenu=$_SESSION["mainmenu"]; } + if (isset($_GET["leftmenu"])) { // On sauve en session le menu principal choisi $leftmenu=$_GET["leftmenu"]; @@ -97,6 +95,9 @@ class MenuLeft { } + $newmenu = new Menu(); + $overwritemenufor=array('home','members','products','suppliers','commercial','accountancy','tools'); + /** * On definit newmenu en fonction de mainmenu et leftmenu * ------------------------------------------------------ diff --git a/htdocs/includes/menus/barre_top/default.php b/htdocs/includes/menus/barre_top/default.php index 686967b5f51..378d6b9b8a5 100644 --- a/htdocs/includes/menus/barre_top/default.php +++ b/htdocs/includes/menus/barre_top/default.php @@ -60,8 +60,23 @@ class MenuTop { function showmenu() { - global $conf,$langs; + global $user,$conf,$langs; + if (! session_id()) session_start(); // En mode authentification PEAR, la session a déjà été ouverte + + $user->getrights(""); + + // On récupère mainmenu + if (isset($_GET["mainmenu"])) { + // On sauve en session le menu principal choisi + $mainmenu=$_GET["mainmenu"]; + $_SESSION["mainmenu"]=$mainmenu; + $_SESSION["leftmenuopened"]=""; + } else { + // On va le chercher en session si non défini par le lien + $mainmenu=$_SESSION["mainmenu"]; + } + // Entrée home $id=""; if ($_GET["mainmenu"] == "home" || ($_SESSION["mainmenu"] && $_SESSION["mainmenu"] == "home"))