Qual: Evolution du code des gestionnaires de menu pour qu'ils fonctionnent sous forme de classes.

This commit is contained in:
Laurent Destailleur 2005-01-16 15:23:50 +00:00
parent fc6baf11ca
commit 72ca88e5a4
4 changed files with 378 additions and 293 deletions

View File

@ -34,8 +34,35 @@
*/ */
if ($conf->adherent->enabled) /** \class MenuTop
{ \brief Classe permettant la gestion par défaut du menu du haut
*/
class MenuTop {
var $require_left=array(); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
/**
* \brief Constructeur
* \param db Handler d'accès base de donnée
*/
function MenuTop($db)
{
$this->db=$db;
}
/**
* \brief Affiche le menu
*/
function showmenu()
{
global $conf,$langs;
if ($conf->adherent->enabled)
{
$langs->load("members"); $langs->load("members");
$class=""; $class="";
@ -53,10 +80,10 @@ if ($conf->adherent->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/adherents/index.php?mainmenu=members"'.($target?" target=$target":"").'>'.$langs->trans("Members").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/adherents/index.php?mainmenu=members"'.($target?" target=$target":"").'>'.$langs->trans("Members").'</a>';
} }
if ($conf->commercial->enabled) if ($conf->commercial->enabled)
{ {
$langs->load("commercial"); $langs->load("commercial");
$class=""; $class="";
@ -75,10 +102,10 @@ if ($conf->commercial->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/index.php?mainmenu=commercial"'.($target?" target=$target":"").'>'.$langs->trans("Commercial").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/index.php?mainmenu=commercial"'.($target?" target=$target":"").'>'.$langs->trans("Commercial").'</a>';
} }
if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled) if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled)
{ {
$langs->load("compta"); $langs->load("compta");
$class=""; $class="";
@ -97,10 +124,10 @@ if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/compta/index.php?mainmenu=accountancy"'.($target?" target=$target":"").'>'.$langs->trans("Accountancy")."/".$langs->trans("Treasury").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/compta/index.php?mainmenu=accountancy"'.($target?" target=$target":"").'>'.$langs->trans("Accountancy")."/".$langs->trans("Treasury").'</a>';
} }
if ($conf->produit->enabled || $conf->service->enabled) if ($conf->produit->enabled || $conf->service->enabled)
{ {
$langs->load("products"); $langs->load("products");
$class=""; $class="";
@ -124,11 +151,11 @@ if ($conf->produit->enabled || $conf->service->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/product/index.php?mainmenu=products"'.($target?" target=$target":"").'>'.$chaine.'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/product/index.php?mainmenu=products"'.($target?" target=$target":"").'>'.$chaine.'</a>';
} }
if ($conf->fournisseur->enabled) if ($conf->fournisseur->enabled)
{ {
$langs->load("suppliers"); $langs->load("suppliers");
$class=""; $class="";
@ -146,11 +173,11 @@ if ($conf->fournisseur->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/fourn/index.php?mainmenu=supplier"'.($target?" target=$target":"").'>'.$langs->trans("Suppliers").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/fourn/index.php?mainmenu=supplier"'.($target?" target=$target":"").'>'.$langs->trans("Suppliers").'</a>';
} }
if ($conf->webcal->enabled) if ($conf->webcal->enabled)
{ {
$langs->load("other"); $langs->load("other");
$class=""; $class="";
@ -168,10 +195,9 @@ if ($conf->webcal->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/projet/webcal.php?mainmenu=webcal"'.($target?" target=$target":"").'>'.$langs->trans("Calendar").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/projet/webcal.php?mainmenu=webcal"'.($target?" target=$target":"").'>'.$langs->trans("Calendar").'</a>';
}; };
}
}
?> ?>

View File

@ -32,8 +32,34 @@
*/ */
if ($conf->adherent->enabled) /** \class MenuTop
{ \brief Classe permettant la gestion du menu du haut Eldy
*/
class MenuTop {
var $require_left=array("eldy"); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
/**
* \brief Constructeur
* \param db Handler d'accès base de donnée
*/
function MenuTop($db)
{
$this->db=$db;
}
/**
* \brief Affiche le menu
*/
function showmenu()
{
global $conf,$langs;
if ($conf->adherent->enabled)
{
$langs->load("members"); $langs->load("members");
$class=""; $class="";
@ -51,10 +77,10 @@ if ($conf->adherent->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/adherents/index.php?mainmenu=members"'.($target?" target=$target":"").'>'.$langs->trans("Members").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/adherents/index.php?mainmenu=members"'.($target?" target=$target":"").'>'.$langs->trans("Members").'</a>';
} }
if ($conf->commercial->enabled) if ($conf->commercial->enabled)
{ {
$langs->load("commercial"); $langs->load("commercial");
$class=""; $class="";
@ -73,10 +99,10 @@ if ($conf->commercial->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/index.php?mainmenu=commercial"'.($target?" target=$target":"").'>'.$langs->trans("Commercial").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/index.php?mainmenu=commercial"'.($target?" target=$target":"").'>'.$langs->trans("Commercial").'</a>';
} }
if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled) if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled)
{ {
$langs->load("compta"); $langs->load("compta");
$class=""; $class="";
@ -95,10 +121,10 @@ if ($conf->compta->enabled || $conf->banque->enabled || $conf->caisse->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/compta/index.php?mainmenu=accountancy"'.($target?" target=$target":"").'>'.$langs->trans("Accountancy")."/".$langs->trans("Treasury").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/compta/index.php?mainmenu=accountancy"'.($target?" target=$target":"").'>'.$langs->trans("Accountancy")."/".$langs->trans("Treasury").'</a>';
} }
if ($conf->produit->enabled || $conf->service->enabled) if ($conf->produit->enabled || $conf->service->enabled)
{ {
$langs->load("products"); $langs->load("products");
$class=""; $class="";
@ -122,11 +148,11 @@ if ($conf->produit->enabled || $conf->service->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/product/index.php?mainmenu=products"'.($target?" target=$target":"").'>'.$chaine.'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/product/index.php?mainmenu=products"'.($target?" target=$target":"").'>'.$chaine.'</a>';
} }
if ($conf->fournisseur->enabled) if ($conf->fournisseur->enabled)
{ {
$langs->load("suppliers"); $langs->load("suppliers");
$class=""; $class="";
@ -144,11 +170,11 @@ if ($conf->fournisseur->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/fourn/index.php?mainmenu=supplier"'.($target?" target=$target":"").'>'.$langs->trans("Suppliers").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/fourn/index.php?mainmenu=supplier"'.($target?" target=$target":"").'>'.$langs->trans("Suppliers").'</a>';
} }
if ($conf->webcal->enabled) if ($conf->webcal->enabled)
{ {
$langs->load("other"); $langs->load("other");
$class=""; $class="";
@ -166,7 +192,7 @@ if ($conf->webcal->enabled)
} }
print '<a '.$class.' href="'.DOL_URL_ROOT.'/projet/webcal.php?mainmenu=webcal"'.($target?" target=$target":"").'>'.$langs->trans("Calendar").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/projet/webcal.php?mainmenu=webcal"'.($target?" target=$target":"").'>'.$langs->trans("Calendar").'</a>';
}; };
$langs->load("other"); $langs->load("other");
@ -187,6 +213,8 @@ if ($conf->webcal->enabled)
print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/mailing/index.php?mainmenu=tools"'.($target?" target=$target":"").'>'.$langs->trans("Tools").'</a>'; print '<a '.$class.' href="'.DOL_URL_ROOT.'/comm/mailing/index.php?mainmenu=tools"'.($target?" target=$target":"").'>'.$langs->trans("Tools").'</a>';
}
}
?> ?>

View File

@ -21,24 +21,53 @@
* *
*/ */
/** /** \file htdocs/includes/menus/barre_top/esprit.php
\file htdocs/includes/menus/barre_top/esprit.php
\brief Gestionnaire du menu du haut spécialisé vente de CD/livres \brief Gestionnaire du menu du haut spécialisé vente de CD/livres
\version $Revision$ \version $Revision$
\remarks La construction d'un gestionnaire pour le menu du haut est simple: \remarks La construction d'un gestionnaire pour le menu du haut est simple:
\remarks Toutes les entrées de menu a faire apparaitre dans la barre du \remarks Toutes les entrées de menu à faire apparaitre dans la barre du haut
\remarks du haut doit etre affichée par <a class="tmenu" href="lien">Nom</a> \remarks doivent être affichées par <a class="tmenu" href="...?mainmenu=...">...</a>
\remarks On peut éventuellement ajouter l'attribut id="sel" dans la balise <a> \remarks On peut éventuellement ajouter l'attribut id="sel" dans la balise <a>
\remarks quand il s'agit de l'entrée du menu qui est sélectionné. \remarks quand il s'agit de l'entrée du menu qui est sélectionnée.
*/ */
print '<a class="tmenu" href="/boutique/livre/">livres</a>';
print '<a class="tmenu" href="/boutique/client/">clients</a>'; /** \class MenuTop
\brief Classe permettant la gestion du menu du haut Esprit
*/
print '<a class="tmenu" href="/product/critiques/">critiques</a>'; class MenuTop {
print '<a class="tmenu" href="/product/categorie/">catégories</a>'; var $require_left=array(); // Si doit etre en phase avec un gestionnaire de menu gauche particulier
/**
* \brief Constructeur
* \param db Handler d'accès base de donnée
*/
function MenuTop($db)
{
$this->db=$db;
}
/**
* \brief Affiche le menu
*/
function showmenu()
{
global $conf,$langs;
$langs->load("commercial");
$langs->load("other");
print '<a class="tmenu" href="/boutique/livre/">'.$langs->trans("Books").'</a>';
print '<a class="tmenu" href="/boutique/client/">'.$langs->trans("Customers").'</a>';
print '<a class="tmenu" href="/product/critiques/">'.$langs->trans("Criticals").'</a>';
print '<a class="tmenu" href="/product/categorie/">'.$langs->trans("Categories").'</a>';
}
}
?> ?>

View File

@ -183,16 +183,18 @@ function top_menu($head, $title="", $target="")
*/ */
print '<div class="tmenu">'."\n"; print '<div class="tmenu">'."\n";
// Sommet menu de gauche, lien accueil // Entrée Home/Accueil du menu
$class="tmenu"; $id=""; $id="";
if ($_SESSION["topmenu"] && $_SESSION["topmenu"] == "accueil") { $class="tmenu"; $id="sel"; } if ($_SESSION["topmenu"] && $_SESSION["topmenu"] == "accueil") { $id="sel"; }
elseif (ereg("^".DOL_URL_ROOT."\/[^\\\/]+$",$_SERVER["PHP_SELF"]) || ereg("^".DOL_URL_ROOT."\/user\/",$_SERVER["PHP_SELF"]) || ereg("^".DOL_URL_ROOT."\/admin\/",$_SERVER["PHP_SELF"])) { $class="tmenu"; $id="sel"; } elseif (ereg("^".DOL_URL_ROOT."\/[^\\\/]+$",$_SERVER["PHP_SELF"]) || ereg("^".DOL_URL_ROOT."\/user\/",$_SERVER["PHP_SELF"]) || ereg("^".DOL_URL_ROOT."\/admin\/",$_SERVER["PHP_SELF"])) { $id="sel"; }
// Entrée Home du menu
print '<a class="tmenu" id="'.$id.'" href="'.DOL_URL_ROOT.'/index.php?mainmenu=home"'.($target?" target=$target":"").'>'.$langs->trans("Home").'</a>'; print '<a class="tmenu" id="'.$id.'" href="'.DOL_URL_ROOT.'/index.php?mainmenu=home"'.($target?" target=$target":"").'>'.$langs->trans("Home").'</a>';
// Autres entrées du menu par le gestionnaires
require(DOL_DOCUMENT_ROOT ."/includes/menus/barre_top/".$conf->top_menu); // Autres entrées du menu par le gestionnaire
require_once(DOL_DOCUMENT_ROOT ."/includes/menus/barre_top/".$conf->top_menu);
$menutop = new MenuTop($db);
$menutop->showmenu();
// Lien sur fiche du login // Lien sur fiche du login
print '<a class="login" href="'.DOL_URL_ROOT.'/user/fiche.php?id='.$user->id.'">'.$user->login.'</a>' ; print '<a class="login" href="'.DOL_URL_ROOT.'/user/fiche.php?id='.$user->id.'">'.$user->login.'</a>' ;