Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 1672 → Rev 1673

/trunk/papyrus/applettes/menu/menu.php
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.31 2006-12-01 16:33:40 florian Exp $
// CVS : $Id: menu.php,v 1.32 2007-10-24 14:43:02 ddelon Exp $
/**
* Applette : menu
*
38,7 → 38,7
//Autres auteurs :
*@author Aucun
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.31 $ $Date: 2006-12-01 16:33:40 $
*@version $Revision: 1.32 $ $Date: 2007-10-24 14:43:02 $
// +------------------------------------------------------------------------------------------------------+
*/
 
234,13 → 234,15
'<ul id="groupe_menu_'.$num_menu.'_'.$id_pere_menu_a_deployer.'" class="menu_'.$menu_type.'_'.'n'.$niveau_actuel.'">'."\n";
}
$requete = 'SELECT gm_id_menu, gm_date_fin_validite, GMR01.gmr_ordre, gm_nom '.
$requete = 'SELECT gm_id_menu, gm_date_fin_validite, gm_ce_i18n , GMR01.gmr_ordre, gm_nom '.
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '.
'WHERE GMR01.gmr_id_menu_01 = gm_id_menu '.
'AND GMR01.gmr_id_valeur = 1 '.// 1 = "avoir père"
'AND GMR02.gmr_id_menu_02 = gm_id_menu '.
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '.
'AND gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" ';
'AND (gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '.
'OR gm_ce_i18n = "'.$langue_test.'" )' ;
$requete .= 'AND GMR01.gmr_id_menu_02 = '.$id_pere_menu_a_deployer.' ';
if ($menu_type == 'classique' || $menu_type == 'deroulant') {
284,7 → 286,7
}
}
// Par defaut, on traite tous les menus trouvés
else {
else {
$liste_menu[]=$ligne;
}
302,11 → 304,28
usort ($liste_menu,"cmp");
foreach ($liste_menu as $ligne) {
 
//while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
if ($ligne->gm_date_fin_validite == '' || $ligne->gm_date_fin_validite == '0000-00-00 00:00:00' || strtotime($ligne->gm_date_fin_validite) > time()) {
// On commence par regarder si le menu existe dans la langue demandée
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) {
// On ne retient pas egalement les menu reserve a une seule langue
$requete_restriction = 'SELECT gmr_id_menu_02 '.
'FROM gen_menu_relation '.
'WHERE '.$ligne->gm_id_menu.' = gmr_id_menu_01 ' .
'AND gmr_id_valeur = 106 ';// 106 restriction de menu
$resultat_restriction = $objet_pear_db->query($requete_restriction);
(DB::isError($resultat_restriction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_restriction->getMessage(), $requete_restriction))
: '';
if ($resultat_restriction->numRows()>0 && $langue_test!=$ligne->gm_ce_i18n) {
$select_menu=0;
}
else {
$select_menu=1;
}
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur && $select_menu==1) {
$id_menu_inf = $ligne->gm_id_menu;
$id_menu_selectionne = '';
if (isset($GLOBALS['_GEN_commun']['info_menu']->gm_id_menu)) {
502,6 → 521,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* 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.
*
* Revision 1.30 2006/11/27 13:47:23 florian
* ajout de la touche alt pour les raccourcis
*
/trunk/papyrus/applications/admin_menu/bibliotheque/adme_general.fonct.php
32,7 → 32,7
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
// termes.
// ----
// CVS : $Id: adme_general.fonct.php,v 1.19 2007-04-19 15:34:35 neiluj Exp $
// CVS : $Id: adme_general.fonct.php,v 1.20 2007-10-24 14:43:02 ddelon Exp $
/**
* Contient l'affichage par défaut de l'appli quand aucune actin
*
46,7 → 46,7
//Autres auteurs :
*@author Aucun
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.19 $ $Date: 2007-04-19 15:34:35 $
*@version $Revision: 1.20 $ $Date: 2007-10-24 14:43:02 $
// +------------------------------------------------------------------------------------------------------+
*/
 
230,7 → 230,7
else {
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
$adme_site_id = $ligne->gsr_id_site_01;
}
}
$resultat->free();
253,10 → 253,15
$label = '<label for="'.$id.'">'.ADME_LG_FORM_SITE_CHOIX.'</label>';
$objet_select = new HTML_QuickForm_select($id, $label, '', $aso_attributs);
$aso_options = array();
//print $adme_site_id;
 
foreach ($liste_site as $ligne ) {
if (!isset($adme_site_id) || $adme_site_id == 0) {
$adme_site_id = $ligne->gs_id_site;
}
// print $ligne->gs_id_site;
if ($ligne->gs_id_site == $adme_site_id) {
$objet_select->addOption(htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')'), $ligne->gs_id_site, 'selected="selected"');
// Attribution du nom du site sur lequel on travaille pour le titre
300,6 → 305,8
$retour .= '</p>'."\n";
$retour .= ADME_afficherListeMenuClassique($objet_pear_db, $objet_pear_url, $adme_site_id, $adme_menu_id, $adme_action, 0);
//---------------------------------------------------------------------------------------------------------------
// Gestion des menus communs
$retour .= '<p>'."\n";
325,6 → 332,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.19 2007-04-19 15:34:35 neiluj
* préparration release (livraison) "Narmer" - v0.25
*
* Revision 1.18 2006/10/16 15:49:07 ddelon
* Refactorisation code mulitlinguisme et gestion menu invisibles
*
/trunk/papyrus/applications/admin_menu/bibliotheque/adme_menu_classique.fonct.php
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>&nbsp;'."\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>&nbsp;'."\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>&nbsp;'."\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
*
/trunk/papyrus/applications/admin_menu/bibliotheque/adme_menu_commun.fonct.php
21,7 → 21,7
// | along with Foobar; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: adme_menu_commun.fonct.php,v 1.27 2006-10-16 15:49:07 ddelon Exp $
// CVS : $Id: adme_menu_commun.fonct.php,v 1.28 2007-10-24 14:43:02 ddelon Exp $
/**
* Application de gestion des menus communs
*
38,7 → 38,7
*@author David Delon <david.delon@clapas.net>
*@author Laurent COUDOUNEAU <lc@gsite.org>
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.27 $ $Date: 2006-10-16 15:49:07 $
*@version $Revision: 1.28 $ $Date: 2007-10-24 14:43:02 $
// +------------------------------------------------------------------------------------------------------+
*/
 
281,7 → 281,8
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE.'">'.
ADME_LG_ACTION_COMMUN_TRADUIRE_ALT.
'</a>&nbsp;'."\n";
}
}
else {
if ($menu_traduction_defaut==$adme_menu_id) {
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'.
658,9 → 659,6
}
$id = 'gm_application_arguments';
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255);
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_APPLI_ARGUMENT.'</label>';
1550,6 → 1548,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.27 2006-10-16 15:49:07 ddelon
* Refactorisation code mulitlinguisme et gestion menu invisibles
*
* Revision 1.26 2006/10/06 13:38:45 florian
* ergonomie amélioree
*
/trunk/papyrus/applications/admin_menu/admin_menu.php
32,7 → 32,7
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
// termes.
// ----
// CVS : $Id: admin_menu.php,v 1.27 2007-07-04 14:59:13 florian Exp $
// CVS : $Id: admin_menu.php,v 1.28 2007-10-24 14:43:01 ddelon Exp $
/**
* Application gérant les menus de Papyrus
*
46,7 → 46,7
*@author Alexandre GRANIER <alexandre@tela-botanica.org>
*@author Laurent COUDOUNEAU <lc@gsite.org>
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.27 $ $Date: 2007-07-04 14:59:13 $
*@version $Revision: 1.28 $ $Date: 2007-10-24 14:43:01 $
// +------------------------------------------------------------------------------------------------------+
*/
 
144,7 → 144,6
exit;
}
// Formulaire de mise à jour du menu
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_MODIFIER) {
274,6 → 273,28
}
// Restreindre le menu a la langue selectionne
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_LIMITER) {
$message = ADME_limiterMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'],$_GET['zone']);
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id'],$_GET['zone']);
header("Location: ".str_replace('&amp;', '&', $copie_objet_pear_url->getUrl()));
exit;
}
 
// Ouvrir le menu suite a une restriction
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_OUVRIR) {
$message = ADME_ouvrirMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id']);
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']);
header("Location: ".str_replace('&amp;', '&', $copie_objet_pear_url->getUrl()));
exit;
}
//---------------------------------------------------------------------------------------------------------------
// GESTION DES MENUS COMMUNS
479,6 → 500,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.27 2007-07-04 14:59:13 florian
* correction bug maj non prise en charge
*
* Revision 1.26 2007/04/19 15:34:35 neiluj
* préparration release (livraison) "Narmer" - v0.25
*