//Autres auteurs : *@author Alexandre GRANIER *@author Laurent COUDOUNEAU *@copyright Tela-Botanica 2000-2004 *@version $Revision: 1.32 $ $Date: 2007-10-23 13:45:33 $ // +------------------------------------------------------------------------------------------------------+ */ // +------------------------------------------------------------------------------------------------------+ // | ENTÊTE du PROGRAMME | // +------------------------------------------------------------------------------------------------------+ /** Inclusion de l'objet PEAR servant à négocier le language avec le navigateur client. */ require_once PAP_CHEMIN_API_PEAR.'HTTP.php'; /** Inclusion de la classe PEAR gérant les URL : Utilisé pour l'url demandée par le client.*/ require_once PAP_CHEMIN_API_PEAR.'Net/URL.php'; /** Inclusion de la bibliothèque de fonctions servant à l'initialisation des variables globales de Papyrus. */ require_once GEN_CHEMIN_BIBLIO.'pap_initialisation.fonct.php'; /** Inclusion de la classe Papyrus gérant les URL : Utilisé pour l'url demandée par le client.*/ require_once GEN_CHEMIN_BIBLIO_CLASSE.'pap_url.class.php'; /** Inclusion de la bibliothèque de fonctions servant au menu pour la réecriture d'url. */ require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php'; // +------------------------------------------------------------------------------------------------------+ // | CORPS du PROGRAMME | // +------------------------------------------------------------------------------------------------------+ // Recherche de la présence de la valeur d'i18n dans l'url if ( (isset($_GET[GEN_URL_CLE_I18N])) && (!empty($_GET[GEN_URL_CLE_I18N])) ) { $_GEN_commun['i18n'] = $_GET[GEN_URL_CLE_I18N]; } else { $_GEN_commun['i18n'] = GEN_I18N_ID_DEFAUT; } // +------------------------------------------------------------------------------------------------------+ // Gestion de la réecriture d'url et des url erreur 404 if ((defined('PAP_URL_REECRITURE') AND PAP_URL_REECRITURE == '1' && (! isset($_GET[GEN_URL_CLE_SITE]) || empty($_GET[GEN_URL_CLE_SITE])) && (! isset($_GET[GEN_URL_CLE_MENU]) || empty($_GET[GEN_URL_CLE_MENU]))) ) { $tab_type_reecriture = array('MENU', 'SITE'); foreach ($tab_type_reecriture as $reecriture) { if (PAP_URL_REECRITURE_SEP == '/') { $masque_reecriture = '/^(\/.*?)'.constant('PAP_URL_REECRITURE_'.$reecriture).'\\'.PAP_URL_REECRITURE_SEP.'([^?]+?)(?:\?(.*)|)$/'; } else { $masque_reecriture = '/^(\/.*?)'.constant('PAP_URL_REECRITURE_'.$reecriture).PAP_URL_REECRITURE_SEP.'([^?]+?)(?:\?(.*)|)$/'; } if (preg_match($masque_reecriture, rawurldecode($_SERVER['REQUEST_URI']), $tab_raccourci)) { $chemin_vers_papyrus = $tab_raccourci[1]; $raccourci = $tab_raccourci[2]; $parametres = ''; if (isset($tab_raccourci[3])) { $parametres = $tab_raccourci[3]; } if ($reecriture == 'SITE') { /** Inclusion de la bibliothèque de fonctions servant au site pour la réecriture d'url. */ require_once GEN_CHEMIN_BIBLIO.'pap_site.fonct.php'; } // Nous cherchons à savoir si le raccourci est entièrement numérique ou pas. if (preg_match('/^[0-9]+$/', $raccourci)) { // Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') { if ($reecriture == 'SITE') { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeAlpha', $db, $raccourci, $_GEN_commun['i18n']); } else { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeAlpha', $db, $raccourci); } } else { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci; } } else { // Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci; } else { if ($reecriture == 'SITE') { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeNum', $db, $raccourci, $_GEN_commun['i18n']); } else { $_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeNum', $db, $raccourci); } } } } } } // +------------------------------------------------------------------------------------------------------+ // Gestion des sites : disponibles sur le serveur courant. // Liste des catégories de site à prendre en compte : // Pas de site, ni de menu dans l'URL, recherche du site par défaut $site_liste_id = '102, 103';// 102 = site "principal" et 103 = site "externe" if ( (! isset($_GET[GEN_URL_CLE_SITE]) || empty($_GET[GEN_URL_CLE_SITE])) && (! isset($_GET[GEN_URL_CLE_MENU]) || empty($_GET[GEN_URL_CLE_MENU])) ) { $requete = 'SELECT gen_site.*, GSR02.* '. 'FROM gen_site, gen_site_relation AS GSR01, gen_site_relation AS GSR02 '. 'WHERE GSR01.gsr_id_site_01 = GSR01.gsr_id_site_02 '. 'AND GSR01.gsr_id_valeur = 101 '.// 101 = site défaut 'AND GSR01.gsr_id_site_01 = gs_id_site '. 'AND GSR02.gsr_id_site_01 = GSR02.gsr_id_site_02 '. 'AND GSR02.gsr_id_valeur IN ('.$site_liste_id.') '. 'AND GSR02.gsr_id_site_01 = gs_id_site'; $resultat = $db->query($requete); if (DB::isError($resultat)) { die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); } // Aucun site trouvé if ($resultat->numRows() == 0) { // Appel à l'application Installateur si nécessaire /**
Inclusion du programme Installateur de Papyrus. * L'abscence de site oblige à relancer l'installation et le script sql qui régénérera la base de données.*/ include_once GEN_CHEMIN_APPLICATION.'installateur/installateur.php'; $_GEN_commun['sortie'] = afficherContenuCorps(); include_once GEN_CHEMIN_PAP.'pap_envoi.inc.php'; // Fin du programme Papyrus. exit(0); } // Nous avons trouvé un site. $_GEN_commun['info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); if (GEN_URL_ID_TYPE_SITE == 'int') { $_GEN_commun['url_site'] = $_GEN_commun['info_site']->gs_code_num; } else { $_GEN_commun['url_site'] = $_GEN_commun['info_site']->gs_code_alpha; } // Le code du menu est présent dans l'url mais pas celui du site } else if ( (! isset($_GET[GEN_URL_CLE_SITE]) || empty($_GET[GEN_URL_CLE_SITE])) && (isset($_GET[GEN_URL_CLE_MENU]) || !empty($_GET[GEN_URL_CLE_MENU])) ) { // Nous récupérons les infos du menu et du sites dans la variable globale de Papyrus. $_GEN_commun['url_menu'] = $_GET[GEN_URL_CLE_MENU]; // Récupération des informations sur le menu demandé $requete = 'SELECT * '. 'FROM gen_menu '. 'WHERE '; $requete .= (GEN_URL_ID_TYPE_MENU == 'int') ? 'gm_code_num = '.$_GEN_commun['url_menu'] : 'gm_code_alpha = "'.$_GEN_commun['url_menu'].'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); if ($_GEN_commun['info_menu']->gm_ce_site != 0) { // Récupération des infos du site $requete = 'SELECT * '. 'FROM gen_site, gen_site_relation '. 'WHERE gsr_id_site_01 = gsr_id_site_02 '. 'AND gsr_id_valeur IN ('.$site_liste_id.') '. 'AND gsr_id_site_01 = gs_id_site '. 'AND gs_id_site = '. $_GEN_commun['info_menu']->gm_ce_site; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $_GEN_commun['url_site'] = (GEN_URL_ID_TYPE_SITE == 'int') ? $_GEN_commun['info_site']->gs_code_num : $_GEN_commun['info_site']->gs_code_alpha; $resultat->free(); } else { // Récupération des infos du site $requete = 'SELECT * '. 'FROM gen_site, gen_site_relation '. 'WHERE gsr_id_site_01 = gsr_id_site_02 '. 'AND gsr_id_valeur = 101 '. 'AND gsr_id_site_01 = gs_id_site '; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $_GEN_commun['url_site'] = (GEN_URL_ID_TYPE_SITE == 'int') ? $_GEN_commun['info_site']->gs_code_num : $_GEN_commun['info_site']->gs_code_alpha; $resultat->free(); } } else { // Récupération de la valeur identifiant le site depuis l'url $_GEN_commun['url_site'] = $_GET[GEN_URL_CLE_SITE]; // Récupération des informations sur le site // ATTENTION : pour fonctionner le site par dans la langue par défaut doit avoir une relation : id_site id_site id_valeur=1 $requete = 'SELECT * '. 'FROM gen_site, gen_site_relation '. 'WHERE gsr_id_site_01 = gsr_id_site_02 '. 'AND gsr_id_valeur IN ('.$site_liste_id.') '. 'AND gsr_id_site_01 = gs_id_site '. 'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '. 'AND '; $requete .= (GEN_URL_ID_TYPE_SITE == 'int') ? 'gs_code_num = "'.$_GEN_commun['url_site'].'" ' : 'gs_code_alpha = "'.$_GEN_commun['url_site'].'" '; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); } //Gestion de l'erreur aucun site trouvable. if (! isset($_GEN_commun['info_site'])) { // Appel à l'application Installateur si nécessaire /**
Inclusion du programme Installateur de Papyrus. * L'abscence de site oblige à relancer l'installation et le script sql qui régénérera la base de données.*/ include_once GEN_CHEMIN_APPLICATION.'installateur/installateur.php'; $_GEN_commun['sortie'] .= afficherContenuCorps(); include_once GEN_CHEMIN_PAP.'pap_envoi.inc.php'; // Fin du programme Papyrus. exit(0); } else if ($_GEN_commun['info_site']->gsr_id_valeur == 103) { // Gestion de la redirection pour les sites "externes" header('Location:'.$_GEN_commun['info_site']->gs_url); exit(0); } // Nous récupérons des informations sur l'internationalisation $requete = 'SELECT * '. 'FROM gen_i18n '. 'WHERE gi_id_i18n = "'.$_GEN_commun['i18n'].'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_i18n'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); // Récupération des informations sur la langue $requete = 'SELECT * '. 'FROM gen_i18n_langue '. 'WHERE gil_id_langue = "'.$_GEN_commun['info_i18n']->gi_ce_langue.'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_i18n_langue'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); // Récupération des informations sur le pays $requete = 'SELECT * '. 'FROM gen_i18n_pays '. 'WHERE gip_id_pays = "'.$_GEN_commun['info_i18n']->gi_ce_pays.'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_i18n_pays'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); // +------------------------------------------------------------------------------------------------------+ // Gestion des menus // // Nous vérifions le cas où le code du menu est introuvable dans l'url. if ( (! isset($_GET[GEN_URL_CLE_MENU])) || (empty($_GET[GEN_URL_CLE_MENU])) ) { // Recherche du premier menu du site courant: $requete = 'SELECT gen_menu.* '. 'FROM gen_menu, gen_menu_relation '. 'WHERE gm_ce_site = '.$_GEN_commun['info_site']->gs_id_site.' '. 'AND gmr_id_menu_01 = gm_id_menu '. 'AND gmr_id_menu_01 = gmr_id_menu_02 '. 'AND gmr_id_valeur = 101 ';// 101 = menu par "defaut" $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; // Nous avons trouvé un menu "défaut" pour le site courant. $_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); if (isset($_GEN_commun['url_menu'])) { // Stockage du code du menu demandée dans la variable globale de Papyrus. if (GEN_URL_ID_TYPE_MENU == 'int') { $_GEN_commun['url_menu'] = $_GEN_commun['info_menu']->gm_code_num; } else { $_GEN_commun['url_menu'] = $_GEN_commun['info_menu']->gm_code_alpha; } } } else if (! isset($_GET['url_menu']) && empty($_GEN_commun['url_menu'])) { // Le code du menu est présent dans l'url et il n'a pas encore été récupéré // Nous le récupérons dans la variable globale de Papyrus. $_GEN_commun['url_menu'] = $_GET[GEN_URL_CLE_MENU]; // Récupération des informations sur le menu demandé $requete = 'SELECT * '. 'FROM gen_menu '. 'WHERE '; $requete .= (GEN_URL_ID_TYPE_MENU == 'int') ? 'gm_code_num = '.$_GEN_commun['url_menu'] : 'gm_code_alpha = "'.$_GEN_commun['url_menu'].'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); } // +------------------------------------------------------------------------------------------------------+ // Gestion des traductions // Si le résultat de la négociation de l'internationalisation donne une langue différente // de celle du site principal, nous récupérons les éventuelles valeurs traduite pour le site. $id_langue = $GLOBALS['_GEN_commun']['i18n']; if (isset($id_langue) && ($id_langue!='')) { $langue_test=$id_langue; } else { $langue_test=GEN_I18N_ID_DEFAUT; } if ($langue_test!=GEN_I18N_ID_DEFAUT) { // Récupération des informations sur la traduction du site $requete = 'SELECT * '. 'FROM gen_site '. 'WHERE gs_ce_i18n = "'.$langue_test.'" '. 'AND gs_code_num = "'.$_GEN_commun['info_site']->gs_code_num.'"'; // 'WHERE gs_ce_i18n = "'.$_GEN_commun['i18n'].'" '. // 'AND gs_code_alpha = "'.$_GEN_commun['info_site']->gs_code_alpha.'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; // Nous créons l'entrée 'traduction_info_site' dans _GEN_commun que si nous avons bien trouvé une // traduction pour le site. Il faut donc tester l'existence de cette entrée avant de l'utiliser. if ($resultat->numRows() > 0) { $_GEN_commun['traduction_info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); } $resultat->free(); } // Si le résultat de la négociation de l'internationalisation donne une langue différente // de celle du menu, nous récupérons les éventuelles valeurs traduite pour le menu. //print_r($_GEN_commun); if (isset($_GEN_commun['info_menu'])) { // Evite les warning si pas encore de menu cree pour ce site if ($langue_test!=GEN_I18N_ID_DEFAUT) { // Récupération des informations sur la traduction du menu $requete = 'SELECT * '. 'FROM gen_menu '. 'WHERE gm_ce_i18n = "'.$langue_test.'" '. 'AND gm_code_num = "'.$_GEN_commun['info_menu']->gm_code_num.'"'; // 'WHERE gm_ce_i18n = "'.$_GEN_commun['i18n'].'" '. // 'AND gm_code_alpha = "'.$_GEN_commun['info_menu']->gm_code_alpha.'"'; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; // Nous créons l'entrée 'traduction_info_menu' dans _GEN_commun que si nous avons bien trouvé une // traduction pour le menu. Il faut donc tester l'existence de cette entrée avant de l'utiliser. if ($resultat->numRows() > 0) { $_GEN_commun['traduction_info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); } $resultat->free(); } } // +------------------------------------------------------------------------------------------------------+ // Gestion de l'application du menu demandé. // Recherche de la première application liée if (isset($_GEN_commun['info_menu']->gm_id_menu)) { $info_appli_menu = GEN_donnerIdPremiereApplicationLiee($_GEN_commun['info_menu']->gm_id_menu); if (is_array($info_appli_menu)) { $id_application = $info_appli_menu['gm_ce_application']; $id_menu_actif = $info_appli_menu['gm_id_menu']; // Si le menu n'a pas d'application lié, on recalcule l'objet $_GEN_commun['info_menu'] if ($id_menu_actif != $_GEN_commun['info_menu']->gm_id_menu) { $requete = 'SELECT gen_menu.* '. 'FROM gen_menu '. 'WHERE gm_id_menu = '.$id_menu_actif; $resultat = $db->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; // Nous avons trouvé un menu "défaut" pour le site courant. $_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT); $resultat->free(); } // Recherche des informations sur l'application liée $requete_applicaton = 'SELECT * '. 'FROM gen_application '. 'WHERE gap_id_application = '.$id_application; $resultat_applicaton = $db->query($requete_applicaton); (DB::isError($resultat_applicaton)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_applicaton->getMessage(), $requete_applicaton)) : ''; $_GEN_commun['info_application'] = $resultat_applicaton->fetchRow(DB_FETCHMODE_OBJECT) ; $resultat_applicaton->free(); } else { // Gestion des erreurs sur la recherche de l'application liée. // Finalement il a été décidé de ne pas afficher cette information sous la forme d'erreur. //trigger_error('application du menu demandée introuvable', E_USER_NOTICE); } } // +------------------------------------------------------------------------------------------------------+ // Gestion des arguments de l'application if (isset($_GEN_commun['info_menu']->gm_application_arguments)) { $arguments = explode(' ', $_GEN_commun['info_menu']->gm_application_arguments); // Initialisaton de la variable globale $GS_ARGUMENTS $_GEN_commun['info_application']->cache = false; $_GEN_commun['info_application']->cache_duree = 0; for ($i = 0; $i < count($arguments); $i++) { $attr = explode('=', $arguments[$i]); if ($attr[0] == 'cache_duree') { $_GEN_commun['info_application']->cache_duree = $attr[1]; if ($_GEN_commun['info_application']->cache_duree > 0) { $_GEN_commun['info_application']->cache = true; } } else if ($attr[0] != '') { $_GEN_commun['info_application']->$attr[0] = (isset($attr[1]) ? $attr[1] : ''); } } } // +------------------------------------------------------------------------------------------------------+ // Gestion des applettes $requete = 'SELECT * '. 'FROM gen_application '. 'WHERE gap_bool_applette = 1 '; $resultat = $_GEN_commun['pear_db']->query($requete); (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; $_GEN_commun['info_applette'] = array(); $i = 0; while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { $_GEN_commun['info_applette'][$i] = $ligne; $i++; } $resultat->free(); // +------------------------------------------------------------------------------------------------------+ // Gestion de l'objet URL $_GEN_commun['url'] = & new Pap_URL(PAP_URL); if (isset($_GEN_commun['info_menu'])) { $_GEN_commun['url']->setId($_GEN_commun['info_menu']->gm_id_menu); } if ( (isset($_GEN_commun['url_site'])) && (!empty($_GEN_commun['url_site'])) ) { $_GEN_commun['url']->addQueryString(GEN_URL_CLE_SITE, $_GEN_commun['url_site']); } if ( (isset($_GEN_commun['url_menu'])) && (!empty($_GEN_commun['url_menu'])) ) { $_GEN_commun['url']->addQueryString(GEN_URL_CLE_MENU, $_GEN_commun['url_menu']); } if ( (isset($_GET[GEN_URL_CLE_DATE])) && (!empty($_GET[GEN_URL_CLE_DATE])) ) { $_GEN_commun['url_date'] = $_GET[GEN_URL_CLE_DATE]; $_GEN_commun['url']->addQueryString(GEN_URL_CLE_DATE, $_GEN_commun['url_date']); } if ( (isset($_GET[GEN_URL_CLE_FORMAT])) && (!empty($_GET[GEN_URL_CLE_FORMAT])) ) { $_GEN_commun['url_format'] = $_GET[GEN_URL_CLE_FORMAT]; $_GEN_commun['url']->addQueryString(GEN_URL_CLE_FORMAT, $_GEN_commun['url_format']); } /* +--Fin du code ---------------------------------------------------------------------------------------+ * $Log: not supported by cvs2svn $ * Revision 1.31 2007-04-19 16:54:52 ddelon * backport mulitlinguisme * * Revision 1.30 2007/04/19 15:34:35 neiluj * préparration release (livraison) "Narmer" - v0.25 * * Revision 1.29 2007/04/13 09:41:09 neiluj * réparration cvs * * Revision 1.28 2006/12/01 15:41:21 ddelon * erreur affichage * * Revision 1.27 2006/11/07 18:43:54 jp_milcent * Modification des expressions régulières des permaliens. * * Revision 1.26 2006/10/18 10:18:05 jp_milcent * Gestion des erreurs HTTP par Papyrus. * * Revision 1.25 2006/10/11 18:04:11 jp_milcent * Gestion avancée de la réecriture d'URL. * * Revision 1.24 2006/03/02 10:49:49 ddelon * Fusion branche multilinguisme dans branche principale * * Revision 1.23.2.2 2005/12/20 14:40:24 ddelon * Fusion Head vers Livraison * * Revision 1.23.2.1 2005/12/01 23:31:57 ddelon * Merge Head vers multilinguisme * * Revision 1.23 2005/09/22 14:02:49 ddelon * nettoyage annuaire et php5 * * Revision 1.22 2005/09/20 17:01:22 ddelon * php5 et bugs divers * * Revision 1.21 2005/08/31 17:34:52 ddelon * Integrateur Wikini et administration des Wikini * * Revision 1.20 2005/06/24 10:48:35 jpm * Modification des chemins des fichiers pour fonctionnement avec API Pear locale. * * Revision 1.19 2005/04/14 13:52:37 jpm * Utilisation de la classe Pap_URL. * * Revision 1.18 2005/02/28 11:20:42 jpm * Modification des auteurs. * * Revision 1.17 2005/02/23 15:35:04 jpm * L'erreur "pas d'application" a été supprimé une message dans le corps du texte fourni déjà cette information. * * Revision 1.16 2005/02/17 17:51:40 florian * Correction bug monde sans menu ni appli * * Revision 1.15 2004/12/06 12:12:28 jpm * Début de gestion des auth multiples. * * Revision 1.14 2004/11/15 17:14:09 jpm * Gestion des url avec seulement le code d'un menu. * * Revision 1.13 2004/11/03 17:14:38 jpm * Gestion des sites externes. * * Revision 1.12 2004/10/26 18:42:21 jpm * Gestion des sites externes. * * Revision 1.11 2004/10/25 16:28:47 jpm * Ajout de nouvelles balises Papyrus, ajout vérification mise à jour de Papyrus, meilleure gestion des sessions... * * Revision 1.10 2004/10/22 17:23:59 jpm * Début amélioration de la gestion des erreurs et de l'installation. * * Revision 1.9 2004/10/15 18:29:19 jpm * Modif pour gérer l'appli installateur de Papyrus. * * Revision 1.8 2004/09/23 14:30:53 jpm * Correction bogue sur les menus. * * Revision 1.7 2004/09/23 10:46:46 jpm * Amélioration de la gestion du menu actif quand un menu n'a pas d'application liée. * * Revision 1.6 2004/09/10 16:38:34 jpm * Ajout de l'initialisation d'une variable stockant les infos de débogage. * * Revision 1.5 2004/06/30 07:35:16 jpm * Correction d'un bogue du à une mauvaise gestion de la résolution des conflits entre fichier CVS. * * Revision 1.4 2004/06/30 07:25:37 jpm * Ajout d'un commentaire. * * Revision 1.3 2004/06/18 15:52:45 alex * Actualisation de la variable $_GEN_commun['info_menu'] lorsque un menu n'a pas d'application lié * * Revision 1.2 2004/06/17 07:03:01 jpm * Correction d'un bogue concernant l'internationalisation par défaut quand la langue du navigateur ne correspond pas à celle du site. * * Revision 1.1 2004/06/16 08:13:20 jpm * Changement de nom de Papyrus en Papyrus. * Changement de l'arborescence. * * Revision 1.24 2004/05/05 14:33:37 jpm * Gestion de l'indication de langue dans l'url. * Utile que si on veut forcer la langue. * * Revision 1.23 2004/05/05 10:42:35 jpm * Amélioration de la gestion de l'internationalisation. * * Revision 1.22 2004/05/04 16:17:05 jpm * Légère amélioration du code (libération de ressource). * * Revision 1.21 2004/05/03 11:21:58 jpm * Fin de la gestion des applettes et suppression de l'info_menu_hierarchie de _GEN_commun. * * Revision 1.20 2004/04/30 16:17:27 jpm * Ajout de la récupération d'une info sur la hiérarchie. * Surement à supprimer car inutile. * * Revision 1.19 2004/04/28 12:04:31 jpm * Changement du modèle de la base de données. * * Revision 1.18 2004/04/22 08:28:12 jpm * Transformation de $GS_GLOBAL en $_GEN_commun. * * Revision 1.17 2004/04/09 16:43:32 jpm * Suppression d'un blanc. * * Revision 1.16 2004/04/09 16:20:11 jpm * Récupération de la création de l'objet URL. * Gestion des tables i18n. * * Revision 1.15 2004/04/05 16:37:43 jpm * Utilisation de la classe Pear HTTP pour la négociation du langage à utiliser pour le site. * * Revision 1.14 2004/04/02 16:29:30 jpm * Déplacement dans le fichier gen_initialisation_pear.inc.php de la création des objets Pear Net_URL et Auth. * * Revision 1.13 2004/04/01 11:27:13 jpm * Ajout et modification de commentaires pour PhpDocumentor. * * Revision 1.12 2004/03/31 16:50:04 jpm * Prise en compte du nouveau modèle de Papyrus révision 1.9. * * Revision 1.11 2004/03/27 11:04:14 jpm * Déplacement des fonctions de gestion d'erreur dans la bibliotheque de l'application Installateur. * Modification des commentaires vis à vis du nouveau modèle. * Changement et simplification des noms des variables globales. * Suppression de l'attribution d'une configuration par défaut. * Remplacement de variable par des constante provenant du fichier de configuration. * Traduction en français de certaines variables et partie de code. * * Revision 1.10 2004/03/24 07:20:03 jpm * Mise en forme requête sql. * * Revision 1.9 2004/03/23 17:06:56 jpm * Ajout de commentaire dans l'entête. * Mise en conformité avec la convention de codage. * * Revision 1.8 2004/03/23 16:31:54 jpm * Ajout du code provenant de gen_noyau.inc.php. * Ajout, formatage et traduction des commentaires. * * Revision 1.7 2004/03/22 18:35:32 jpm * Traduction et ajout de commentaires. * Amélioration de la conformité avec la convention de codage. * Changement requête sql pour le nouveau modèle de Papyrus. * * Revision 1.6 2004/03/22 11:14:30 jpm * Ajout de commentaires et mise en forme. * Correction des requêtes sql pour mise en conformité avec le nouveau modèle de Papyrus et la convention de codage. * * Revision 1.5 2003/12/16 16:57:59 alex * mise à jour pour compatibilité avec genesia * * Revision 1.4 2003/11/24 16:05:02 jpm * Ajout de commentaires et début de mise en conformité * avec la convention de codage. * * * +--Fin du code ----------------------------------------------------------------------------------------+ */ ?>