32,7 → 32,7 |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_menu_classique.fonct.php,v 1.40 2007-07-03 14:35:11 florian Exp $ |
// CVS : $Id: adme_menu_classique.fonct.php,v 1.41 2007-10-24 14:43:02 ddelon Exp $ |
/** |
* Fonctions de gestion des menus classiques |
* |
47,7 → 47,7 |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.40 $ $Date: 2007-07-03 14:35:11 $ |
*@version $Revision: 1.41 $ $Date: 2007-10-24 14:43:02 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
183,7 → 183,6 |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
|
//------------------------------------------------------------------------------------------------------------------- |
// Recupération des infos de l'appli du menu courant. |
$ligne_app = GEN_retournerInfoAppliMenu($db, $adme_menu_id); |
298,10 → 297,80 |
} |
|
if (!$est_traduction) { |
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_TRADUIRE); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_TRADUIRE_TITLE.'">'. |
|
|
$requete_traduction = 'SELECT gmr_id_menu_02, gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE '.$adme_menu_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_menu_02 = gm_id_menu '. |
'AND gmr_id_valeur = 2 ';// 2 = "avoir traduction" |
|
$resultat_traduction = $db->query($requete_traduction); |
(DB::isError($resultat_traduction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
|
|
|
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_TRADUIRE); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_TRADUIRE_TITLE.'">'. |
ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ALT. |
'</a> '."\n"; |
|
|
// Restriction possible à une langue si pas traduit |
|
if ($resultat_traduction->numRows() == 0 ) { |
|
$requete_lang = 'SELECT * FROM gen_i18n '; |
|
|
$resultat_lang = $db->query($requete_lang); |
(DB::isError($resultat_lang)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_lang->getMessage(), $requete_lang)) : ''; |
|
|
$requete_restriction = 'SELECT gmr_id_menu_02 '. |
'FROM gen_menu_relation '. |
'WHERE '.$adme_menu_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 106 ';// 106 restriction de menu |
$resultat_restriction = $db->query($requete_restriction); |
(DB::isError($resultat_restriction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_restriction->getMessage(), $requete_restriction)) |
: ''; |
|
|
if ($resultat_restriction->numRows() == 0 ) { |
$restriction=0; |
} |
else { |
$restriction=1; |
} |
|
while ($ligne_lang = $resultat_lang->fetchRow(DB_FETCHMODE_OBJECT) ) { |
// print $ligne->gm_ce_i18n; |
// print $restriction; |
// print $ligne_lang->gi_id_i18n; |
if (($restriction) && ($ligne->gm_ce_i18n==$ligne_lang->gi_id_i18n)) { |
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_OUVRIR); |
$url->addQueryString('zone',$ligne_lang->gi_id_i18n); |
$xhtml_action .= '<u><a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_OUVRIR_TITLE.'">'. |
$ligne_lang->gi_id_i18n. |
'</a></u> '."\n"; |
|
} |
else { |
|
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_LIMITER); |
$url->addQueryString('zone',$ligne_lang->gi_id_i18n); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_LIMITER_TITLE.'">'. |
$ligne_lang->gi_id_i18n. |
'</a> '."\n"; |
} |
} |
|
|
|
} |
|
|
} |
else { |
if ($menu_traduction_defaut==$adme_menu_id) { |
375,7 → 444,9 |
} |
|
|
} |
} |
|
|
|
//------------------------------------------------------------------------------------------------------------------- |
// Envoi du menu. |
1713,18 → 1784,75 |
$resultat_insertion = $db->query($requete_insertion); |
(DB::isError($resultat_insertion)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_insertion->getMessage(), $requete_insertion)) : ''; |
|
|
|
/* $requete = 'UPDATE gen_menu_relation SET gmr_id_menu_02 = '. $g |
'WHERE gmr_id_menu_01 = ' . $id_menu . |
'AND gmr_id_menu_02 =42 AND `gmr_id_valeur` =105 LIMIT 1 ; |
*/ |
|
|
} |
|
|
/** Fonction ADME_limiterMenuClassique() (limiter) un menu classique à la langue selectionne |
* |
* |
* @param mixed l'objet Pear DB de connexion à la base de données. |
* @param integer l'identifiant du site du menu à supprimer |
* @param integer l'identifiant du menu à supprimer |
* @return void le menu classique est supprimé de la base de données. |
*/ |
function ADME_limiterMenuClassique($db, $adme_id_site, $id_menu, $zone) |
{ |
|
|
$requete_insertion = 'INSERT into gen_menu_relation '. |
' SET gmr_id_menu_01 = ' . $id_menu . ', ' . |
' gmr_id_menu_02 = ' . $id_menu . ', ' . |
' gmr_id_valeur = 106' ; |
|
$resultat_insertion = $db->query($requete_insertion); |
|
|
|
$requete_mise_a_jour = 'UPDATE gen_menu SET '. |
'gm_ce_i18n = "'.$zone.'" '. |
'WHERE gm_id_menu = '.$id_menu; |
|
$resultat_mise_a_jour = $db->query($requete_mise_a_jour); |
(DB::isError($resultat_mise_a_jour)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_mise_a_jour->getMessage(), $requete_mise_a_jour)) : ''; |
|
|
} |
|
|
/** Fonction ADME_ouvrirMenuClassique() Ouvrir un menu classique à toutes les langues (suite à une fermeture) |
* |
* |
* @param mixed l'objet Pear DB de connexion à la base de données. |
* @param integer l'identifiant du site du menu à supprimer |
* @param integer l'identifiant du menu à supprimer |
* @return void le menu classique est supprimé de la base de données. |
*/ |
function ADME_ouvrirMenuClassique($db, $adme_id_site, $id_menu) |
{ |
|
|
$requete_suppression = 'DELETE from gen_menu_relation '. |
'WHERE gmr_id_menu_01 = ' . $id_menu . ' ' . |
'AND gmr_id_valeur=106 '; // 106 fermeture du menu |
|
$resultat_suppression = $db->query($requete_suppression); |
|
|
$requete_mise_a_jour = 'UPDATE gen_menu SET '. |
'gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '. |
'WHERE gm_id_menu = '.$id_menu; |
|
$resultat_mise_a_jour = $db->query($requete_mise_a_jour); |
(DB::isError($resultat_mise_a_jour)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_mise_a_jour->getMessage(), $requete_mise_a_jour)) : ''; |
|
|
} |
|
|
|
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
1733,6 → 1861,9 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.40 2007-07-03 14:35:11 florian |
* correction bug maj non prise en charge |
* |
* Revision 1.39 2007-07-03 14:07:02 florian |
* correction bug maj non prise en charge |
* |