Line 17... |
Line 17... |
17 |
// | |
|
17 |
// | |
|
18 |
// | You should have received a copy of the GNU Lesser General Public |
|
18 |
// | You should have received a copy of the GNU Lesser General Public |
|
19 |
// | License along with this library; if not, write to the Free Software |
|
19 |
// | License along with this library; if not, write to the Free Software |
|
20 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
20 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
21 |
// +------------------------------------------------------------------------------------------------------+
|
21 |
// +------------------------------------------------------------------------------------------------------+
|
22 |
// CVS : $Id: menu.php,v 1.31 2006-12-01 16:33:40 florian Exp $
|
22 |
// CVS : $Id: menu.php,v 1.32 2007-10-24 14:43:02 ddelon Exp $
|
23 |
/**
|
23 |
/**
|
24 |
* Applette : menu
|
24 |
* Applette : menu
|
25 |
*
|
25 |
*
|
26 |
* Génère une liste de listes comportant tous les niveaux des menus "classiques" d'un site.
|
26 |
* Génère une liste de listes comportant tous les niveaux des menus "classiques" d'un site.
|
27 |
* Nécessite :
|
27 |
* Nécessite :
|
Line 36... |
Line 36... |
36 |
//Auteur original :
|
36 |
//Auteur original :
|
37 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
37 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
38 |
//Autres auteurs :
|
38 |
//Autres auteurs :
|
39 |
*@author Aucun
|
39 |
*@author Aucun
|
40 |
*@copyright Tela-Botanica 2000-2004
|
40 |
*@copyright Tela-Botanica 2000-2004
|
41 |
*@version $Revision: 1.31 $ $Date: 2006-12-01 16:33:40 $
|
41 |
*@version $Revision: 1.32 $ $Date: 2007-10-24 14:43:02 $
|
42 |
// +------------------------------------------------------------------------------------------------------+
|
42 |
// +------------------------------------------------------------------------------------------------------+
|
43 |
*/
|
43 |
*/
|
Line 44... |
Line 44... |
44 |
|
44 |
|
45 |
// +------------------------------------------------------------------------------------------------------+
|
45 |
// +------------------------------------------------------------------------------------------------------+
|
Line 232... |
Line 232... |
232 |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) {
|
232 |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) {
|
233 |
$tete .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 1))).
|
233 |
$tete .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 1))).
|
234 |
'<ul id="groupe_menu_'.$num_menu.'_'.$id_pere_menu_a_deployer.'" class="menu_'.$menu_type.'_'.'n'.$niveau_actuel.'">'."\n";
|
234 |
'<ul id="groupe_menu_'.$num_menu.'_'.$id_pere_menu_a_deployer.'" class="menu_'.$menu_type.'_'.'n'.$niveau_actuel.'">'."\n";
|
235 |
}
|
235 |
}
|
Line 236... |
Line 236... |
236 |
|
236 |
|
237 |
$requete = 'SELECT gm_id_menu, gm_date_fin_validite, GMR01.gmr_ordre, gm_nom '.
|
237 |
$requete = 'SELECT gm_id_menu, gm_date_fin_validite, gm_ce_i18n , GMR01.gmr_ordre, gm_nom '.
|
238 |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '.
|
238 |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '.
|
239 |
'WHERE GMR01.gmr_id_menu_01 = gm_id_menu '.
|
239 |
'WHERE GMR01.gmr_id_menu_01 = gm_id_menu '.
|
240 |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = "avoir père"
|
240 |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = "avoir père"
|
241 |
'AND GMR02.gmr_id_menu_02 = gm_id_menu '.
|
241 |
'AND GMR02.gmr_id_menu_02 = gm_id_menu '.
|
242 |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '.
|
242 |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '.
|
- |
|
243 |
'AND (gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '.
|
- |
|
244 |
'OR gm_ce_i18n = "'.$langue_test.'" )' ;
|
243 |
'AND gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" ';
|
245 |
|
Line 244... |
Line 246... |
244 |
$requete .= 'AND GMR01.gmr_id_menu_02 = '.$id_pere_menu_a_deployer.' ';
|
246 |
$requete .= 'AND GMR01.gmr_id_menu_02 = '.$id_pere_menu_a_deployer.' ';
|
245 |
|
247 |
|
246 |
if ($menu_type == 'classique' || $menu_type == 'deroulant') {
|
248 |
if ($menu_type == 'classique' || $menu_type == 'deroulant') {
|
Line 282... |
Line 284... |
282 |
if ( $resultat_est_traduction->numRows() == 0 ) {
|
284 |
if ( $resultat_est_traduction->numRows() == 0 ) {
|
283 |
$liste_menu[]=$ligne;
|
285 |
$liste_menu[]=$ligne;
|
284 |
}
|
286 |
}
|
285 |
}
|
287 |
}
|
286 |
// Par defaut, on traite tous les menus trouvés
|
288 |
// Par defaut, on traite tous les menus trouvés
|
287 |
else {
|
289 |
else {
|
288 |
$liste_menu[]=$ligne;
|
290 |
$liste_menu[]=$ligne;
|
289 |
}
|
291 |
}
|
Line 290... |
Line 292... |
290 |
|
292 |
|
Line 300... |
Line 302... |
300 |
}
|
302 |
}
|
Line 301... |
Line 303... |
301 |
|
303 |
|
Line 302... |
Line 304... |
302 |
usort ($liste_menu,"cmp");
|
304 |
usort ($liste_menu,"cmp");
|
- |
|
305 |
|
303 |
|
306 |
foreach ($liste_menu as $ligne) {
|
304 |
foreach ($liste_menu as $ligne) {
|
307 |
|
- |
|
308 |
//while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
|
305 |
//while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
|
309 |
if ($ligne->gm_date_fin_validite == '' || $ligne->gm_date_fin_validite == '0000-00-00 00:00:00' || strtotime($ligne->gm_date_fin_validite) > time()) {
|
- |
|
310 |
|
- |
|
311 |
// On ne retient pas egalement les menu reserve a une seule langue
|
- |
|
312 |
$requete_restriction = 'SELECT gmr_id_menu_02 '.
|
- |
|
313 |
'FROM gen_menu_relation '.
|
- |
|
314 |
'WHERE '.$ligne->gm_id_menu.' = gmr_id_menu_01 ' .
|
- |
|
315 |
'AND gmr_id_valeur = 106 ';// 106 restriction de menu
|
- |
|
316 |
$resultat_restriction = $objet_pear_db->query($requete_restriction);
|
- |
|
317 |
(DB::isError($resultat_restriction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_restriction->getMessage(), $requete_restriction))
|
- |
|
318 |
: '';
|
- |
|
319 |
|
- |
|
320 |
if ($resultat_restriction->numRows()>0 && $langue_test!=$ligne->gm_ce_i18n) {
|
- |
|
321 |
$select_menu=0;
|
- |
|
322 |
}
|
- |
|
323 |
else {
|
- |
|
324 |
$select_menu=1;
|
306 |
if ($ligne->gm_date_fin_validite == '' || $ligne->gm_date_fin_validite == '0000-00-00 00:00:00' || strtotime($ligne->gm_date_fin_validite) > time()) {
|
325 |
}
|
307 |
// On commence par regarder si le menu existe dans la langue demandée
|
326 |
|
308 |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) {
|
327 |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur && $select_menu==1) {
|
309 |
|
328 |
|
310 |
$id_menu_inf = $ligne->gm_id_menu;
|
329 |
$id_menu_inf = $ligne->gm_id_menu;
|
311 |
$id_menu_selectionne = '';
|
330 |
$id_menu_selectionne = '';
|
312 |
if (isset($GLOBALS['_GEN_commun']['info_menu']->gm_id_menu)) {
|
331 |
if (isset($GLOBALS['_GEN_commun']['info_menu']->gm_id_menu)) {
|
Line 500... |
Line 519... |
500 |
|
519 |
|
501 |
|
520 |
|
502 |
/* +--Fin du code ----------------------------------------------------------------------------------------+
|
521 |
/* +--Fin du code ----------------------------------------------------------------------------------------+
|
- |
|
522 |
*
|
- |
|
523 |
* $Log: not supported by cvs2svn $
|
- |
|
524 |
* Revision 1.31 2006-12-01 16:33:40 florian
|
503 |
*
|
525 |
* Amélioration de la gestion des applettes et compatibilité avec le nouveau mode de gestion de l'inclusion des applettes.
|
504 |
* $Log: not supported by cvs2svn $
|
526 |
*
|
505 |
* Revision 1.30 2006/11/27 13:47:23 florian
|
527 |
* Revision 1.30 2006/11/27 13:47:23 florian
|
506 |
* ajout de la touche alt pour les raccourcis
|
528 |
* ajout de la touche alt pour les raccourcis
|
507 |
*
|
529 |
*
|