19,7 → 19,7 |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: menu.php,v 1.32 2007-10-24 14:43:02 ddelon Exp $ |
// CVS : $Id: menu.php,v 1.33 2008-08-08 14:56:46 jp_milcent Exp $ |
/** |
* Applette : menu |
* |
38,7 → 38,7 |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.32 $ $Date: 2007-10-24 14:43:02 $ |
*@version $Revision: 1.33 $ $Date: 2008-08-08 14:56:46 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
72,7 → 72,7 |
*/ |
function afficherMenuNiveauMultiple($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation de variable. |
// Initialisation de variable et gestion des globales |
$objet_pear_db = $_GEN_commun['pear_db']; |
$id_site = $_GEN_commun['info_site']->gs_id_site; |
if (isset($_GEN_commun['info_menu'])) { |
80,40 → 80,36 |
} |
$num_menu = $GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_MENU_']['nom_fonction']]; |
|
// Indentation du html |
$indent_origine = 12;// Indentation de départ en nombre d'espace |
$indent_pas = 4;// Pas d'indentation en nombre d'espace |
$niveau_depart = 1; |
|
// Récupérations des arguments passés dans la balise. |
// Pour les menus CLASSIQUE et COMMUN |
$balise = $tab_applette_arguments[1]; |
$menu_type = $tab_applette_arguments[2]; |
$niveau_depart = $tab_applette_arguments[3]; |
$niveau_depart = (isset($tab_applette_arguments[3])) ? $tab_applette_arguments[3] : 1; |
$profondeur = $tab_applette_arguments[4]; |
$menu_depart = 0; |
// Si on indique un ID de menu de départ |
if (isset($tab_applette_arguments[5]) && !empty($tab_applette_arguments[5])) { |
$menu_depart = $tab_applette_arguments[6]; |
} else { |
$menu_depart = 0; |
} |
// Pour les menus UNIQUE |
if (isset($tab_applette_arguments[7])) { |
$menu_type = $tab_applette_arguments[7]; |
$menu_type = $tab_applette_arguments[7]; // Type de menu : UNIQUE |
} |
if (isset($tab_applette_arguments[8])) { |
$menu_depart = $tab_applette_arguments[8]; |
$menu_depart = $tab_applette_arguments[8]; // ID du menu de type UNIQUE |
} |
// Pour les balises menus avec NUMID en dur |
// Gestion du numéro unique pour l'attribut id des li des menus |
if (isset($tab_applette_arguments[9])) { |
$num_menu = $tab_applette_arguments[9]; |
} |
|
// Gestion du type de menu |
switch ($menu_type) { |
case '' : |
$menu_type = 'classique'; |
break; |
case 'CLASSIQUE' : |
$menu_type = 'classique'; |
break; |
case 'COMMUN' : |
$menu_type = 'commun'; |
break; |
123,14 → 119,22 |
case 'DEROULANT' : |
$menu_type = 'deroulant'; |
break; |
case 'CLASSIQUE' : |
default: |
$menu_type = 'classique'; |
} |
|
// Si le niveau de départ est supérieur à 1 et qu'aucun id de menu n'a été indiqué |
$niveau_actuel = 1; |
if (1 < $niveau_depart && 0 == $menu_depart) { |
$menu_depart = GEN_lireIdentifiantMenuPere($id_menu); |
$niveau_actuel = GEN_donnerProfondeur($id_site, $id_menu); |
//trigger_error("Niveau actuel du menu si$id_site:me$id_menu pour la balise {$tab_applette_arguments[0]} : $niveau_actuel", E_USER_NOTICE); |
} |
|
//Construction du menu |
$xhtml_menu = afficherListeNiveauMultiple( $objet_pear_db, $id_site,$niveau_depart, |
$profondeur, $menu_depart, 1, $menu_type, $indent_origine, |
$indent_pas, $_GEN_commun, $num_menu); |
$indent_pas, $_GEN_commun, $num_menu, $niveau_actuel); |
|
// Si le menu est déroulant il faut stocker un peu de javascript pour IE |
if ($menu_type == 'deroulant') { |
172,10 → 176,9 |
*/ |
function afficherListeNiveauMultiple( &$objet_pear_db, $id_site, $niveau_depart, $profondeur, |
$id_pere_menu_a_deployer, $position, $menu_type, $indent_origine = 12, |
$indent_pas = 4, $_GEN_commun, $num_menu) |
$indent_pas = 4, $_GEN_commun, $num_menu, $niveau_actuel = 1) |
{ |
// Initialisation des variables |
static $niveau_actuel = 1; |
$retour = ''; |
$tete = ''; |
$corps = ''; |
378,7 → 381,7 |
$niveau_actuel++; |
$corps .= afficherListeNiveauMultiple( $objet_pear_db, $id_site, $niveau_depart, |
$profondeur, $ligne->gm_id_menu, ($position + 3), $menu_type, |
null, null, $_GEN_commun, $num_menu); |
null, null, $_GEN_commun, $num_menu, $niveau_actuel); |
// On ramène $niveau_actuel un cran plus bas |
$niveau_actuel--; |
} |
521,6 → 524,9 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.32 2007-10-24 14:43:02 ddelon |
* Gestion des menus reservés à une langue |
* |
* Revision 1.31 2006-12-01 16:33:40 florian |
* Amélioration de la gestion des applettes et compatibilité avec le nouveau mode de gestion de l'inclusion des applettes. |
* |