Subversion Repositories Applications.papyrus

Rev

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

Rev 818 Rev 877
Line 19... Line 19...
19
// |                                                                                                      |
19
// |                                                                                                      |
20
// | You should have received a copy of the GNU General Public License                                    |
20
// | You should have received a copy of the GNU General Public License                                    |
21
// | along with Foobar; if not, write to the Free Software                                                |
21
// | along with Foobar; if not, write to the Free Software                                                |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
23
// +------------------------------------------------------------------------------------------------------+
23
// +------------------------------------------------------------------------------------------------------+
24
// CVS : $Id: adme_menu_commun.fonct.php,v 1.20 2006-04-12 21:11:54 ddelon Exp $
24
// CVS : $Id: adme_menu_commun.fonct.php,v 1.21 2006-06-29 18:58:57 ddelon Exp $
25
/**
25
/**
26
* Application de gestion des menus communs
26
* Application de gestion des menus communs
27
*
27
*
28
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus communs.
28
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus communs.
29
* Par menus communs, nous entendons tous les menus devant paraitre sur l'ensemble des pages de plusieurs site,
29
* Par menus communs, nous entendons tous les menus devant paraitre sur l'ensemble des pages de plusieurs site,
Line 36... Line 36...
36
//Autres auteurs :
36
//Autres auteurs :
37
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
37
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
38
*@author        David Delon <david.delon@clapas.net>
38
*@author        David Delon <david.delon@clapas.net>
39
*@author        Laurent COUDOUNEAU <lc@gsite.org>
39
*@author        Laurent COUDOUNEAU <lc@gsite.org>
40
*@copyright     Tela-Botanica 2000-2004
40
*@copyright     Tela-Botanica 2000-2004
41
*@version       $Revision: 1.20 $ $Date: 2006-04-12 21:11:54 $
41
*@version       $Revision: 1.21 $ $Date: 2006-06-29 18:58:57 $
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
43
*/
43
*/
Line 44... Line 44...
44
 
44
 
45
// +------------------------------------------------------------------------------------------------------+
45
// +------------------------------------------------------------------------------------------------------+
Line 156... Line 156...
156
* @param  integer l'identifiant du site à administrer.
156
* @param  integer l'identifiant du site à administrer.
157
* @param  integer l'identifiant du menu à administrer.
157
* @param  integer l'identifiant du menu à administrer.
158
* @param  integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +.
158
* @param  integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +.
159
* @return  string une ligne de liste XHTML
159
* @return  string une ligne de liste XHTML
160
*/
160
*/
161
function ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $int_deplier,$est_traduction=false)
161
function ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $int_deplier,$est_traduction=false,$menu_traduction_defaut=0)
162
{
162
{
163
    //-------------------------------------------------------------------------------------------------------------------
163
    //-------------------------------------------------------------------------------------------------------------------
164
    // Récupération des infos concernant l'administrateur d'un menu
164
    // Récupération des infos concernant l'administrateur d'un menu
165
    $requete =  'SELECT gen_menu.*, ga_prenom '.
165
    $requete =  'SELECT gen_menu.*, ga_prenom '.
166
                'FROM gen_menu, gen_annuaire '.
166
                'FROM gen_menu, gen_annuaire '.
Line 279... Line 279...
279
	    $url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_TRADUIRE);
279
	    $url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_TRADUIRE);
280
	    $xhtml_action .=    '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE.'">'.
280
	    $xhtml_action .=    '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE.'">'.
281
	                        ADME_LG_ACTION_COMMUN_TRADUIRE_ALT.
281
	                        ADME_LG_ACTION_COMMUN_TRADUIRE_ALT.
282
	                        '</a>&nbsp;'."\n";
282
	                        '</a>&nbsp;'."\n";
283
    }
283
    }
-
 
284
	else {
-
 
285
		if ($menu_traduction_defaut==$adme_menu_id) {
-
 
286
	        $xhtml_action .=    '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
-
 
287
                            '&nbsp;'."\n";
-
 
288
		}
-
 
289
		else {
-
 
290
				$url->removeQueryString('adme_action');
-
 
291
        		$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT);
-
 
292
        		$xhtml_action .=    '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE.'">'.
-
 
293
                                '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
-
 
294
                            '</a>'.'&nbsp;'."\n";
-
 
295
        
-
 
296
		}
-
 
297
	}    
284
    
298
	   
Line 285... Line 299...
285
    
299
    
Line 286... Line 300...
286
    $xhtml_traduction='';
300
    $xhtml_traduction='';
Line 296... Line 310...
296
			                
310
			                
297
	$resultat_traduction = $db->query($requete_traduction);
311
	$resultat_traduction = $db->query($requete_traduction);
298
			        (DB::isError($resultat_traduction))             ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction))
312
			        (DB::isError($resultat_traduction))             ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction))
Line -... Line 313...
-
 
313
			                : '';
-
 
314
			                
-
 
315
	if ($resultat_traduction->numRows() > 0 ) {
-
 
316
 
-
 
317
		$requete_traduction_defaut =    'SELECT gmr_id_menu_02 '.
-
 
318
		                                    'FROM  gen_menu_relation '.
-
 
319
		                                    'WHERE '.$adme_menu_id.' = gmr_id_menu_01 ' .
-
 
320
		                                    'AND  gmr_id_valeur  = 105 ';// 105 traduction par defaut
-
 
321
		$resultat_traduction_defaut = $db->query($requete_traduction_defaut);
-
 
322
		(DB::isError($resultat_traduction_defaut))             ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction_defaut))
-
 
323
		: '';
-
 
324
			                                   
-
 
325
			                                   
-
 
326
		if ($resultat_traduction_defaut->numRows() == 0 ) {
-
 
327
            $menu_traduction_defaut=0;
-
 
328
            $xhtml_action .=    '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
-
 
329
                        '&nbsp;'."\n";
-
 
330
		}
-
 
331
		else {
299
			                : '';
332
			
-
 
333
			
-
 
334
			$ligne_traduction_defaut = $resultat_traduction_defaut->fetchRow(DB_FETCHMODE_OBJECT);
-
 
335
			$menu_traduction_defaut=$ligne_traduction_defaut->gmr_id_menu_02;
-
 
336
			
-
 
337
			if ($menu_traduction_defaut!=$adme_menu_id) {
-
 
338
				$url->removeQueryString('adme_action');
-
 
339
    			$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT);
-
 
340
    			$xhtml_action .=    '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE.'">'.
-
 
341
                	            '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
-
 
342
                    	    '</a>'.'&nbsp;'."\n";
300
			                
343
			}
-
 
344
			else {
-
 
345
			   $xhtml_action .=    '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
-
 
346
                        '&nbsp;'."\n";
-
 
347
				
-
 
348
			}
Line -... Line 349...
-
 
349
			
-
 
350
		}
-
 
351
		
301
	while ($ligne_resultat = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) {
352
		while ($ligne_resultat = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) {
Line 302... Line 353...
302
		$xhtml_traduction.="<br><em>".$ligne_resultat->gm_ce_i18n.":&nbsp;".ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $ligne_resultat->gmr_id_menu_02, 0,true)."</em>";
353
			$xhtml_traduction.="<br><em>".$ligne_resultat->gm_ce_i18n.":&nbsp;".ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $ligne_resultat->gmr_id_menu_02, 0,true,$menu_traduction_defaut)."</em>";
Line 303... Line 354...
303
		
354
		
304
	}
355
		}
Line 305... Line 356...
305
			            
356
			            
Line 1429... Line 1480...
1429
                
1480
                
Line -... Line 1481...
-
 
1481
    
-
 
1482
}
-
 
1483
 
-
 
1484
 
-
 
1485
/** Fonction ADME_selectionnerMenuCommunTraduction()() Selection un menu classique comme traduction par defaut
-
 
1486
*
-
 
1487
*
-
 
1488
* @param  mixed  l'objet Pear DB de connexion à la base de données.
-
 
1489
* @param  integer l'identifiant du site du menu à supprimer
-
 
1490
* @param  integer l'identifiant du menu à supprimer
-
 
1491
* @return void   le menu classique est supprimé de la base de données.
-
 
1492
*/
-
 
1493
function ADME_selectionnerMenuCommunTraduction($db, $adme_id_site, $id_menu)
-
 
1494
{
-
 
1495
	
-
 
1496
	// 1 : Rechercher traduction parente : si presente on est dans une traduc. si absente on
-
 
1497
	// est dans un menu traduit.
-
 
1498
	
-
 
1499
			
-
 
1500
	$requete_origine_traduction  =  'SELECT gmr_id_menu_01 '.
-
 
1501
        	        				'FROM gen_menu_relation, gen_menu '.
-
 
1502
            	    				'WHERE gmr_id_menu_02  = ' . $id_menu .' '.
-
 
1503
				                	'AND gmr_id_valeur = 2  '; // 2 = "avoir traduction"
-
 
1504
	
-
 
1505
	$resultat_origine_traduction = $db->query($requete_origine_traduction) ;
-
 
1506
	  	
-
 
1507
	if (DB::isError($resultat_origine_traduction)) {
-
 
1508
	    die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete_origine_traduction) );
-
 
1509
	}
-
 
1510
		
-
 
1511
	
-
 
1512
	if ($resultat_origine_traduction->numRows() > 0) {
-
 
1513
		$ligne_origine_traduction = $resultat_origine_traduction->fetchRow(DB_FETCHMODE_OBJECT);
-
 
1514
		$id_menu_origine=$ligne_origine_traduction->gmr_id_menu_01;
-
 
1515
	}
-
 
1516
	else {
-
 
1517
		$id_menu_origine=$id_menu;
-
 
1518
	}
-
 
1519
 
-
 
1520
	$requete_suppression   = 'DELETE from gen_menu_relation '.
-
 
1521
						     'WHERE gmr_id_menu_01 = ' . $id_menu_origine . ' ' .
-
 
1522
						     'AND gmr_id_valeur=105 '; // 105  Traduction par defaut 
-
 
1523
 
-
 
1524
    $resultat_suppression = $db->query($requete_suppression);
-
 
1525
    (DB::isError($resultat_suppression)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_suppression->getMessage(), $requete_suppression)) : '';
-
 
1526
    
-
 
1527
 
-
 
1528
	$requete_insertion   = 'INSERT into gen_menu_relation '.
-
 
1529
						     ' SET gmr_id_menu_01 = ' . $id_menu_origine . ', ' .
-
 
1530
						     ' gmr_id_menu_02 = ' . $id_menu . ', ' .
-
 
1531
						     ' gmr_id_valeur = 105' ;
-
 
1532
 
-
 
1533
    $resultat_insertion = $db->query($requete_insertion);
-
 
1534
    (DB::isError($resultat_insertion)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_insertion->getMessage(), $requete_insertion)) : '';
Line 1430... Line 1535...
1430
    
1535
 
1431
}
1536
	
1432
 
1537
    
Line 1440... Line 1545...
1440
 
1545
 
1441
 
1546
 
1442
/* +--Fin du code ----------------------------------------------------------------------------------------+
1547
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
1548
*
-
 
1549
* $Log: not supported by cvs2svn $
-
 
1550
* Revision 1.20  2006/04/12 21:11:54  ddelon
1443
*
1551
* Multilinguisme menus communs
1444
* $Log: not supported by cvs2svn $
1552
*
1445
* Revision 1.19  2005/09/27 08:42:49  ddelon
1553
* Revision 1.19  2005/09/27 08:42:49  ddelon
1446
* Menu et Squelette
1554
* Menu et Squelette
1447
*
1555
*