Subversion Repositories Applications.papyrus

Rev

Rev 1090 | Rev 1848 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1090 Rev 1673
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
*