Fix: External user was not using correct menu handler.

This commit is contained in:
Laurent Destailleur 2012-12-27 17:06:55 +01:00
parent f566cd4d99
commit ba4be70a5e
8 changed files with 28 additions and 33 deletions

View File

@ -439,22 +439,6 @@ class Conf
if (isset($this->contrat)) $this->contract=$this->contrat;
if (isset($this->categorie)) $this->category=$this->categorie;
// Define menu manager in setup
if (empty($user->societe_id)) // If internal user or not defined
{
$this->top_menu=(empty($this->global->MAIN_MENU_STANDARD_FORCED)?$this->global->MAIN_MENU_STANDARD:$this->global->MAIN_MENU_STANDARD_FORCED);
$this->smart_menu=(empty($this->global->MAIN_MENU_SMARTPHONE_FORCED)?$this->global->MAIN_MENU_SMARTPHONE:$this->global->MAIN_MENU_SMARTPHONE_FORCED);
}
else // If external user
{
$this->top_menu=(empty($this->global->MAIN_MENUFRONT_STANDARD_FORCED)?$this->global->MAIN_MENUFRONT_STANDARD:$this->global->MAIN_MENUFRONT_STANDARD_FORCED);
$this->smart_menu=(empty($this->global->MAIN_MENUFRONT_SMARTPHONE_FORCED)?$this->global->MAIN_MENUFRONT_SMARTPHONE:$this->global->MAIN_MENUFRONT_SMARTPHONE_FORCED);
}
// For backward compatibility
if ($this->top_menu == 'eldy.php') $this->top_menu='eldy_backoffice.php';
elseif ($this->top_menu == 'rodolphe.php') $this->top_menu='eldy_backoffice.php';
// Object $mc
if (! defined('NOREQUIREMC') && ! empty($this->multicompany->enabled))
{

View File

@ -29,15 +29,13 @@
/**
* \class MenuTop
* \brief Classe permettant la gestion du menu du haut Auguria
* Classe permettant la gestion du menu du haut Auguria
*/
class MenuTop
{
var $db;
var $require_left=array("auguria_backoffice"); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
var $hideifnotallowed=0; // Put 0 for back office menu, 1 for front office menu
var $type_user=0; // Put 0 for internal users, 1 for external users
var $atarget=""; // Valeur du target a utiliser dans les liens
@ -61,7 +59,7 @@ class MenuTop
{
require_once DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria.lib.php';
print_auguria_menu($this->db,$this->atarget,$this->hideifnotallowed);
print_auguria_menu($this->db,$this->atarget,$this->type_user);
}
}

View File

@ -35,7 +35,7 @@ class MenuTop
{
var $db;
var $require_left=array("auguria_backoffice"); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
var $hideifnotallowed=1; // Put 0 for back office menu, 1 for front office menu
var $type_user=1; // Put 0 for internal users, 1 for external users
var $atarget=""; // Valeur du target a utiliser dans les liens
@ -60,7 +60,7 @@ class MenuTop
{
require_once DOL_DOCUMENT_ROOT.'/core/menus/standard/auguria.lib.php';
print_auguria_menu($this->db,$this->atarget,$this->hideifnotallowed);
print_auguria_menu($this->db,$this->atarget,$this->type_user);
}
}

View File

@ -29,7 +29,7 @@
*
* @param DoliDB $db Database handler
* @param string $atarget Target
* @param int $type_user 0=Internal,1=External,2=All
* @param int $type_user 0=Menu for backoffice, 1=Menu for front office
* @return void
*/
function print_eldy_menu($db,$atarget,$type_user)

View File

@ -28,14 +28,13 @@
/**
* \class MenuTop
* \brief Class to manage top menu Eldy (for internal users)
* Class to manage top menu Eldy (for internal users)
*/
class MenuTop
{
var $db;
var $require_left=array("eldy_backoffice"); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
var $hideifnotallowed=0; // Put 0 for back office menu, 1 for front office menu
var $type_user=0; // Put 0 for internal users, 1 for external users
var $atarget=""; // Valeur du target a utiliser dans les liens
@ -59,7 +58,7 @@ class MenuTop
{
require_once DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy.lib.php';
print_eldy_menu($this->db,$this->atarget,$this->hideifnotallowed);
print_eldy_menu($this->db,$this->atarget,$this->type_user);
}
}

View File

@ -34,7 +34,7 @@ class MenuTop
{
var $db;
var $require_left=array("eldy_frontoffice"); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
var $hideifnotallowed=1; // Put 0 for back office menu, 1 for front office menu
var $type_user=1; // Put 0 for internal users, 1 for external users
var $atarget=""; // Valeur du target a utiliser dans les liens
@ -58,7 +58,7 @@ class MenuTop
{
require_once DOL_DOCUMENT_ROOT.'/core/menus/standard/eldy.lib.php';
print_eldy_menu($this->db,$this->atarget,$this->hideifnotallowed);
print_eldy_menu($this->db,$this->atarget,$this->type_user);
}
}

View File

@ -28,7 +28,7 @@ class MenuTop
{
var $db;
var $require_left=array("empty"); // If this top menu handler must be used with a particular left menu handler
var $hideifnotallowed=false; // Put 0 for back office menu, 1 for front office menu
var $type_user=0; // Put 0 for internal users, 1 for external users
var $atarget=""; // To store arget to use in menu links
@ -50,7 +50,7 @@ class MenuTop
*/
function showmenu()
{
global $user,$conf,$langs,$dolibarr_main_db_name;;
global $user,$conf,$langs,$dolibarr_main_db_name;
print_start_menu_array_empty();

View File

@ -1149,8 +1149,22 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a
$toprightmenu='';
// Define menu manager in setup
if (empty($user->societe_id)) // If internal user or not defined
{
$conf->top_menu=(empty($conf->global->MAIN_MENU_STANDARD_FORCED)?$conf->global->MAIN_MENU_STANDARD:$conf->global->MAIN_MENU_STANDARD_FORCED);
$conf->smart_menu=(empty($conf->global->MAIN_MENU_SMARTPHONE_FORCED)?$conf->global->MAIN_MENU_SMARTPHONE:$conf->global->MAIN_MENU_SMARTPHONE_FORCED);
}
else // If external user
{
$conf->top_menu=(empty($conf->global->MAIN_MENUFRONT_STANDARD_FORCED)?$conf->global->MAIN_MENUFRONT_STANDARD:$conf->global->MAIN_MENUFRONT_STANDARD_FORCED);
$conf->smart_menu=(empty($conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED)?$conf->global->MAIN_MENUFRONT_SMARTPHONE:$conf->global->MAIN_MENUFRONT_SMARTPHONE_FORCED);
}
// For backward compatibility
if ($conf->top_menu == 'eldy.php') $conf->top_menu='eldy_backoffice.php';
elseif ($conf->top_menu == 'rodolphe.php') $conf->top_menu='eldy_backoffice.php';
if (! $conf->top_menu) $conf->top_menu ='eldy_backoffice.php';
// For backward compatibility with old modules
if (empty($conf->headerdone)) top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss);