/branches/livraison_aha/papyrus/langues/pap_langue_fr.inc.php |
---|
New file |
0,0 → 1,68 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: pap_langue_fr.inc.php,v 1.1 2004-10-21 18:16:50 jpm Exp $ |
/** |
* Traduction de Papyrus |
* |
* Traduction française. |
* |
*@package Papyrus |
*@subpackage Traduction |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1 $ $Date: 2004-10-21 18:16:50 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CONSTANTE DE LANGUES | |
// +------------------------------------------------------------------------------------------------------+ |
// Débogage : |
/** Texte d'entête du message d'une erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_TETE', 'ERREUR Papyrus : '); |
/** Texte de pied du message d'une erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_PIED', '.'); |
/** Texte du niveau d'erreur d'un message d'erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_NIVEAU', 'Niveau d\'erreur : '); |
/** Texte précédent le nom du fichier d'un message d'erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_FICHIER', 'Nom du fichier : '); |
/** Texte précédent le n° de la ligne d'un message d'erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_LIGNE', 'N° de ligne : '); |
/** Texte précédent le contexte d'un message d'erreur (txt ou XHTML).*/ |
define('PAP_LANG_DEBOG_CONTEXTE', 'Contexte d\'erreur : '); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/langues/pap_langue_fr-FR.inc.php |
---|
New file |
0,0 → 1,64 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: pap_langue_fr-FR.inc.php,v 1.1 2004-10-21 18:16:50 jpm Exp $ |
/** |
* Traduction de Papyrus |
* |
* Traduction française-France. |
* |
*@package Papyrus |
*@subpackage Traduction |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1 $ $Date: 2004-10-21 18:16:50 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CONSTANTE DE LANGUES | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion de la traduction principale pour la langue française de Papyrus.*/ |
require_once GEN_CHEMIN_LANGUE.'pap_langue_fr.inc.php'; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/pap_envoi.inc.php |
---|
New file |
0,0 → 1,102 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_envoi.inc.php,v 1.11 2007-06-25 15:44:32 jp_milcent Exp $ |
/** |
* Gestion de l'envoie des pages à afficher. |
* |
* Ce fichier envoi les données en les compressant si possible. |
* |
*@package Papyrus |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.11 $ $Date: 2007-06-25 15:44:32 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
function pap_compress_sortie($output) { |
return gzencode($output); |
} |
// Nous vérifions si le navigateur supporte la compression, HTTP_ACCEPT_ENCODING |
if (strstr ($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip') && function_exists('gzencode') ) { |
// Nous mettons en buffer la sortie et nous demandons l'appel de la fonction de compression (voir ci-dessus) |
ob_start ('pap_compress_sortie'); |
// Nous prévenons le navigateur que le contenu est compressé avec gzip |
header ('Content-Encoding: gzip'); |
} |
echo($GLOBALS['_GEN_commun']['sortie']); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.10 2007-04-13 09:41:09 neiluj |
* réparration cvs |
* |
* Revision 1.9 2006/06/08 09:00:06 ddelon |
* Bug affichage wikini |
* |
* Revision 1.8 2006/05/10 16:02:49 ddelon |
* Finition multilinguise et schizo flo |
* |
* Revision 1.7 2006/01/12 16:37:01 ddelon |
* compression N**t*n |
* |
* Revision 1.6 2005/12/09 16:01:53 ddelon |
* retablissement compression |
* |
* Revision 1.5 2005/11/25 14:33:08 ddelon |
* desactivation compression |
* |
* Revision 1.4 2005/02/28 11:20:42 jpm |
* Modification des auteurs. |
* |
* Revision 1.3 2004/10/15 18:29:19 jpm |
* Modif pour gérer l'appli installateur de Papyrus. |
* |
* Revision 1.2 2004/06/16 15:07:56 jpm |
* Correction d'un chemin et nom de fichier. |
* |
* Revision 1.1 2004/06/16 08:11:37 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.3 2004/04/28 12:04:31 jpm |
* Changement du modèle de la base de données. |
* |
* Revision 1.2 2004/04/22 08:31:43 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.1 2004/04/09 16:19:23 jpm |
* Ajout du fichier indépendant d'envoi avec gestion des tables i18n. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/pap_verification.inc.php |
---|
New file |
0,0 → 1,137 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_verification.inc.php,v 1.9 2007-04-13 09:41:09 neiluj Exp $ |
/** |
* Réalisation de la vérification des besoins de Papyrus. |
* |
* Ce fichier vérifie la présence de certaines extensions nécessaires à Papyrus. |
* |
*@package Papyrus |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.9 $ $Date: 2007-04-13 09:41:09 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// Initialisation des variables globales de gestion d'erreur et de l'installation: |
$_GEN_commun['erreur_instal_afaire'] = false; |
// +------------------------------------------------------------------------------------------------------+ |
// Gestion des fichiers de configuration et de l'installation |
$chemin_fichier_config_defaut = 'papyrus/configuration/pap_config.inc.php'; |
/** Inclusion du fichier de configuration avancée |
** Ajout du fichier de configuration avancée de de Papyrus contenant les chemins des fichiers.*/ |
include_once 'configuration/pap_config_avancee.inc.php'; |
// Gestion du fichier de config par défaut permettant de savoir si l'installation a été faite ou pas |
if (file_exists($chemin_fichier_config_defaut)) { |
/** Inclusion du fichier de configuration de base contenant la connexion à la base de donnée de Papyrus.*/ |
include_once $chemin_fichier_config_defaut; |
// Nous vérifions que nous avons pas à faire à une mise à jour de Papyrus |
if (GEN_VERSION != PAP_VERSION) { |
$_GEN_commun['erreur_instal_afaire'] = true; |
} |
// Initialisation de la variable stockant les infos de débogage. |
if (GEN_DEBOGAGE) { |
$_GEN_commun['debogage_info'] = ''; |
} |
// Niveau d'erreur pour le code PHP de Papyrus |
// Inutile car shunté par set_error_handler du gestionnaire d'erreur |
error_reporting(GEN_DEBOGAGE_NIVEAU); |
} else { |
$_GEN_commun['erreur_instal_afaire'] = true; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.8 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.7 2006/03/15 09:30:50 florian |
* suppression des echos, qui entrainaient des problemes d'affichages |
* |
* Revision 1.6 2005/09/20 17:01:22 ddelon |
* php5 et bugs divers |
* |
* Revision 1.5 2005/02/28 11:20:42 jpm |
* Modification des auteurs. |
* |
* Revision 1.4 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.3 2004/10/22 17:23:59 jpm |
* Début amélioration de la gestion des erreurs et de l'installation. |
* |
* Revision 1.2 2004/10/15 18:29:19 jpm |
* Modif pour gérer l'appli installateur de Papyrus. |
* |
* Revision 1.1 2004/06/16 08:14:23 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.7 2004/05/10 12:24:24 jpm |
* Configuration de la gestion des niveaux d'erreur. |
* |
* Revision 1.6 2004/04/28 12:04:31 jpm |
* Changement du modèle de la base de données. |
* |
* Revision 1.5 2004/04/23 09:24:47 jpm |
* Suppression recherche ip et port. |
* |
* Revision 1.4 2004/04/22 08:23:47 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.3 2004/04/09 16:21:23 jpm |
* Extraction de la gestion de la connexion à la BdD transféré dans genesia.php. |
* |
* Revision 1.2 2004/04/08 14:13:02 jpm |
* Suppression de code inutile et renomage de fonctions. |
* |
* Revision 1.1 2004/04/08 12:29:00 jpm |
* Ajout du code réalisant les vérification nécessaires au fonctionnement de Génésia. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/inclure/langues/incl_langue_fr.inc.php |
---|
New file |
0,0 → 1,89 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: incl_langue_fr.inc.php,v 1.4 2007-08-28 14:23:55 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Inclure |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.4 $ $Date: 2007-08-28 14:23:55 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand un problème a été rencontré lors de l'inclusion.*/ |
define('CATEG_LG_ERREUR_INCLUSION', "Applette INCLURE : problème lors de la tentative d'inclusion de la page : %s"); |
/** Texte affiché quand un problème a été rencontré pour la détermination de l'encodage.*/ |
define('CATEG_LG_ERREUR_ENCODAGE', "Applette INCLURE : problème lors de la recherche de l'encodage de la page à inclure : %s"); |
/** Texte affiché quand un site n'a pas été indexé.*/ |
define('CATEG_LG_ERREUR_SITE', "Applette INCLURE : le site interwiki '%s' n'est pas référencé dans le fichier de configuration avancé de Papyrus."); |
/** Texte affiché quand le paramètre "interwiki" est abscent.*/ |
define('CATEG_LG_ERREUR_INTERWIKI', "Applette INCLURE : le paramètre 'interwiki' est obligatoire dans '%s' !"); |
/** Texte affiché quand le paramètre "page" est abscent.*/ |
define('CATEG_LG_ERREUR_PAGE', "Applette INCLURE : le paramètre 'page' est obligatoire dans '%s' !"); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2007-08-28 14:14:13 jp_milcent |
* Correction de bogues empéchant l'affichage. |
* |
* Revision 1.2 2006-12-08 15:57:30 jp_milcent |
* Amélioration de la gestion du débogage de l'applette inclure. |
* |
* Revision 1.1 2006/12/01 17:36:28 florian |
* Ajout de l'apllette Inclure, provenant de l'action Inclure. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/inclure/squelettes/incl_liste.tpl.html |
---|
New file |
0,0 → 1,12 |
<!-- INCLURE - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php endif; ?> |
<?=$sortie;?> |
<!-- INCLURE - FIN --> |
/branches/livraison_aha/papyrus/applettes/inclure/configuration/incl_configuration.inc.php |
---|
New file |
0,0 → 1,97 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: incl_configuration.inc.php,v 1.2 2006-12-08 15:57:30 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Inclure |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.2 $ $Date: 2006-12-08 15:57:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_INCLURE_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Variable contenant les sites pouvant être inclus.*/ |
$GLOBALS['_INCLURE_']['site'] = $GLOBALS['_PAPYRUS_']['inclure_sites']; |
/** Variable contenant l'encodage de la page courrante de Papyrus.*/ |
$GLOBALS['_INCLURE_']['encodage'] = $GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres']; |
/** Constante stockant la valeur de la langue par défaut pour l'applette INCL.*/ |
define('INCL_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('INCL_CHEMIN_BIBLIOTHEQUE_PEAR', PAP_CHEMIN_API_PEAR); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Inclure de Papyrus.*/ |
define('INCL_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'inclure'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Inclure de Papyrus.*/ |
define('INCL_CHEMIN_LANGUE', INCL_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Inclure de Papyrus.*/ |
define('INCL_CHEMIN_BIBLIO', INCL_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Inclure de Papyrus.*/ |
define('INCL_CHEMIN_SQUELETTE', INCL_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('INCL_SQUELETTE_LISTE', 'incl_liste.tpl.html'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/12/01 17:36:28 florian |
* Ajout de l'apllette Inclure, provenant de l'action Inclure. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/inclure/inclure.php |
---|
New file |
0,0 → 1,177 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: inclure.php,v 1.4 2007-08-28 14:23:55 jp_milcent Exp $ |
/** |
* Applette : Inclure |
* |
* Retourne toutes les pages Papyrus appartenant à une catégorie donnée. |
* |
*@package Applette |
*@subpackage Inclure |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.4 $ $Date: 2007-08-28 14:23:55 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherInclure'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Ii]nclure(?:\s*(?:(page="[^"]+")|(interwiki="[^"]+")|))+\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
//Utilisation de la bibliothèque Papyrus pap_meta.fonct.php inclue par Papyrus |
//Utilisation de la bibliothèque PEAR NET_URL inclue par Papyrus |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'inclure'.GEN_SEP.'configuration'.GEN_SEP.'incl_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette CATEG de Papyrus |
if (file_exists(INCL_CHEMIN_LANGUE.'incl_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once INCL_CHEMIN_LANGUE.'incl_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once INCL_CHEMIN_LANGUE.'incl_langue_'.INCL_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherInclure() - Retourne la liste des pages d'une catégorie. |
* |
* Cette fonction retourne la liste des pages appartenant à une catégorie donnée. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string HTML la liste des listes de menus. |
*/ |
function afficherInclure($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_INCLURE_']['informations'] = array(); |
$GLOBALS['_INCLURE_']['erreurs'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
$tab_parametres = explode('=', $argument); |
if ($tab_parametres[0] != '' && $tab_parametres[1] != '') { |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
$ok = true; |
if (!isset($options['interwiki'])) { |
$GLOBALS['_INCLURE_']['erreurs'][] = sprintf(CATEG_LG_ERREUR_INTERWIKI, $tab_applette_arguments[0]); |
$ok = false; |
} else { |
if (!isset($GLOBALS['_INCLURE_']['site'][$options['interwiki']])) { |
$GLOBALS['_INCLURE_']['erreurs'][] = sprintf(CATEG_LG_ERREUR_SITE, $options['interwiki']); |
$ok = false; |
} |
} |
if (!isset($options['page'])) { |
$GLOBALS['_INCLURE_']['erreurs'][] = sprintf(CATEG_LG_ERREUR_PAGE, $tab_applette_arguments[0]); |
$ok = false; |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
$GLOBALS['_INCLURE_']['sortie'] = ''; |
if ($ok) { |
$href = $GLOBALS['_INCLURE_']['site'][$options['interwiki']]['url']; |
$href = sprintf($href, $options['page']); |
$contenu = file_get_contents($href); |
if ($contenu != false) { |
$tab_matches = ''; |
preg_match($GLOBALS['_INCLURE_']['site'][$options['interwiki']]['preg'], $contenu, $tab_matches); |
$tab_encodage = ''; |
if (preg_match('/charset=(.+)"/Ui', $contenu, $tab_encodage) || preg_match('/encoding="(.+)"/Ui', $contenu, $tab_encodage)) { |
if (preg_match('/^(?:iso-8859-1|iso-8859-15)$/i', $GLOBALS['_INCLURE_']['encodage']) && preg_match('/utf-8/i', $tab_encodage[1])) { |
$GLOBALS['_INCLURE_']['sortie'] = utf8_decode($tab_matches[1]); |
} else { |
$GLOBALS['_INCLURE_']['sortie'] = $tab_matches[1]; |
} |
} else { |
$GLOBALS['_INCLURE_']['informations'][] = sprintf(CATEG_LG_ERREUR_ENCODAGE, $href); |
} |
} else { |
$GLOBALS['_INCLURE_']['informations'][] = sprintf(CATEG_LG_ERREUR_INCLUSION, $href); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_INCLURE_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(INCL_CHEMIN_SQUELETTE.INCL_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2007-08-28 14:14:13 jp_milcent |
* Correction de bogues empéchant l'affichage. |
* |
* Revision 1.2 2006-12-08 15:57:30 jp_milcent |
* Amélioration de la gestion du débogage de l'applette inclure. |
* |
* Revision 1.1 2006/12/01 17:36:28 florian |
* Ajout de l'apllette Inclure, provenant de l'action Inclure. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/categorie/configuration/categ_configuration.inc.php |
---|
New file |
0,0 → 1,88 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: categ_configuration.inc.php,v 1.2 2006-12-07 18:16:45 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.2 $ $Date: 2006-12-07 18:16:45 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_CATEGORIE_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette CATEG.*/ |
define('CATEG_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Categorie de Papyrus.*/ |
define('CATEG_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'categorie'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Categorie de Papyrus.*/ |
define('CATEG_CHEMIN_LANGUE', CATEG_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Categorie de Papyrus.*/ |
define('CATEG_CHEMIN_BIBLIO', CATEG_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Categorie de Papyrus.*/ |
define('CATEG_CHEMIN_SQUELETTE', CATEG_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('CATEG_SQUELETTE_LISTE', 'categ_liste.tpl.html'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/12/01 16:34:50 florian |
* Ajout de l'apllette Categorie, provenant de l'action Categorie. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/categorie/categorie.php |
---|
New file |
0,0 → 1,239 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: categorie.php,v 1.5 2006-12-12 13:32:00 jp_milcent Exp $ |
/** |
* Applette : Catégorie |
* |
* Retourne toutes les pages Papyrus appartenant à une catégorie donnée. |
* |
*@package Applette |
*@subpackage Categorie |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.5 $ $Date: 2006-12-12 13:32:00 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherCategorie'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Cc]ategorie(?:\s*(?:(mots="[^"]+")|))+\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
//Utilisation de la bibliothèque Papyrus pap_meta.fonct.php inclue par Papyrus |
//Utilisation de la bibliothèque PEAR NET_URL inclue par Papyrus |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'categorie'.GEN_SEP.'configuration'.GEN_SEP.'categ_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette CATEG de Papyrus |
if (file_exists(CATEG_CHEMIN_LANGUE.'categ_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once CATEG_CHEMIN_LANGUE.'categ_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once CATEG_CHEMIN_LANGUE.'categ_langue_'.CATEG_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherCategorie() - Retourne la liste des pages d'une catégorie. |
* |
* Cette fonction retourne la liste des pages appartenant à une catégorie donnée. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string HTML la liste des listes de menus. |
*/ |
function afficherCategorie($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
$GLOBALS['_CATEGORIE_']['erreur'] = ''; |
if (!isset($options['mots'])) { |
$GLOBALS['_CATEGORIE_']['erreur'] = CATEG_LG_ERREUR_MOTS; |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
$tab_mots = explode(',', $options['mots']); |
for ($i = 0; $i < count($tab_mots); $i++) { |
// Suppression des espaces, tabulations... en début et fin de chaine |
$tab_mots[$i] = trim($tab_mots[$i]); |
} |
$aso_info_menu = GEN_lireInfoMenuCategorie($_GEN_commun['pear_db'], $tab_mots); |
if (count($aso_info_menu) == 0) { |
$GLOBALS['_CATEGORIE_']['information'] = sprintf(CATEG_LG_INFO_ZERO_PAGE, $options['mots']); |
} else { |
foreach ($aso_info_menu as $id_menu => $un_menu) { |
// Initialisation |
$aso_page = array(); |
$aso_page['url'] = '#'; |
$aso_page['auteur'] = CATEG_LG_INCONNU_AUTEUR; |
$aso_page['titre'] = CATEG_LG_INCONNU_TITRE; |
$aso_page['heure'] = ''; |
$aso_page['minute'] = ''; |
$aso_page['seconde'] = ''; |
$aso_page['jours'] = ''; |
$aso_page['mois'] = ''; |
$aso_page['annee'] = ''; |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($id_menu); |
$aso_page['url'] = $une_url->getURL(); |
// Affichage de l'auteur(s) |
if ($un_menu->gm_auteur != '') { |
$aso_page['auteur'] = $un_menu->gm_auteur; |
} |
// Affichage du titre |
if ($un_menu->gm_titre != '') { |
$aso_page['titre'] = $un_menu->gm_titre; |
} |
// Affichage de l'horaire de la création de la page |
if (($heure = date('G', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['heure'] = $heure; |
$minute = date('i', strtotime($un_menu->gm_date_creation)); |
$aso_page['minute'] = $minute; |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['seconde'] = $seconde; |
} |
} |
// Affichage de la date de la création de la page |
if (($jour = date('d', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['jour'] = $jour; |
} |
if (($mois = _traduireMois(date('m', strtotime($un_menu->gm_date_creation))) ) != '' ) { |
$aso_page['mois'] = $mois; |
} |
if (($annee = date('Y', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['annee'] = $annee; |
} |
$GLOBALS['_CATEGORIE_']['pages'][] = $aso_page; |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_CATEGORIE_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(CATEG_CHEMIN_SQUELETTE.CATEG_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE DES FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
if (!function_exists('_traduireMois')) { |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return CATEG_LG_MOIS_01; |
case '02' : |
return CATEG_LG_MOIS_02; |
case '03' : |
return CATEG_LG_MOIS_03; |
case '04' : |
return CATEG_LG_MOIS_04; |
case '05' : |
return CATEG_LG_MOIS_05; |
case '06' : |
return CATEG_LG_MOIS_06; |
case '07' : |
return CATEG_LG_MOIS_07; |
case '08' : |
return CATEG_LG_MOIS_08; |
case '09' : |
return CATEG_LG_MOIS_09; |
case '10' : |
return CATEG_LG_MOIS_10; |
case '11' : |
return CATEG_LG_MOIS_11; |
case '12' : |
return CATEG_LG_MOIS_12; |
default: |
return ''; |
} |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2006/12/08 20:10:41 jp_milcent |
* Amélioration de l'expression régulière. |
* |
* Revision 1.3 2006/12/07 18:16:21 jp_milcent |
* Gestion des squelettes. |
* |
* Revision 1.2 2006/12/01 17:37:46 florian |
* Amélioration de la gestion des arguments de l'applette dans l'expression régulière. |
* |
* Revision 1.1 2006/12/01 16:34:50 florian |
* Ajout de l'apllette Categorie, provenant de l'action Categorie. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/categorie/langues/categ_langue_fr.inc.php |
---|
New file |
0,0 → 1,108 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: categ_langue_fr.inc.php,v 1.3 2006-12-07 18:12:26 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Categorie |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.3 $ $Date: 2006-12-07 18:12:26 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand l'auteur est inconnu.*/ |
define('CATEG_LG_INCONNU_AUTEUR', 'Anonyme'); |
/** Texte affiché quand le titre est vide.*/ |
define('CATEG_LG_INCONNU_TITRE', 'Titre inconnu'); |
/** Texte affiché quand le paramètre "mots" est abscent.*/ |
define('CATEG_LG_ERREUR_MOTS', "Applette CATEGORIE : le paramètre 'mots' est obligatoire!"); |
/** Texte affiché quand on n'a pas de page à afficher'.*/ |
define('CATEG_LG_INFO_ZERO_PAGE', "Applette CATEGORIE : aucune page n'a été trouvé pour : %s !"); |
/** Mois de janvier.*/ |
define('CATEG_LG_MOIS_01', 'janvier'); |
/** Mois de février.*/ |
define('CATEG_LG_MOIS_02', 'février'); |
/** Mois de mars.*/ |
define('CATEG_LG_MOIS_03', 'mars'); |
/** Mois d'avril.*/ |
define('CATEG_LG_MOIS_04', 'avril'); |
/** Mois de mai.*/ |
define('CATEG_LG_MOIS_05', 'mai'); |
/** Mois de juin.*/ |
define('CATEG_LG_MOIS_06', 'juin'); |
/** Mois de juillet.*/ |
define('CATEG_LG_MOIS_07', 'juillet'); |
/** Mois d'août'.*/ |
define('CATEG_LG_MOIS_08', 'août'); |
/** Mois de septembre.*/ |
define('CATEG_LG_MOIS_09', 'septembre'); |
/** Mois d'octobre.*/ |
define('CATEG_LG_MOIS_10', 'octobre'); |
/** Mois de novembre.*/ |
define('CATEG_LG_MOIS_11', 'novembre'); |
/** Mois de décembre.*/ |
define('CATEG_LG_MOIS_12', 'décembre'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/12/07 17:51:48 jp_milcent |
* Ajout d'un fichier de langue. |
* |
* Revision 1.1 2006/12/01 16:34:50 florian |
* Ajout de l'apllette Categorie, provenant de l'action Categorie. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/categorie/squelettes/categ_liste.tpl.html |
---|
New file |
0,0 → 1,32 |
<!-- CATEGORIE - DEBUT --> |
<?php if ($erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php elseif ($information) : ?> |
<p class="zone_info"><?=$information;?></p> |
<?php else : ?> |
<ul class="page_liste"> |
<?php foreach ($pages as $page) : ?> |
<li> |
<span class="page_auteur"><?=$page['auteur'];?></span> |
<span class="page_separateur_auteur"> - </span> |
<a href="<?=$page['url'];?>"><span class="page_titre"><?=$page['titre'];?></span></a> |
<span class="page_separateur_titre"> - </span> |
<span class="page_creation_heure"><?=$page['heure'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_minute"><?=$page['minute'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_seconde"><?=$page['seconde'];?></span> |
<span class="page_separateur_date_heure"> - </span> |
<span class="page_creation_jour"><?=$page['jour'];?></span> |
<span class="page_creation_mois"><?=$page['mois'];?></span> |
<span class="page_creation_annee"><?=$page['annee'];?></span> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif; ?> |
<!-- CATEGORIE - FIN --> |
/branches/livraison_aha/papyrus/applettes/selecteur_sites/configuration/sesi_config.inc.php |
---|
New file |
0,0 → 1,72 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: sesi_config.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Configuration de l'applette Identification. |
* |
* Fichier de configuration de l'applette selection de site. |
* |
*@package Applette |
*@subpackage Selecteur |
//Auteur original : |
*@author David Delon <david.delon@clapas.net> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.2 $ $Date: 2006-03-02 10:49:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette IDEN.*/ |
define('SESI_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Identification de Papyrus.*/ |
define('SESI_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'selecteur_sites'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Identification de Papyrus.*/ |
define('SESI_CHEMIN_LANGUE', SESI_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Identification de Papyrus.*/ |
define('SESI_CHEMIN_BIBLIO', SESI_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2005/12/07 19:46:15 ddelon |
* Merge + navi sites |
* |
* Revision 1.1 2005/03/15 14:18:49 jpm |
* Ajout d'un fichier de config. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/selecteur_sites/selecteur_sites.php |
---|
New file |
0,0 → 1,356 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: selecteur_sites.php,v 1.12 2007-05-24 16:26:08 jp_milcent Exp $ |
/** |
* Applette : selecteur sites |
* |
* Génère un formulaire contenant un menu déroulant permettant de choisir un site parmis les disponibles. |
* Nécessite : |
* - Constantes et globales de Papyrus. |
* - Base de données de Papyrus |
* - Pear Net_URL |
* - Pear DB |
* - API Débogage 1.0 |
* Le nom de l'applette est "SELECTEUR_SITES" pour afficher un formulaire HTML et "SELECTEUR_SITES_XHTML" |
* pour afficher un formulaire XHTML strict. |
* |
*@package Applette |
*@subpackage Selecteur_sites |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.12 $ $Date: 2007-05-24 16:26:08 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherSelecteurSite'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'(SELECTEUR_SITES_?(XHTML)?_?(SANS_(?:\d+_?)+)?) -->'; |
/** Inclusion du fichier de configuration de cette applette.*/ |
require_once GEN_CHEMIN_APPLETTE.'selecteur_sites'.GEN_SEP.'configuration'.GEN_SEP.'sesi_config.inc.php'; |
// Inclusion des fichiers de traduction de l'applette. |
if (file_exists(SESI_CHEMIN_LANGUE.'sesi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once SESI_CHEMIN_LANGUE.'sesi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once SESI_CHEMIN_LANGUE.'sesi_langue_'.SESI_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonnction GEN_afficherContenuApplette() - Fournit un formulaire de sélection des sites. |
* |
* Renvoie un formulaire permettant de passer de site en site pour une langue donnée. |
* Le formulaire affiche les noms des sites en fonctions de la langue passée dans l'url. |
* Necessite l'utilisation de Pear Net_URL par le programme appelant cette fonction. |
* |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction. |
* @param array tableau global de Papyrus. |
* @return string formulaire XHTML contenant les sites disponibles. |
*/ |
function afficherSelecteurSite($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation de variable de configuration. |
$liste_type_site = '102, 103';// Les id des types des sites pouvant apparaître dans le sélecteur |
$objet_pear_db = $_GEN_commun['pear_db'];//objet Pear créé par DB contenant la connexion à la base de données. |
$code_site = $_GEN_commun['url_site'];//identifiant du site courant. |
$id_langue = $_GEN_commun['i18n'];//identifiant de la langue choisie |
$url_base = PAP_URL; |
$url_cle_site = GEN_URL_CLE_SITE; |
$url_cle_i18n = GEN_URL_CLE_I18N; |
$url_id_type_site = GEN_URL_ID_TYPE_SITE; |
$indent_origine = 12;// Indentation de départ en nombre d'espace |
$indent_pas = 4;// Pas d'indentation en nombre d'espace |
// Récupérations des arguments passés dans la balise. |
// Nous vérifions si on veut du XHTML strict ou pas |
$bln_xhtml_strict = 0; |
if (isset($tab_applette_arguments[2]) && $tab_applette_arguments[2] == 'XHTML') { |
$bln_xhtml_strict = 1; |
} |
// Nous vérifions s'il y a des sites que nous ne voulons pas afficher: |
$morceau_requete_id_suppr = ''; |
$tab_id_suppr_groupe = ''; |
if (isset($tab_applette_arguments[3]) && ereg('SANS_(.+)', $tab_applette_arguments[3], $tab_id_suppr_groupe)) { |
if (preg_match('/^\d+$/', $tab_id_suppr_groupe[1])) { |
$liste_id_suppr = $tab_id_suppr_groupe[1]; |
} else if (preg_match('/^\d+(?:_\d+)+$/', $tab_id_suppr_groupe[1])) { |
$liste_id_suppr = preg_replace('/_/', ', ', $tab_id_suppr_groupe[1]); |
} else { |
$liste_id_suppr = '0'; |
} |
$morceau_requete_id_suppr = 'AND gs_id_site NOT IN ('.$liste_id_suppr.') '; |
} |
// Recherche de tous les sites langue en cours |
// On recherche l'ensemble des site en excluant le site admin ? (administration de Papyrus). |
if (isset($id_langue) && ($id_langue != '')) { |
$langue_test = $id_langue; |
} else { |
$langue_test = GEN_I18N_ID_DEFAUT; |
} |
$requete = 'SELECT gs_id_site, gs_code_num, gs_code_alpha, gs_nom, gs_ce_i18n '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur IN ('.$liste_type_site.') '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
$morceau_requete_id_suppr.// Liste des sites ne devant pas figurer |
'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe" |
$resultat = $objet_pear_db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$liste_site = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
// Si le site trouvé est une traduction vers la langue principale, on ne le selectionne pas |
if ($langue_test == GEN_I18N_ID_DEFAUT) { |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne['gs_id_site'].' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $objet_pear_db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
$liste_site[] = $ligne; |
} |
} |
else { |
$liste_site[] = $ligne; |
} |
} |
$resultat->free(); |
// Si la langue en cours n'est pas la langue par défaut, recherche des sites ayant comme langue |
// la langue par defaut et non traduits dans la langue en cours. |
// On recherche l'ensemble des site en excluant le site admin (administration de Papyrus). |
if ($langue_test != GEN_I18N_ID_DEFAUT) { |
// Site ayant commme langue, la langue par defaut |
$requete = 'SELECT gs_id_site, gs_code_num, gs_code_alpha, gs_nom, gs_ce_i18n '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur IN ('.$liste_type_site.') '. |
'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '. |
$morceau_requete_id_suppr.// Liste des sites ne devant pas figurer |
'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe" |
$resultat = $objet_pear_db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Est il traduit ? Non, alors affichage |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
if (isset($id_langue) && ($id_langue != '')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne['gs_id_site'].' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $objet_pear_db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
$requete_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation, gen_site '. |
'WHERE '.$ligne['gs_id_site'].' = gsr_id_site_01 ' . |
'AND gsr_id_site_02 = gs_id_site '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_traduction = $objet_pear_db->query($requete_traduction); |
(DB::isError($resultat_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
if ( $resultat_traduction->numRows() == 0 ) { |
$liste_site[] = $ligne; |
} |
$resultat_traduction->free(); |
} |
} |
$resultat->free(); |
} |
if (count($liste_site) == 0 ) { |
$retour = str_repeat(' ', $indent_origine + ($indent_pas * 0)). |
'<!-- '.SESI_LG_ETIQUETTE_VALIDER.' -->'; |
} else { |
// Préparation de l'url de retour du formulaire |
$objet_pear_url = & new Pap_URL($url_base); |
$objet_pear_url->setPermalienBool(false); |
// Préparation du code du sites |
$champs_code_site = ($url_id_type_site == 'int') ? 'gs_code_num' : 'gs_code_alpha'; |
// Préparation du formulaire |
$retour = str_repeat(' ', $indent_origine + ($indent_pas * 0)). |
'<form id="sesi_selecteur" '; |
// Test sur XHTML strict |
if ($bln_xhtml_strict == 0) { |
$retour .= 'name="sesi_selecteur" '; |
} |
$retour .= 'action="'.$objet_pear_url->getURL().'" method="get">'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 1)). |
'<fieldset>'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 2)). |
'<legend>'.SESI_LG_LEGENDE.'</legend>'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 2)). |
'<select id="sesi_'.$url_cle_site.'" name="'.$url_cle_site.'" onchange="javascript:this.form.submit();">'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 3)). |
'<option value="'.$code_site.'" selected="selected">'.SESI_LG_DEFAUT.'</option>'."\n"; |
foreach ($liste_site as $ligne ) { |
// Initialisation des variables |
$nom = $ligne['gs_nom']; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 3)). |
'<option value="'.$ligne[$champs_code_site].'">'.$nom.'</option>'."\n"; |
} |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 2)). |
'</select>'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 2)). |
'<input id="sesi_ok" name="sesi_ok" type="submit" value="'.SESI_LG__VALIDER.'"/>'."\n"; |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 1)). |
'</fieldset>'."\n"; |
if ($langue_test != GEN_I18N_ID_DEFAUT) { |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 1)). |
'<input name="'.$url_cle_i18n.'" type="hidden" value="'.$id_langue.'"/>'."\n"; |
} |
$retour .= str_repeat(' ', $indent_origine + ($indent_pas * 0)). |
'</form>'."\n"; |
} |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.11 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.10 2006/10/11 17:20:19 jp_milcent |
* Formatage du code. |
* |
* Revision 1.9 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.8 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.7.2.4 2006/02/28 14:02:07 ddelon |
* Finition multilinguisme |
* |
* Revision 1.7.2.3 2006/01/19 21:26:20 ddelon |
* Multilinguisme site + bug ftp |
* |
* Revision 1.7.2.2 2005/12/20 14:40:24 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.7.2.1 2005/12/07 19:46:14 ddelon |
* Merge + navi sites |
* |
* Revision 1.7 2005/05/25 12:53:00 jpm |
* Changement et ajout d'attributs id. |
* |
* Revision 1.6 2005/05/23 09:31:43 jpm |
* Ajout d'une majuscule à un txt. |
* |
* Revision 1.5 2004/10/26 18:42:02 jpm |
* Possibilité d'externaliser l'applette. |
* Gestion des sites externes. |
* |
* Revision 1.4 2004/09/15 09:32:01 jpm |
* Mise en conformité avec le standard XHTML Strict. |
* |
* Revision 1.3 2004/07/06 17:07:16 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.2 2004/06/21 07:37:50 alex |
* Modification d'un label |
* |
* Revision 1.1 2004/06/15 15:05:47 jpm |
* Changement de nom et d'arborescence de Genesia en Papyrus. |
* |
* Revision 1.5 2004/05/05 08:27:12 jpm |
* Ajout du paramétrage de l'indentation et l'utilisation de variable pour contenir les textes de l'appli. |
* |
* Revision 1.4 2004/05/05 06:44:28 jpm |
* Complément des commentaires indiquant les paquetages nécessaire à l'applette. |
* |
* Revision 1.3 2004/05/03 11:19:10 jpm |
* Intégration de la variable globale de Génésia dans les arguments de la fonction de l'applette. |
* |
* Revision 1.2 2004/05/01 16:13:11 jpm |
* Ajout du nom de la balise de l'applette dans le code de l'applette. |
* |
* Revision 1.1 2004/05/01 10:30:59 jpm |
* Ajout de l'applette selecteur de sites. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/selecteur_sites/langues/sesi_langue_en.inc.php |
---|
New file |
0,0 → 1,84 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: sesi_langue_en.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Traduction de l'applette selecteur de site : fr |
* |
* Fichier de traduction de l'applette Identification en français. |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.2 $ $Date: 2006-03-02 10:49:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Legende de l'applette */ |
define('SESI_LG_LEGENDE', 'Site selection'); |
/** Message du texte par defaut */ |
define('SESI_LG_DEFAUT', 'Site selection'); |
/** Texte du bouton valider.*/ |
define('SESI_LG__VALIDER', 'ok'); |
/** Texte message erreur */ |
define('SESI_LG_ETIQUETTE_VALIDER', 'Only one site available'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2005/12/07 19:46:14 ddelon |
* Merge + navi sites |
* |
* Revision 1.5 2005/06/09 17:06:28 jpm |
* Ajout de constantes de langue. |
* |
* Revision 1.4 2005/06/02 11:56:00 jpm |
* Modification de l'affichage de l'identification. |
* |
* Revision 1.3 2005/04/14 16:37:27 jpm |
* Ajout de la gestion de la modification de son inscription. |
* |
* Revision 1.2 2005/03/25 14:41:04 jpm |
* Modification et ajout de constantes. |
* |
* Revision 1.1 2005/03/15 14:19:32 jpm |
* Ajout d'un fichier de traduction. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/selecteur_sites/langues/sesi_langue_fr.inc.php |
---|
New file |
0,0 → 1,87 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: sesi_langue_fr.inc.php,v 1.3 2006-11-27 13:52:26 florian Exp $ |
/** |
* Traduction de l'applette selecteur de site : fr |
* |
* Fichier de traduction de l'applette Identification en français. |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.3 $ $Date: 2006-11-27 13:52:26 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Legende de l'applette */ |
define('SESI_LG_LEGENDE', 'Sélecteur de monde'); |
/** Message du texte par defaut */ |
define('SESI_LG_DEFAUT', 'changer de site'); |
/** Texte du bouton valider.*/ |
define('SESI_LG__VALIDER', 'ok'); |
/** Texte message erreur */ |
define('SESI_LG_ETIQUETTE_VALIDER', 'Un seul site disponible dans Papyrus.'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.1.2.1 2005/12/07 19:46:14 ddelon |
* Merge + navi sites |
* |
* Revision 1.5 2005/06/09 17:06:28 jpm |
* Ajout de constantes de langue. |
* |
* Revision 1.4 2005/06/02 11:56:00 jpm |
* Modification de l'affichage de l'identification. |
* |
* Revision 1.3 2005/04/14 16:37:27 jpm |
* Ajout de la gestion de la modification de son inscription. |
* |
* Revision 1.2 2005/03/25 14:41:04 jpm |
* Modification et ajout de constantes. |
* |
* Revision 1.1 2005/03/15 14:19:32 jpm |
* Ajout d'un fichier de traduction. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/configuration/more_config_spip.inc.php |
---|
New file |
0,0 → 1,66 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id$ |
/** |
* Fichier de configuration de la recherche dans Spip. |
* |
* Permet de définir certains paramètres valables pour toutes l'applette MORE. |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision$ $Date$ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_MOTEUR_RECHERCHE_']['spip'] = array(); |
// Information pour un premier site Spip... |
//$GLOBALS['_MOTEUR_RECHERCHE_']['spip'][0] = |
// array( 'bdd_dsn' => 'mysql://nom_utilisateur:mot_de_passe@localhost/nom_base_de_donnees', |
// 'table_prefixe' => '', |
// 'url' => 'url_de_base_du_spip'); |
// Information pour un deuxième site Spip... |
//$GLOBALS['_MOTEUR_RECHERCHE_']['spip'][1] = |
// array( 'bdd_dsn' => 'mysql://nom_utilisateur:mot_de_passe@localhost/nom_base_de_donnees', |
// 'table_prefixe' => '', |
// 'url' => 'url_de_base_du_spip'); |
// Ainsi de suite... |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log$ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/configuration/more_configuration.inc.php |
---|
New file |
0,0 → 1,105 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: more_configuration.inc.php,v 1.5 2006-11-14 16:08:12 jp_milcent Exp $ |
/** |
* Fichier de configuration général de l'applette Moteur_Recherche. |
* |
* Permet de définir certains paramètres valables pour toutes l'applette MORE. |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.5 $ $Date: 2006-11-14 16:08:12 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette MORE.*/ |
define('MORE_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
/** Constante stockant la valeur de la langue par défaut pour l'applette MORE.*/ |
define('MORE_MODE', 1);// 1 : recherche de chaque mot du motif; 2: recherche du motif complet |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('MORE_CHEMIN_BIBLIOTHEQUE_PEAR', PAP_CHEMIN_API_PEAR); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Moteur de Recherche de Papyrus.*/ |
define('MORE_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'moteur_recherche'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Moteur de Recherche de Papyrus.*/ |
define('MORE_CHEMIN_LANGUE', MORE_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Moteur de Recherche de Papyrus.*/ |
define('MORE_CHEMIN_BIBLIO', MORE_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Moteur de Recherche de Papyrus.*/ |
define('MORE_CHEMIN_SQUELETTE', MORE_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du formulaire de recherche |
/** Nom du fichier de squelette à utiliser pour le formulaire du moteur de recherche.*/ |
define('MORE_FORM_SQUELETTE', 'formulaire.tpl.html'); |
/** Valeur de départ des tabulations pour le formulaire de recherche.*/ |
define('MORE_FORM_MOTIF_TAB', 100); |
/** Taille de la zone de saisie de texte du formulaire de recherche.*/ |
define('MORE_FORM_MOTIF_SIZE', 20); |
/** Nombre de caractères maximum pouvant être saisis dans la zone de texte du formulaire de recherche.*/ |
define('MORE_FORM_MOTIF_MAXLENGTH', 100); |
// Configuration des résultats d'une recherche |
/** Nom du fichier de squelette à utiliser pour les résultats du moteur de recherche.*/ |
define('MORE_RESULTAT_SQUELETTE', 'resultat_gg.tpl.html'); |
/** Taille du champ description en nombre de caractères.*/ |
define('MORE_RESULTAT_TAILLE_DESCRIPTION', 200); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2006/10/17 09:22:02 jp_milcent |
* Utilisation par défaut du mode de recherche 1. |
* |
* Revision 1.3 2006/10/10 12:02:30 jp_milcent |
* Suppression d'une bibliothèque Pear qu'il est inutile d'inclure. |
* Ajout du chemin vers la bibliotheque Pear de Papyrus. |
* |
* Revision 1.2 2006/05/23 14:18:19 jp_milcent |
* Ajout de la gestion du mode de recherche au moteur de recherche de Papyrus. |
* Soit on recherche chaque mot du motif, soit le motif entier. |
* |
* Revision 1.1 2004/12/07 10:24:12 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/moteur_recherche.php |
---|
New file |
0,0 → 1,290 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: moteur_recherche.php,v 1.21 2007-10-29 18:29:30 jp_milcent Exp $ |
/** |
* Applette : moteur de recherche |
* |
* Génère un formulaire contenant une zone de saisie permettant de taper un texte à rechercher sur l'ensemble |
* des sites gérés par Papyrus. |
* Utilisation des bibliothèques inclue par Papyrus : |
* - Papyrus pap_meta.fonct.php |
* - PEAR NET_URL |
* |
*@package Applette |
*@subpackage Moteur_recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.21 $ $Date: 2007-10-29 18:29:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherMoteurRecherche'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '(?:<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'(MOTEUR_RECHERCHE) -->|'. |
'\{\{[[Mm]oteurRecherche\s*\}\})'; |
// -------------------------------------------------------------------------------------------------------- |
//Utilisation de la bibliothèque Papyrus pap_meta.fonct.php inclue par Papyrus |
//Utilisation de la bibliothèque PEAR NET_URL inclue par Papyrus |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'moteur_recherche/configuration/more_configuration.inc.php'; |
/** Inclusion du fichier de configuration des Spip.*/ |
require_once GEN_CHEMIN_APPLETTE.'moteur_recherche/configuration/more_config_spip.inc.php'; |
// Inclusion des fichiers de traduction de l'appli ADME de Papyrus |
if (file_exists(MORE_CHEMIN_LANGUE.'more_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once MORE_CHEMIN_LANGUE.'more_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once MORE_CHEMIN_LANGUE.'more_langue_'.MORE_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
if (isset($_POST['more_motif']) && $_POST['more_motif'] != '') { |
// Initialisation de variable extérieures |
$GLOBALS['_VEI_']['usurpation'] = MORE_LG_USURPATION.htmlentities(stripslashes($_POST['more_motif'])); |
$GLOBALS['_PAPYRUS_']['general']['application_chemin'] = null; |
// Modification des meta de l'entête de la page |
GEN_modifierMetaHttpEquiv('Content-Type', 'text/html; charset=ISO-8859-15'); |
GEN_modifierMetaHttpEquiv('Content-style-type', 'text/css'); |
GEN_modifierMetaHttpEquiv('Content-script-type', 'text/javascript'); |
GEN_modifierMetaHttpEquiv('Content-language', $GLOBALS['_GEN_commun']['i18n']); |
GEN_modifierMetaName('revisit-after', '15 days'); |
GEN_modifierMetaName('robots', 'index,follow'); |
GEN_modifierMetaName('author', 'Tela Botanica'); |
GEN_modifierMetaName('keywords', 'Recherche, résultat.'); |
GEN_modifierMetaName('description', 'Page de résultats du moteur de recherche de Papyrus.'); |
GEN_viderMeta('dc'); |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherMoteurRecherche() - Fournit un formulaire de recherche. |
* |
* Renvoie un formulaire permettant de rechercher une chaine de caractères dans les sites |
* gérés par Papyrus. |
* Necessite l'utilisation de Pear Net_URL par le programme appelant cette fonction. |
* |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction. |
* @param array tableau global de Papyrus. |
* @return string formulaire XHTML de recherche. |
*/ |
function afficherMoteurRecherche($tab_applette_arguments, $_GEN_commun) |
{ |
// -------------------------------------------------------------------------------------------------------- |
// Initialisation de variable de configuration. |
$liste_type_site = '102, 103';// Les id des types des sites pouvant apparaître dans le sélecteur |
$objet_pear_db =& $_GEN_commun['pear_db'];//objet Pear créé par DB contenant la connexion à la base de données. |
$GLOBALS['_MOTEUR_RECHERCHE_']['bd']['papyrus'] =& $_GEN_commun['pear_db'];// Connexion à la BD de Papyrus |
$GLOBALS['_MOTEUR_RECHERCHE_']['variables'] = array(); |
$code_site = $_GEN_commun['url_site'];// identifiant du site courant. |
$url = $_GEN_commun['url']; |
$url_id_type_site = GEN_URL_ID_TYPE_SITE; |
$indent_origine = 12;// Indentation de départ en nombre d'espace |
$indent_pas = 4;// Pas d'indentation en nombre d'espace |
$retour = ''; |
$retour_resultats = ''; |
// -------------------------------------------------------------------------------------------------------- |
// Lancement de la recherche si nécessaire |
$aso_squelette = array('formulaire' => MORE_FORM_SQUELETTE); |
$_SESSION['_MOTEUR_RECHERCHE_']['rechercher']['more_motif'] = ''; |
$GLOBALS['_MOTEUR_RECHERCHE_']['formulaire']['form_url'] = str_replace('&', '&', $url->getUrl()); |
$GLOBALS['_MOTEUR_RECHERCHE_']['formulaire']['form_tab'] = MORE_FORM_MOTIF_TAB; |
$GLOBALS['_MOTEUR_RECHERCHE_']['formulaire']['more_motif_base'] = MORE_LG_FORM_MOTIF_VALUE; |
if (!isset($_POST['more_motif']) || $_POST['more_motif'] == '') { |
$GLOBALS['_MOTEUR_RECHERCHE_']['formulaire']['more_motif'] = MORE_LG_FORM_MOTIF_VALUE; |
} else { |
// Ajout du squelette de résultat |
$aso_squelette['resultat'] = MORE_RESULTAT_SQUELETTE; |
// Titre de la page |
$GLOBALS['_PAPYRUS_']['rendu']['TITRE_PAGE'] = MORE_LG_TITRE.htmlentities(stripslashes($_POST['more_motif'])); |
$_SESSION['_MOTEUR_RECHERCHE_']['rechercher']['more_motif'] = $_POST['more_motif']; |
$GLOBALS['_MOTEUR_RECHERCHE_']['formulaire']['more_motif'] = htmlentities(stripslashes($_POST['more_motif'])); |
/** Inclusion de la classe Recherche.*/ |
require_once MORE_CHEMIN_BIBLIO.'more_recherche.class.php'; |
/** Inclusion de la classe Recherche_Papyrus_Menu.*/ |
require_once MORE_CHEMIN_BIBLIO.'more_recherche_papyrus_menu.class.php'; |
/** Inclusion de la classe Recherche_Spip_Article.*/ |
require_once MORE_CHEMIN_BIBLIO.'more_recherche_spip_article.class.php'; |
$moteur = new More_Recherche($_SESSION['_MOTEUR_RECHERCHE_']['rechercher']['more_motif']); |
$recherche_papyrus_menu = new More_Recherche_Papyrus_Menu($_SESSION['_MOTEUR_RECHERCHE_']['rechercher']['more_motif']); |
$recherche_spip_article = new More_Recherche_Spip_Article($_SESSION['_MOTEUR_RECHERCHE_']['rechercher']['more_motif']); |
$moteur->ajouterRecherche($recherche_papyrus_menu); |
$moteur->ajouterRecherche($recherche_spip_article); |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'] = $moteur->rechercherMotif(); |
//$GLOBALS['_DEBOGAGE_'] = '<pre>'.print_r($GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'], true).'</pre>'; |
$nbre_pages = count($GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats']); |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['nbre_pages'] = $nbre_pages; |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['vide'] = MORE_LG_RESULTAT_VIDE; |
if ($nbre_pages <= 1) { |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['titre'] = sprintf(MORE_LG_RESULTAT_TITRE, $nbre_pages); |
} else { |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['titre'] = sprintf(MORE_LG_RESULTAT_TITRE_PLURIEL, $nbre_pages); |
} |
foreach ($GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'] as $cle => $val) { |
if (empty($val['url'])) { |
unset($GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'][$cle]); |
} else { |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'][$cle]['score'] = trim($val['score']); |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'][$cle]['date_creation'] = trim($val['date_creation']); |
$GLOBALS['_MOTEUR_RECHERCHE_']['resultat']['resultats'][$cle]['description'] = trim($val['description']); |
} |
} |
} |
// Génération du contenu à partir des squelettes |
foreach ($aso_squelette as $squelette => $fichier) { |
// Extrait les variables et les ajoutes à l'espace de noms local |
extract($GLOBALS['_MOTEUR_RECHERCHE_'][$squelette]); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(MORE_CHEMIN_SQUELETTE.$fichier); |
// Récupérer le contenu du buffer |
$retour = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
// Retourne le contenu |
switch ($squelette) { |
case 'resultat' : |
// L'applette fournie un résultat qui écrase le contenu de la page courrante |
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_NAVIGATION'] = ''; |
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_TETE'] = ''; |
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_CORPS'] = $retour; |
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_PIED'] = ''; |
$GLOBALS['_GEN_commun']['info_menu'] = ''; |
break; |
case 'formulaire' : |
// L'applette est appelée par défaut |
$retour_formulaire = $retour; |
break; |
default: |
$e = "Squellette <$squelette> pour le moteur de recherche inconnu!"; |
trigger_error($e, E_USER_WARNING); |
} |
} |
return $retour_formulaire; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.20 2007-06-15 12:27:39 jp_milcent |
* Ajout de fonctionnalités Javascript au moteur de recherche. |
* |
* Revision 1.19 2007-01-02 18:49:22 jp_milcent |
* Amélioration de la gestion du motif. |
* Ajout de la gestion des expressions complête via l'utilisation de guillemets. |
* |
* Revision 1.18 2006/12/12 13:53:54 jp_milcent |
* Mise en place du nouveau format des balises d'applette. |
* |
* Revision 1.17 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.16 2006/11/20 09:36:59 jp_milcent |
* Correction bogue zéro résultat et ajout d'url simple pour indiquer la page de l'article. |
* |
* Revision 1.15 2006/11/14 16:10:13 jp_milcent |
* Extraction du XHTML et utilisation de squelettes à la place. |
* Possibilité de configurer le squlette voulu via le fichier de conf. |
* |
* Revision 1.14 2006/10/10 13:28:14 jp_milcent |
* Suppression d'une variable et utilisation de la constante PAP_URL |
* |
* Revision 1.13 2006/10/10 12:02:30 jp_milcent |
* Suppression d'une bibliothèque Pear qu'il est inutile d'inclure. |
* Ajout du chemin vers la bibliotheque Pear de Papyrus. |
* |
* Revision 1.12 2006/06/16 09:45:10 jp_milcent |
* Correction bogue lié à la suppression de l'objet info_menu. |
* |
* Revision 1.11 2006/05/23 13:39:13 florian |
* corection bug notice de jean pascal ;-) |
* |
* Revision 1.10 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* Revision 1.9 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.8 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.7.2.2 2005/12/27 15:56:00 ddelon |
* Fusion Head vers multilinguisme (wikini double clic) |
* |
* Revision 1.7.2.1 2005/12/20 14:40:25 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.7 2005/09/27 09:07:32 ddelon |
* size applette et squelettes |
* |
* Revision 1.6 2005/05/25 13:49:22 jpm |
* Corection erreur pour la recherche dans le contenu. |
* |
* Revision 1.5 2005/05/19 12:46:12 jpm |
* Correction bogue accesskey. |
* Ajout d'un id à la liste. |
* Arrondissement des score. |
* |
* Revision 1.4 2005/04/14 17:39:34 jpm |
* Amélioration du moteur de rechercher : |
* - pourcentage |
* - ajout d'info |
* |
* Revision 1.3 2005/02/22 19:27:21 jpm |
* Changement de nom de variables. |
* Suppression de l'attribut nam de la balise form via une méthode de HTML_Common. |
* |
* Revision 1.2 2005/02/22 17:44:03 jpm |
* Suppression de référence posant problème. |
* |
* Revision 1.1 2004/12/07 10:24:01 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/bibliotheque/more_recherche.class.php |
---|
New file |
0,0 → 1,272 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: more_recherche.class.php,v 1.12 2007-10-29 18:29:30 jp_milcent Exp $ |
/** |
* Classe permettant d'effectuer des recherches sur les métas informations des menus. |
* |
* Permet de rechercher et classer les menus en fonction d'une chaine. |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.12 $ $Date: 2007-10-29 18:29:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
class More_Recherche { |
var $motif = ''; |
var $moteurs_recherches = array(); |
var $resultats = array(); |
// Constructeur |
function More_Recherche($motif) { |
$this->setMotif($motif); |
} |
// Accesseurs |
function getMotif() { |
return $this->motif; |
} |
function setMotif($motif) { |
$this->motif = $motif; |
} |
function getMoteurs() { |
return $this->moteurs_recherches; |
} |
function getMoteur($id) { |
return $this->moteurs_recherches[$id]; |
} |
function setMoteur($val) { |
$id_nouveau = count($this->moteurs_recherches); |
$this->moteurs_recherches[$id_nouveau] = $val; |
} |
function getResultats() { |
return $this->resultats; |
} |
function setResultats($val) { |
$this->resultats = $val; |
} |
function setResultat($aso_page) { |
$id_nouveau = count($this->resultats); |
$this->resultats[$id_nouveau] = $aso_page; |
} |
// Méthodes |
function ajouterRecherche(&$objet_recherche) { |
return $this->setMoteur($objet_recherche); |
} |
function rechercherMotif() { |
foreach ($this->getMoteurs() as $cle => $val) { |
$this->setResultats(array_merge((array)$this->getResultats(),(array)$val->rechercherMotif($this->getMotif()))); |
} |
$aso_resultats = $this->getResultats(); |
function comparer($a, $b) { |
if ($a['poids'] > $b['poids']) { |
return -1; |
} |
if ($a['poids'] < $b['poids']) { |
return +1; |
} |
if ($a['poids'] = $b['poids']) { |
return 0; |
} |
} |
usort($aso_resultats, 'comparer'); |
$pds_max = 0; |
if (isset($aso_resultats[0]['poids'])) { |
$pds_max = $aso_resultats[0]['poids']; |
} |
for ($i = 0 ; $i < count($aso_resultats) ; $i++) { |
$aso_resultats[$i]['score'] = round((100 / $pds_max) * $aso_resultats[$i]['poids'], 1); |
} |
return $aso_resultats; |
} |
/** Renvoie le nombre d'occurences total de la présence de chaque mot. |
* |
* @param string le motif à rechercher. |
* @param string le texte dans lequel effectuer la recherche. |
* @return integer le nombre de fois où les mots sont trouvés. |
*/ |
function retournerOccurenceMotif($motif, &$texte, $mode = MORE_MODE) |
{ |
$nbre_correspondance = 0; |
$nbre_correspondance_total = 0; |
$motif = $this->traiterMotif($motif, 'simple'); |
// Si demande de recherche d'expression complète |
if (preg_match('/^".+"$/', $motif)) { |
$mode = 2; |
} |
$motif = $this->traiterMotif($motif, 'recherche'); |
switch ($mode) { |
case '1' : |
// Découpage en mot |
$tab_motif = explode(' ', $motif); |
break; |
case '2' : |
// La chaine saisie par l'utilisateur est recherchée tel quel |
$tab_motif[] = $motif; |
break; |
default: |
$e = 'Mode pour le moteur de recherche inconnu : '.$mode. |
trigger_error($e, E_USER_ERROR); |
} |
// Nous recherchons chaque mot |
$compteur_mot = 0; |
foreach ($tab_motif as $mot) { |
//$nbre_correspondance += preg_match_all('/'.$mot.'/i', $texte, $tab_morceaux); |
$nbre_correspondance = substr_count(strtolower($texte), strtolower($mot)); |
if ($nbre_correspondance > 0) { |
$compteur_mot++; |
} |
$nbre_correspondance_total += $nbre_correspondance; |
} |
// Si tous les mots recherchés sont présents nous renvoyons le poids de la page. |
if ($compteur_mot == count($tab_motif)) { |
return $nbre_correspondance_total; |
} else { |
return 0; |
} |
} |
function traiterMotif($motif, $type = 0) |
{ |
switch ($type) { |
case 'simple' : |
return trim(stripslashes($motif)); |
break; |
case 'recherche' : |
if (preg_match('/^"(.+)"$/', $motif, $match)) { |
$motif = $match[1]; |
} |
return $motif; |
break; |
case 'url' : |
$motif = trim(stripslashes($motif)); |
if (preg_match('/^"(.+)"$/', $motif, $match)) { |
$motif = $match[1]; |
} |
return urlencode($motif); |
break; |
default: |
return $motif; |
} |
} |
function traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return 'janvier'; |
case '02' : |
return 'février'; |
case '03' : |
return 'mars'; |
case '04' : |
return 'avril'; |
case '05' : |
return 'mai'; |
case '06' : |
return 'juin'; |
case '07' : |
return 'juillet'; |
case '08' : |
return 'août'; |
case '09' : |
return 'septembre'; |
case '10' : |
return 'octobre'; |
case '11' : |
return 'novembre'; |
case '12' : |
return 'décembre'; |
default: |
return ''; |
} |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.11 2007-01-02 18:49:22 jp_milcent |
* Amélioration de la gestion du motif. |
* Ajout de la gestion des expressions complête via l'utilisation de guillemets. |
* |
* Revision 1.10 2006/12/12 13:54:41 jp_milcent |
* Correction bogue : variable non initialisée. |
* |
* Revision 1.9 2006/10/17 09:21:40 jp_milcent |
* Mise en commun des spécifications de la recherche. |
* |
* Revision 1.8 2006/05/23 14:18:19 jp_milcent |
* Ajout de la gestion du mode de recherche au moteur de recherche de Papyrus. |
* Soit on recherche chaque mot du motif, soit le motif entier. |
* |
* Revision 1.7 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* Revision 1.6 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.5 2005/09/20 17:01:22 ddelon |
* php5 et bugs divers |
* |
* Revision 1.4 2005/05/25 13:49:22 jpm |
* Corection erreur pour la recherche dans le contenu. |
* |
* Revision 1.3 2005/05/19 12:46:12 jpm |
* Correction bogue accesskey. |
* Ajout d'un id à la liste. |
* Arrondissement des score. |
* |
* Revision 1.2 2005/04/14 17:39:34 jpm |
* Amélioration du moteur de rechercher : |
* - pourcentage |
* - ajout d'info |
* |
* Revision 1.1 2004/12/07 10:24:06 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/bibliotheque/more_recherche_papyrus_menu.class.php |
---|
New file |
0,0 → 1,196 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: more_recherche_papyrus_menu.class.php,v 1.13 2007-10-29 18:29:30 jp_milcent Exp $ |
/** |
* Classe permettant d'effectuer des recherches sur les informations des menus de Papyrus. |
* |
* Permet de rechercher et classer les menus en fonction d'une chaine. |
* Utilisation des bibliothèques inclue par Papyrus : |
* - Papyrus pap_meta.fonct.php |
* - Papyrus pap_menu.fonct.php |
* - Papyrus pap_url.class.php |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.13 $ $Date: 2007-10-29 18:29:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
///** Inclusion du fichier contenant les fonctions de manipulations des menus de Papyrus.*/ |
//require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
class More_Recherche_Papyrus_Menu extends More_Recherche{ |
// Constructeur |
function Recherche_Menu_Meta($motif) { |
$this->setMotif($motif); |
} |
// Accesseurs |
function getMotif() { |
return $this->motif; |
} |
function setMotif($motif) { |
$this->motif = $motif; |
} |
// Méthodes |
function rechercherMotif($motif) { |
$db = $GLOBALS['_MOTEUR_RECHERCHE_']['bd']['papyrus']; |
$tab_menus = GEN_retournerMenus($db); |
foreach ($tab_menus as $cle => $menu_id) { |
// Initialisation du tableau de résultat vide |
$aso_resultat = array( 'poids' => 0, 'url' => '', 'titre' => '', |
'hreflang' => '', 'accesskey' => '', 'title' => '', |
'date_creation' => '', 'description' => ''); |
// Récupération des infos du menu courant : transtypage pour éviter les erreur avec array_merge |
$aso_menu_info = (array) GEN_lireInfoMenu($db, $menu_id, DB_FETCHMODE_ASSOC); |
// Récupération du contenu du menu courant : transtypage pour éviter les erreur avec array_merge |
$aso_menu_contenu = (array) GEN_lireContenuMenu($db, $menu_id, DB_FETCHMODE_ASSOC); |
// Fusion des deux tableaux de champs à analyser |
$aso_menu = array_merge($aso_menu_info, $aso_menu_contenu); |
// Analyse du poids de cette page vis à vis des méta informations et du contenu |
$tab_champs_a_visiter = array( 'gm_nom', 'gm_titre', 'gm_titre_alternatif', 'gm_mots_cles', |
'gm_description_libre', 'gm_description_resume', 'gm_description_table_matieres', |
'gm_source', 'gm_auteur', 'gm_contributeur', 'gm_editeur', 'gm_categorie', |
'gm_public', 'gmc_contenu'); |
foreach ($tab_champs_a_visiter as $val) { |
// Vérification que le champ existe et contient quelque chose |
if (isset($aso_menu[$val]) && $aso_menu[$val] != '') { |
$aso_resultat['poids'] += $this->retournerOccurenceMotif($motif, $aso_menu[$val]); |
} |
} |
// Si le menu contient les mots recherchés nous poursuivons |
if ($aso_resultat['poids'] > 0) { |
// Création de l'url |
// TODO : utiliser comme pour spip un fichier de config spécifique pour virer PAP_URL d'ici |
$une_url =& new Pap_URL(PAP_URL); |
$une_url->setId($menu_id); |
$aso_resultat['url_simple'] = $une_url->getURL(); |
$une_url->addQueryString('var_recherche', $this->traiterMotif($motif, 'url'), true); |
$aso_resultat['url'] = $une_url->getURL(); |
$une_url->removeQueryString('var_recherche'); |
// Récupération du titre de la page |
if (trim($aso_menu_info['gm_nom']) != '') { |
$aso_resultat['titre'] = htmlentities($aso_menu_info['gm_nom']); |
} else if (trim($aso_menu_info['gm_titre']) != '') { |
$aso_resultat['titre'] = htmlentities($aso_menu_info['gm_titre']); |
} else if (trim($aso_menu_info['gm_titre_alternatif']) != '') { |
$aso_resultat['titre'] = htmlentities($aso_menu_info['gm_titre_alternatif']); |
} |
$aso_resultat['hreflang'] = htmlentities($aso_menu_info['gm_ce_i18n']); |
$raccourci_txt = ''; |
$aso_resultat['accesskey'] = htmlentities($aso_menu_info['gm_raccourci_clavier']); |
if ($aso_resultat['accesskey'] != '') { |
$raccourci_txt = MORE_LG_RESULTAT_CADRE_OUVRIR. |
MORE_LG_RESULTAT_RACCOURCI.$aso_resultat['accesskey'].' '. |
MORE_LG_RESULTAT_CADRE_FERMER.MORE_LG_RESULTAT_POINT.' '; |
} |
$aso_resultat['title'] = htmlentities($raccourci_txt.$aso_menu_info['gm_description_resume']); |
$aso_resultat['description'] = htmlentities($aso_menu_info['gm_description_libre']); |
if (($jour = date('d', strtotime($aso_menu_info['gm_date_creation'] )) ) != 0 ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_jour"> '.$jour.'</span>'."\n"; |
} |
if (($mois = $this->traduireMois(date('m', strtotime($aso_menu_info['gm_date_creation'] ))) ) != '' ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_mois"> '.$mois.'</span>'."\n"; |
} |
if (($annee = date('Y', strtotime($aso_menu_info['gm_date_creation'] )) ) != 0 ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_annee"> '.$annee.'</span>'."\n"; |
} |
$this->setResultat($aso_resultat); |
} |
} |
return $this->getResultats(); |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.12 2007-01-02 18:49:22 jp_milcent |
* Amélioration de la gestion du motif. |
* Ajout de la gestion des expressions complête via l'utilisation de guillemets. |
* |
* Revision 1.11 2006/11/21 18:52:20 jp_milcent |
* Ajout de la possibilité de surligner des mots. |
* |
* Revision 1.10 2006/11/20 09:36:59 jp_milcent |
* Correction bogue zéro résultat et ajout d'url simple pour indiquer la page de l'article. |
* |
* Revision 1.9 2006/10/17 09:21:40 jp_milcent |
* Mise en commun des spécifications de la recherche. |
* |
* Revision 1.8 2006/10/16 14:11:30 jp_milcent |
* Amélioration du moteur de recherche. |
* Utilisation de l'opérateur "et" entre les mots recherchés. |
* |
* Revision 1.7 2006/10/10 13:28:13 jp_milcent |
* Suppression d'une variable et utilisation de la constante PAP_URL |
* |
* Revision 1.6 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* Revision 1.5 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.4 2005/05/25 13:49:22 jpm |
* Corection erreur pour la recherche dans le contenu. |
* |
* Revision 1.3 2005/05/19 12:46:12 jpm |
* Correction bogue accesskey. |
* Ajout d'un id à la liste. |
* Arrondissement des score. |
* |
* Revision 1.2 2005/04/14 17:39:34 jpm |
* Amélioration du moteur de rechercher : |
* - pourcentage |
* - ajout d'info |
* |
* Revision 1.1 2004/12/07 10:24:06 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/bibliotheque/more_recherche_spip_article.class.php |
---|
New file |
0,0 → 1,273 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id$ |
/** |
* Classe permettant d'effectuer des recherches sur les informations des articles de Spip. |
* |
* Permet de rechercher et classer les articles en fonction d'une chaine. |
* Utilisation des bibliothèques inclue par Papyrus : |
* - Papyrus pap_meta.fonct.php |
* - Papyrus pap_menu.fonct.php |
* - Papyrus pap_url.class.php |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision$ $Date$ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
///** Inclusion du fichier contenant les fonctions de manipulations des menus de Papyrus.*/ |
//require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
class More_Recherche_Spip_Article extends More_Recherche { |
// Constructeur |
function Recherche_Menu_Meta($motif) { |
$this->setMotif($motif); |
} |
// Accesseurs |
function getMotif() { |
return $this->motif; |
} |
function setMotif($motif) { |
$this->motif = $motif; |
} |
// Méthodes |
function rechercherMotif($motif) { |
for ($i = 0; $i < count($GLOBALS['_MOTEUR_RECHERCHE_']['spip']); $i++ ) { |
$db = DB::connect($GLOBALS['_MOTEUR_RECHERCHE_']['spip'][$i]['bdd_dsn']); |
if (DB::isError($db)) { |
$msg_erreur_connection = 'Impossible de se connecter à la base de données Spip.'; |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $db->getMessage(), 'connexion à la base de données',$msg_erreur_connection)); |
} |
$prefixe = $GLOBALS['_MOTEUR_RECHERCHE_']['spip'][$i]['table_prefixe']; |
$url_base = $GLOBALS['_MOTEUR_RECHERCHE_']['spip'][$i]['url']; |
$tab_articles = $this->retournerArticles($db, $prefixe); |
foreach ($tab_articles as $article_id => $Article) { |
// Initialisation du tableau de résultat vide |
$aso_resultat = array( 'poids' => 0, 'url' => '', 'titre' => '', |
'hreflang' => '', 'accesskey' => '', 'title' => '', |
'date_creation' => '', 'description' => ''); |
// Analyse du poids de cette page vis à vis des données |
$tab_champs_a_visiter = array('surtitre', 'titre', 'soustitre', 'descriptif', 'chapo', 'texte', 'ps'); |
foreach ($tab_champs_a_visiter as $val) { |
// Vérification que le champ existe et contient quelque chose |
if (isset($Article->$val) && $Article->$val != '') { |
$aso_resultat['poids'] += $this->retournerOccurenceMotif($motif, $Article->$val); |
} |
} |
if ($aso_resultat['poids'] > 0) { |
// Création de l'url |
$aso_resultat['url_simple'] = $url_base.'article'.$article_id.'.html'; |
$aso_resultat['url'] = $aso_resultat['url_simple'].'?var_recherche='.$this->traiterMotif($motif, 'url'); |
// Récupération du titre de la page |
if (trim($Article->titre) != '') { |
$aso_resultat['titre'] = htmlentities($Article->titre); |
} else if (trim($Article->surtitre) != '') { |
$aso_resultat['titre'] = htmlentities($Article->surtitre); |
} else if (trim($Article->soustitre) != '') { |
$aso_resultat['titre'] = htmlentities($Article->soustitre); |
} |
$aso_resultat['hreflang'] = htmlentities($Article->lang); |
$aso_resultat['description'] = $this->couper($Article->texte, MORE_RESULTAT_TAILLE_DESCRIPTION); |
if (($jour = date('d', strtotime($Article->date)) ) != 0 ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_jour"> '.$jour.'</span>'."\n"; |
} |
if (($mois = $this->traduireMois(date('m', strtotime($Article->date))) ) != '' ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_mois"> '.$mois.'</span>'."\n"; |
} |
if (($annee = date('Y', strtotime($Article->date)) ) != 0 ) { |
$aso_resultat['date_creation'] .= '<span class="page_modification_annee"> '.$annee.'</span>'."\n"; |
} |
$this->setResultat($aso_resultat); |
} |
} |
} |
return $this->getResultats(); |
} |
/** Renvoie un tableau contenant les infos sur les articles |
* |
* @param mixed une instance de la classse Pear DB. |
* @param string le préfixe pour les tables spip. |
* @return array tableau contenant les articles. |
*/ |
function retournerArticles(&$db, $prefixe = '') |
{ |
//---------------------------------------------------------------------------- |
// Recherche des informations sur le menu |
$requete = 'SELECT * '. |
'FROM '.$prefixe.'spip_articles '. |
'WHERE statut = "publie"'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Récupération des infos |
$tab_retour = array(); |
while ($info_article = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$tab_retour[$info_article->id_article] = $info_article; |
} |
$resultat->free(); |
return $tab_retour; |
} |
// Fichier : inc_texte.php3 |
function couper($texte, $taille = 50) |
{ |
$texte = substr($texte, 0, 400 + 2*$taille); /* eviter de travailler sur 10ko pour extraire 150 caracteres */ |
// on utilise les \r pour passer entre les gouttes |
$texte = str_replace("\r\n", "\n", $texte); |
$texte = str_replace("\r", "\n", $texte); |
// sauts de ligne et paragraphes |
$texte = ereg_replace("\n\n+", "\r", $texte); |
$texte = ereg_replace("<(p|br)( [^>]*)?".">", "\r", $texte); |
// supprimer les traits, lignes etc |
$texte = ereg_replace("(^|\r|\n)(-[-#\*]*|_ )", "\r", $texte); |
// supprimer les tags |
$texte = $this->supprimer_tags($texte); |
$texte = trim(str_replace("\n"," ", $texte)); |
$texte .= "\n"; // marquer la fin |
// travailler en accents charset |
// On supprime dans Papyrus car cela tire trop de fonctions... |
//$texte = $this->filtrer_entites($texte); |
// supprimer les liens |
$texte = ereg_replace("\[->([^]]*)\]","\\1", $texte); // liens sans texte |
$texte = ereg_replace("\[([^\[]*)->([^]]*)\]","\\1", $texte); |
// supprimer les notes |
$texte = ereg_replace("\[\[([^]]|\][^]])*\]\]", "", $texte); |
// supprimer les codes typos |
$texte = ereg_replace("[}{]", "", $texte); |
// supprimer les tableaux |
$texte = ereg_replace("(^|\r)\|.*\|\r", "\r", $texte); |
// couper au mot precedent |
$long = $this->spip_substr($texte, 0, max($taille-4,1)); |
$court = ereg_replace("([^[:space:]][[:space:]]+)[^[:space:]]*\n?$", "\\1", $long); |
$points = MORE_LG_RESULTAT_ETC; |
// trop court ? ne pas faire de (...) |
if (strlen($court) < max(0.75 * $taille,2)) { |
$points = ''; |
$long = $this->spip_substr($texte, 0, $taille); |
$texte = ereg_replace("([^[:space:]][[:space:]]+)[^[:space:]]*$", "\\1", $long); |
// encore trop court ? couper au caractere |
if (strlen($texte) < 0.75 * $taille) |
$texte = $long; |
} else |
$texte = $court; |
if (strpos($texte, "\n")) // la fin est encore la : c'est qu'on n'a pas de texte de suite |
$points = ''; |
// remettre les paragraphes |
$texte = ereg_replace("\r+", "\n\n", $texte); |
// supprimer l'eventuelle entite finale mal coupee |
$texte = preg_replace('/&#?[a-z0-9]*$/', '', $texte); |
return trim($texte).$points; |
} |
// Gerer les outils mb_string |
// Fichier : inc_texte.php3 |
function spip_substr($c, $start=0, $end='') |
{ |
// methode substr normale |
if ($end) { |
return substr($c, $start, $end); |
} else { |
return substr($c, $start); |
} |
} |
// Suppression basique et brutale de tous les <...> |
// Fichier : inc_filtres.php3 |
function supprimer_tags($texte, $rempl = "") |
{ |
$texte = preg_replace(",<[^>]*>,U", $rempl, $texte); |
// ne pas oublier un < final non ferme |
$texte = str_replace('<', ' ', $texte); |
return $texte; |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log$ |
* Revision 1.6 2007-01-02 18:49:22 jp_milcent |
* Amélioration de la gestion du motif. |
* Ajout de la gestion des expressions complête via l'utilisation de guillemets. |
* |
* Revision 1.5 2006/11/20 09:36:59 jp_milcent |
* Correction bogue zéro résultat et ajout d'url simple pour indiquer la page de l'article. |
* |
* Revision 1.4 2006/11/14 16:08:40 jp_milcent |
* Paramétrage de la découpe de la description et du symbole "etc" |
* |
* Revision 1.3 2006/10/17 09:21:40 jp_milcent |
* Mise en commun des spécifications de la recherche. |
* |
* Revision 1.2 2006/10/16 14:11:30 jp_milcent |
* Amélioration du moteur de recherche. |
* Utilisation de l'opérateur "et" entre les mots recherchés. |
* |
* Revision 1.1 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/langues/more_langue_en.inc.php |
---|
New file |
0,0 → 1,116 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: more_langue_en.inc.php,v 1.4 2006-11-14 16:07:41 jp_milcent Exp $ |
/** |
* Gestion des langues de l'applette Moteur_Recherche |
* |
* Contient les constantes pour la langue anglaise de l'applette MORE. |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ $Date: 2006-11-14 16:07:41 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Le formulaire de sélection du site dont les menus doivent être administrer : |
define('MORE_LG_FORM_TITRE', 'Search engine'); |
define('MORE_LG_FORM_ACCESSKEY', '4'); |
define('MORE_LG_FORM_MOTIF', 'Search : '); |
define('MORE_LG_FORM_MOTIF_REGLE', 'You must type a string !'); |
define('MORE_LG_FORM_MOTIF_VALUE', 'Search'); |
define('MORE_LG_FORM_VALIDER', 'ok'); |
define('MORE_LG_FORM_SYMBOLE_OBLIGATOIRE', '*'); |
define('MORE_LG_TITRE', 'Search result of : '); |
define('MORE_LG_USURPATION', 'Search of : '); |
// Les résultats de la recherche : |
define('MORE_LG_RESULTAT_TITRE', 'Search results : %s page found'); |
define('MORE_LG_RESULTAT_TITRE_PLURIEL', 'Search results : %s pages found'); |
define('MORE_LG_RESULTAT_RACCOURCI', 'Shortcut : '); |
define('MORE_LG_RESULTAT_DESCRIPTION', 'Description : '); |
define('MORE_LG_RESULTAT_DATE_CREATION', 'Creation date : '); |
define('MORE_LG_RESULTAT_DETAIL', 'Detail : '); |
define('MORE_LG_RESULTAT_POIDS', 'Weight : '); |
define('MORE_LG_RESULTAT_SCORE', 'Accuracy : '); |
define('MORE_LG_RESULTAT_URL', 'URL : '); |
define('MORE_LG_RESULTAT_SEPARATEUR', '-'); |
define('MORE_LG_RESULTAT_POURCENT', '%'); |
define('MORE_LG_RESULTAT_CADRE_OUVRIR', '('); |
define('MORE_LG_RESULTAT_CADRE_FERMER', ')'); |
define('MORE_LG_RESULTAT_POINT', '.'); |
define('MORE_LG_RESULTAT_VIDE', 'No matches for this query!'); |
define('MORE_LG_RESULTAT_ETC', ' (...)'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* Revision 1.2 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.1.2.2 2005/12/27 15:56:00 ddelon |
* Fusion Head vers multilinguisme (wikini double clic) |
* |
* Revision 1.1.2.1 2005/12/20 14:40:25 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.4 2005/10/26 08:14:51 jp_milcent |
* Changement du terme "score" en "pertinence". |
* |
* Revision 1.3 2005/05/25 13:49:22 jpm |
* Corection erreur pour la recherche dans le contenu. |
* |
* Revision 1.2 2005/04/14 17:39:34 jpm |
* Amélioration du moteur de rechercher : |
* - pourcentage |
* - ajout d'info |
* |
* Revision 1.1 2004/12/07 10:24:16 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/langues/more_langue_fr.inc.php |
---|
New file |
0,0 → 1,113 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: more_langue_fr.inc.php,v 1.7 2006-11-14 16:07:41 jp_milcent Exp $ |
/** |
* Gestion des langues de l'applette Moteur_Recherche |
* |
* Contient les constantes pour la langue française de l'applette MORE. |
* |
*@package Applette |
*@subpackage Moteur_Recherche |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.7 $ $Date: 2006-11-14 16:07:41 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Le formulaire de sélection du site dont les menus doivent être administrer : |
define('MORE_LG_FORM_TITRE', 'Moteur de recherche'); |
define('MORE_LG_FORM_ACCESSKEY', '4'); |
define('MORE_LG_FORM_MOTIF', 'Rechercher : '); |
define('MORE_LG_FORM_MOTIF_REGLE', 'Une chaine doit être saisie pour pouvoir lancer la recherche !'); |
define('MORE_LG_FORM_MOTIF_VALUE', 'Rechercher'); |
define('MORE_LG_FORM_VALIDER', 'ok'); |
define('MORE_LG_FORM_SYMBOLE_OBLIGATOIRE', '*'); |
define('MORE_LG_TITRE', 'Résultat de la recherche de : '); |
define('MORE_LG_USURPATION', 'Recherche de : '); |
// Les résultats de la recherche : |
define('MORE_LG_RESULTAT_TITRE', 'Résultats de la recherche : %s page trouvée'); |
define('MORE_LG_RESULTAT_TITRE_PLURIEL', 'Résultats de la recherche : %s pages trouvées'); |
define('MORE_LG_RESULTAT_RACCOURCI', 'Raccourci : '); |
define('MORE_LG_RESULTAT_DESCRIPTION', 'Description : '); |
define('MORE_LG_RESULTAT_DATE_CREATION', 'Date de création : '); |
define('MORE_LG_RESULTAT_DETAIL', 'Détail : '); |
define('MORE_LG_RESULTAT_POIDS', 'Poids : '); |
define('MORE_LG_RESULTAT_SCORE', 'Pertinence : '); |
define('MORE_LG_RESULTAT_URL', 'URL : '); |
define('MORE_LG_RESULTAT_SEPARATEUR', '-'); |
define('MORE_LG_RESULTAT_POURCENT', '%'); |
define('MORE_LG_RESULTAT_CADRE_OUVRIR', '('); |
define('MORE_LG_RESULTAT_CADRE_FERMER', ')'); |
define('MORE_LG_RESULTAT_POINT', '.'); |
define('MORE_LG_RESULTAT_VIDE', 'Aucun résultat pour cette recherche!'); |
define('MORE_LG_RESULTAT_ETC', ' (...)'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.6 2006/05/19 10:04:55 jp_milcent |
* Ajout d'un moteur de recherche analysant les articles des sites sous Spip. |
* |
* Revision 1.5 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.4.2.1 2005/12/27 15:56:00 ddelon |
* Fusion Head vers multilinguisme (wikini double clic) |
* |
* Revision 1.4 2005/10/26 08:14:51 jp_milcent |
* Changement du terme "score" en "pertinence". |
* |
* Revision 1.3 2005/05/25 13:49:22 jpm |
* Corection erreur pour la recherche dans le contenu. |
* |
* Revision 1.2 2005/04/14 17:39:34 jpm |
* Amélioration du moteur de rechercher : |
* - pourcentage |
* - ajout d'info |
* |
* Revision 1.1 2004/12/07 10:24:16 jpm |
* Moteur de recherche version de départ. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/squelettes/resultat_gg.tpl.html |
---|
New file |
0,0 → 1,31 |
<h1><?=$titre;?></h1> |
<?php if ($nbre_pages == 0) : ?> |
<p class="information"><?=$vide;?></p> |
<?php else : ?> |
<ul id="more_resultat"> |
<?php foreach ($resultats as $val) : ?> |
<li> |
<h2><a href="<?=$val['url'];?>" <?=$val['hreflang']!= ''?'hreflang="'.$val['hreflang'].'"':'';?> <?=$val['accesskey']!= ''?'accesskey="'.$val['accesskey'].'"':'';?><?=$val['title']!= ''?'title="'.$val['title'].'"':'';?> ><?=$val['titre'];?></a></h2> |
<dl class="more_info"> |
<?php if ($val['date_creation'] != '') : ?> |
<dt class="more_iidc"><?=MORE_LG_RESULTAT_DATE_CREATION;?></dt> |
<dd class="more_ivdc"><?=$val['date_creation'];?></dd> |
<?php endif; ?> |
<?php if ($val['description'] != '') : ?> |
<dt class="more_iid"><?=MORE_LG_RESULTAT_DESCRIPTION;?></dt> |
<dd class="more_ivd"><?=$val['description'];?></dd> |
<?php endif; ?> |
<dt class="more_iid"><?=MORE_LG_RESULTAT_DETAIL;?></dt> |
<dd class="more_ivd"> |
<ul class="more_detail"> |
<li class="more_du"><span class="more_dui"><?=MORE_LG_RESULTAT_URL;?></span><span class="more_duv"><a href="<?=$val['url'];?>" <?=$val['hreflang']!= ''?'hreflang="'.$val['hreflang'].'"':'';?> <?=$val['accesskey']!= ''?'accesskey="'.$val['accesskey'].'"':'';?> ><?=$val['url_simple'];?></a></span</li> |
<?php if ($val['score'] != '') : ?> |
<li class="more_ds"><span class="more_dsi"><?=MORE_LG_RESULTAT_SCORE;?></span><span class="more_dsv"><?=$val['score'].MORE_LG_RESULTAT_POURCENT;?></span></li> |
<?php endif; ?> |
</ul> |
</dd> |
</dl> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif;?> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/squelettes/formulaire.tpl.html |
---|
New file |
0,0 → 1,36 |
<form action="<?=$form_url;?>" method="post" id="form_more_recherche"> |
<fieldset> |
<legend><?=MORE_LG_FORM_TITRE;?></legend> |
<label for="more_motif"><?=MORE_LG_FORM_MOTIF;?></label> |
<input id="more_motif" name="more_motif" tabindex="<?=$form_tab;?>" maxlength="<?=MORE_FORM_MOTIF_MAXLENGTH;?>" accesskey="<?=MORE_LG_FORM_ACCESSKEY;?>" type="text" value="<?=$more_motif;?>" onfocus="nettoyerChamp('more_motif', '<?=$more_motif_base;?>');basculerTaille('more_motif', true);" onblur="nettoyerChamp('more_motif', '<?=$more_motif_base;?>');basculerTaille('more_motif', false);" /> |
<input id="more_ok" name="more_ok" tabindex="<?=++$form_tab;?>" value="<?=MORE_LG_FORM_VALIDER;?>" type="submit" /> |
</fieldset> |
</form> |
<script type="text/javascript"> |
//<![CDATA[ |
// Fonction aggrandissant ou diminuant la taille d'un champ |
// Provient du site https://addons.mozilla.org/ |
function basculerTaille(id, grand) |
{ |
var sb = document.getElementById(id); |
if (grand) { |
sb.style.width = '20em;'; |
} else { |
sb.style.width = '10em;'; |
} |
} |
// Fonction nettoyant un champ de formulaire d'une chaine donnée... |
function nettoyerChamp(id, chaine) |
{ |
var sb = document.getElementById(id); |
var valeur = sb.value; |
if (valeur == chaine) { |
sb.value = ''; |
} |
if (valeur == '') { |
sb.value = chaine; |
} |
} |
//]]> |
</script> |
/branches/livraison_aha/papyrus/applettes/moteur_recherche/squelettes/resultat_std.tpl.html |
---|
New file |
0,0 → 1,26 |
<h1><?=$titre;?></h1> |
<?php if ($nbre_pages == 0) : ?> |
<p class="information"><?=$vide;?></p> |
<?php else : ?> |
<ul id="more_resultat"> |
<?php foreach ($resultats as $val) : ?> |
<li> |
<h2><a href="<?=$val['url'];?>" <?=$val['hreflang']!= ''?'hreflang="'.$val['hreflang'].'"':'';?> <?=$val['accesskey']!= ''?'accesskey="'.$val['accesskey'].'"':'';?> <?=$val['title']!= ''?'title="'.$val['title'].'"':'';?> ><?=$val['titre'];?></a></h2> |
<dl> |
<?php if ($val['score'] != '') : ?> |
<dt><?=MORE_LG_RESULTAT_SCORE;?></dt> |
<dd><?=$val['score'].MORE_LG_RESULTAT_POURCENT;?></dd> |
<?php endif; ?> |
<?php if ($val['date_creation'] != '') : ?> |
<dt><?=MORE_LG_RESULTAT_DATE_CREATION;?></dt> |
<dd><?=$val['date_creation'];?></dd> |
<?php endif; ?> |
<?php if ($val['description'] != '') : ?> |
<dt><?=MORE_LG_RESULTAT_DESCRIPTION;?></dt> |
<dd><?=$val['description'];?></dd> |
<?php endif; ?> |
</dl> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif;?> |
/branches/livraison_aha/papyrus/applettes/menu/menu.php |
---|
New file |
0,0 → 1,656 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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.32 2007-10-24 14:43:02 ddelon Exp $ |
/** |
* Applette : menu |
* |
* Génère une liste de listes comportant tous les niveaux des menus "classiques" d'un site. |
* Nécessite : |
* - Variable de Papyrus. |
* - Base de données de Papyrus |
* - Pear DB |
* - Pear Net_URL |
* - API Débogage 1.0 |
* |
*@package Applette |
*@subpackage Menu |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.32 $ $Date: 2007-10-24 14:43:02 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Inclusion de la bibliothèque defonction sur les menu : inutile car inclue par Papyrus |
require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php'; |
$GLOBALS['_MENU_']['nom_fonction'] = 'afficherMenuNiveauMultiple'; |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = $GLOBALS['_MENU_']['nom_fonction']; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'(MENU_?(?:(|CLASSIQUE|COMMUN|DEROULANT)_([0-9]+)_([0-9]+)(|_ID_([0-9]+))|(UNIQUE)_([0-9]+))(?:|_NUMID_([0-9]+))) -->'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction GEN_afficherMenuNiveauMultiple() - Retourne la liste des listes de menus. |
* |
* Cette fonction retourne ne fait qu'encapsuler une fonction récursive |
* retournant les listes de menus de l'arborescence d'un site dans une |
* langue donnée. |
* |
* @param array contient les arguments de la fonction en 1 le niveau de départ et en 2 le niveau d'arrivée (profondeur max demandée). |
* @param array tableau global de Papyrus. |
* @return string HTML la liste des listes de menus. |
*/ |
function afficherMenuNiveauMultiple($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation de variable. |
$objet_pear_db = $_GEN_commun['pear_db']; |
$id_site = $_GEN_commun['info_site']->gs_id_site; |
if (isset($_GEN_commun['info_menu'])) { |
$id_menu = $_GEN_commun['info_menu']->gm_id_menu; |
} |
$num_menu = $GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_MENU_']['nom_fonction']]; |
$indent_origine = 12;// Indentation de départ en nombre d'espace |
$indent_pas = 4;// Pas d'indentation en nombre d'espace |
$niveau_depart = 1; |
// Récupérations des arguments passés dans la balise. |
// Pour les menus CLASSIQUE et COMMUN |
$balise = $tab_applette_arguments[1]; |
$menu_type = $tab_applette_arguments[2]; |
$niveau_depart = $tab_applette_arguments[3]; |
$profondeur = $tab_applette_arguments[4]; |
if (isset($tab_applette_arguments[5]) && !empty($tab_applette_arguments[5])) { |
$menu_depart = $tab_applette_arguments[6]; |
} else { |
$menu_depart = 0; |
} |
// Pour les menus UNIQUE |
if (isset($tab_applette_arguments[7])) { |
$menu_type = $tab_applette_arguments[7]; |
} |
if (isset($tab_applette_arguments[8])) { |
$menu_depart = $tab_applette_arguments[8]; |
} |
// Gestion du numéro unique pour l'attribut id des li des menus |
if (isset($tab_applette_arguments[9])) { |
$num_menu = $tab_applette_arguments[9]; |
} |
// Gestion du type de menu |
switch ($menu_type) { |
case '' : |
$menu_type = 'classique'; |
break; |
case 'CLASSIQUE' : |
$menu_type = 'classique'; |
break; |
case 'COMMUN' : |
$menu_type = 'commun'; |
break; |
case 'UNIQUE' : |
$menu_type = 'unique'; |
break; |
case 'DEROULANT' : |
$menu_type = 'deroulant'; |
break; |
default: |
$menu_type = 'classique'; |
} |
//Construction du menu |
$xhtml_menu = afficherListeNiveauMultiple( $objet_pear_db, $id_site,$niveau_depart, |
$profondeur, $menu_depart, 1, $menu_type, $indent_origine, |
$indent_pas, $_GEN_commun, $num_menu); |
// Si le menu est déroulant il faut stocker un peu de javascript pour IE |
if ($menu_type == 'deroulant') { |
GEN_stockerCodeScript ('sfHover = function() { |
var sfEls = document.getElementById("groupe_menu_1_0").getElementsByTagName("LI"); |
for (var i=0; i<sfEls.length; i++) { |
sfEls[i].onmouseover=function() { |
this.className+=" sfhover"; |
} |
sfEls[i].onmouseout=function() { |
this.className=this.className.replace(new RegExp(" sfhover\\\\b"), ""); |
} |
} |
} |
if (window.attachEvent) window.attachEvent("onload", sfHover);') ; |
} |
//Si nous avons un |
if (! empty($xhtml_menu)) { |
$retour = $xhtml_menu; |
} else { |
$retour = '<!-- '.$balise.' : aucun menu trouvé ! -->'; |
} |
return $retour; |
} |
/** Fonction afficherListeNiveauMultiple() - Affiche une arborescence des menu classiques d'un site. |
* |
* Créé et retourne une liste pour chaque niveau de menu classique trouvé dans l'arborescence |
* des menus d'un site dans une langue donnée. |
* C'est une fonction récursive. |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer identifiant d'un site. |
* @param integer identifiant de la langue demandée. |
* @param integer niveau de départ. |
* @param integer niveau d'arrivée (profondeur max demandée). |
* @param integer identifiant d'un menu pére. |
* @return string les listes de menus au format XHTML. |
*/ |
function afficherListeNiveauMultiple( &$objet_pear_db, $id_site, $niveau_depart, $profondeur, |
$id_pere_menu_a_deployer, $position, $menu_type, $indent_origine = 12, |
$indent_pas = 4, $_GEN_commun, $num_menu) |
{ |
// Initialisation des variables |
static $niveau_actuel = 1; |
$retour = ''; |
$tete = ''; |
$corps = ''; |
$pied = ''; |
$i18n_url = '' ; |
$id_langue = $_GEN_commun['i18n'];//identifiant de la langue choisie |
if ($id_langue != GEN_I18N_ID_DEFAUT) { |
$i18n_url=$id_langue; |
} |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
// Récupération des infos sur sur l'entrée du menu à afficher |
$menu_info = GEN_lireInfoMenu($objet_pear_db, $id_pere_menu_a_deployer, DB_FETCHMODE_ASSOC); |
// Gestion des menus uniques |
if ($menu_type == 'unique' && ($menu_info['gm_date_fin_validite'] == '0000-00-00 00:00:00' || strtotime($menu_info['gm_date_fin_validite']) > time() )) { |
$retour .= afficherEntreeListeMenu( $objet_pear_db, $id_pere_menu_a_deployer, $i18n_url, |
$niveau_actuel, 1, $position, $menu_type, $indent_origine, $indent_pas, $_GEN_commun, $num_menu); |
// Dans le cas, d'un menu unique, on retourne directement le résultat ici. |
return $retour; |
} |
// On affiche un menu que si $profondeur <= $niveau_actuel <= $depart |
if ($niveau_actuel > $profondeur) { |
return null; |
} |
// Nous regardons si nous devons afficher un menu racine |
if ($id_pere_menu_a_deployer != 0 && $niveau_actuel == 1 && ($menu_info['gm_date_fin_validite'] == '' || $menu_info['gm_date_fin_validite'] == '0000-00-00 00:00:00' || strtotime($menu_info['gm_date_fin_validite']) > time() )) { |
$tete .= str_repeat(' ', $indent_origine + ($indent_pas * $position)). |
'<ul class="groupe_menu_'.$num_menu.'_'.$id_pere_menu_a_deployer.'" class="menu_'.$menu_type.'_'.'n'.$niveau_actuel.'">'."\n"; |
$id_menu_selectionne = $GLOBALS['_GEN_commun']['info_menu']->gm_id_menu; |
if (!empty($id_menu_selectionne) && (GEN_etreAncetre($id_pere_menu_a_deployer, $id_menu_selectionne) || $id_pere_menu_a_deployer == $id_menu_selectionne) ) { |
$classe = 'menu_actif'; |
} else { |
$classe = 'menu_inactif'; |
} |
// Pour un menu dont on spécifie l'identifiant du menu départ, on affiche ce menu. |
$corps .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 1))). |
'<li id="menu_'.$num_menu.'_'.$id_pere_menu_a_deployer.'" class="'.$classe.'">'."\n"; |
$corps .= afficherEntreeListeMenu( $objet_pear_db, $id_pere_menu_a_deployer, $i18n_url, |
$niveau_actuel, 1, $position, $menu_type, $indent_origine, $indent_pas, $_GEN_commun, $num_menu); |
} |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) { |
$tete .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 1))). |
'<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, 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.'" '. |
'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') { |
$requete .= 'AND gm_ce_site = '.$id_site.' '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = type "menu classique" |
'ORDER BY GMR01.gmr_ordre ASC'; |
} else if ($menu_type == 'commun') { |
$requete .= 'AND gm_ce_site = 0 '. |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = type "menu commun" |
'ORDER BY GMR01.gmr_ordre ASC'; |
} |
//$GLOBALS['_GEN_commun']['debogage_info'] .= $requete; |
$resultat = $objet_pear_db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$liste_menu=array(); |
// On ne retient pas les menus qui sont des traductions ... |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
if ($langue_test == GEN_I18N_ID_DEFAUT) { |
// Le menu n'est pas une traduction : on le traite |
$requete_est_traduction = 'SELECT gmr_id_menu_01 '. |
'FROM gen_menu_relation '. |
'WHERE '.$ligne->gm_id_menu.' = gmr_id_menu_02 ' . |
'AND gmr_id_menu_01 <> gmr_id_menu_02 '. |
'AND gmr_id_valeur = 2 ';// 2 = "avoir traduction" |
$resultat_est_traduction = $objet_pear_db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
$liste_menu[]=$ligne; |
} |
} |
// Par defaut, on traite tous les menus trouvés |
else { |
$liste_menu[]=$ligne; |
} |
} |
if (!function_exists('cmp')) { |
function cmp($a, $b) { |
if ($a->gmr_ordre == $b->gmr_ordre) { |
return 0; |
} |
return ($a->gmr_ordre < $b->gmr_ordre) ? -1 : 1; |
} |
} |
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 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)) { |
$id_menu_selectionne = $GLOBALS['_GEN_commun']['info_menu']->gm_id_menu; |
} |
// On vérifie si le menu est le menu sélectionné |
if (!empty($id_menu_selectionne) && (GEN_etreAncetre($id_menu_inf, $id_menu_selectionne) || $id_menu_inf == $id_menu_selectionne) ) { |
$classe = 'menu_actif'; |
} else { |
$classe = 'menu_inactif'; |
} |
$tmp= afficherEntreeListeMenu( $objet_pear_db, $id_menu_inf, $niveau_actuel, |
$ligne->gmr_ordre, $position, $menu_type, $indent_origine, $indent_pas, $_GEN_commun, $num_menu); |
// Affichage du menu |
if ($tmp!='') { |
$corps .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 2))). |
'<li id="menu_'.$num_menu.'_'.$id_menu_inf.'" class="'.$classe.'">'."\n"; |
$corps .= $tmp; |
} |
} |
// Pour chaque menu on regarde s'il y a des fils. Si oui, on les déploie. |
$requete_fils = 'SELECT gm_id_menu '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$ligne->gm_id_menu.' '. |
'AND 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 ' ; |
if ($menu_type == 'classique') { |
$requete_fils .='AND GMR02.gmr_id_valeur = 100 ' ;// 100 = type "menu classique" |
} |
if ($menu_type == 'commun') { |
$requete_fils .='AND GMR02.gmr_id_valeur = 102 '; // 102 = type "menu commun" |
} |
$requete_fils .= 'ORDER BY GMR01.gmr_ordre ASC LIMIT 0,1'; |
$resultat_fils = $objet_pear_db->query($requete_fils); |
(DB::isError($resultat_fils)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_fils->getMessage(), $requete_fils)) |
: ''; |
if (isset($_GEN_commun['info_menu'])) { |
if ($resultat_fils->numRows() != 0 && $ligne->gm_id_menu == $GLOBALS['_GEN_commun']['info_menu']->gm_id_menu |
|| GEN_etreAncetre($ligne->gm_id_menu, $GLOBALS['_GEN_commun']['info_menu']->gm_id_menu) || $menu_type == 'deroulant') { |
$niveau_actuel++; |
$corps .= afficherListeNiveauMultiple( $objet_pear_db, $id_site, $niveau_depart, |
$profondeur, $ligne->gm_id_menu, ($position + 3), $menu_type, |
null, null, $_GEN_commun, $num_menu); |
// On ramène $niveau_actuel un cran plus bas |
$niveau_actuel--; |
} |
} |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) { |
$corps .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 2))).'</li>'."\n"; |
} |
$resultat_fils->free(); |
} |
} |
if ($niveau_actuel >= $niveau_depart && $niveau_actuel <= $profondeur) { |
$pied .= str_repeat(' ', $indent_origine + ($indent_pas * $position+ 1)).'</ul>'."\n"; |
} |
// Nous regardons si nous avons affiché le menu racine |
if ($id_pere_menu_a_deployer != 0 && $niveau_actuel == 1) { |
$corps .= str_repeat(' ', $indent_origine + ($indent_pas * ($position + 1))).'</li>'."\n"; |
$pied .= str_repeat(' ', $indent_origine + ($indent_pas * $position)).'</ul>'."\n"; |
} |
if (empty($corps)) { |
return $retour; |
} else { |
$retour = $tete.$corps.$pied; |
return $retour; |
} |
} |
/** Fonction afficherEntreeListeMenu() - Contruit une entrée dans une liste du menu d'un site. |
* |
* Cette fonction retourne une entrée dans la liste du menu d'un site (<a></a>). |
* Le menu est un lien. |
* Necessite l'utilisation de Pear Net_URL par le programme appelant cette fonction. |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer niveau du menu. |
* @param integer ordre du menu dans le niveau. |
* @return string liste représentant le menu duHTML |
* |
* $menu_id : identifiant du menu (!= code menu) |
*/ |
function afficherEntreeListeMenu($db, $menu_id, $niveau, $ordre, $position, $menu_type, $indent_origine = 12, $indent_pas = 4, $_GEN_commun, $num_menu) |
{ |
$id_langue = $GLOBALS['_GEN_commun']['i18n']; |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
$requete_traduction = 'SELECT gmr_id_menu_02, gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE '.$menu_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_menu_02 = gm_id_menu '. |
'AND gmr_id_valeur = 2 '.// 2 = "avoir traduction" |
'AND gm_ce_i18n = "'.$langue_test.'" '; |
$resultat_traduction = $db->query($requete_traduction); |
(DB::isError($resultat_traduction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
if ($resultat_traduction->numRows() > 0) { |
$ligne_resultat_traduction=$resultat_traduction->fetchRow(DB_FETCHMODE_ASSOC); |
$menu_id=$ligne_resultat_traduction['gmr_id_menu_02']; |
} |
else { |
// Ne sont affichés que les traductions par defaut des menus |
// non traduits |
// Ici : pas de traduction |
if ($langue_test!=GEN_I18N_ID_DEFAUT) { |
$requete_defaut = 'SELECT gmr_id_menu_02 '. |
'FROM gen_menu_relation '. |
'WHERE '.$menu_id. ' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut |
$resultat_defaut = $db->query($requete_defaut); |
(DB::isError($resultat_defaut)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_defaut->getMessage(), $requete_defaut)) |
: ''; |
if ($resultat_defaut->numRows() > 0) { |
$ligne_resultat_defaut=$resultat_defaut->fetchRow(DB_FETCHMODE_ASSOC); |
$menu_id=$ligne_resultat_defaut['gmr_id_menu_02']; |
} |
} |
} |
// Récupération des infos sur sur l'entrée du menu à afficher |
$menu_info = GEN_lireInfoMenu($db, $menu_id, DB_FETCHMODE_ASSOC); |
// Préparation d'une entrée dans la liste du menu |
$menu_nom = htmlentities($menu_info['gm_nom']); |
if (trim($menu_nom)=='') return ''; |
$menu_accesskey = ''; |
$raccourci_txt = ''; |
if (($menu_accesskey = htmlentities($menu_info['gm_raccourci_clavier'])) != '') { |
$raccourci_txt = '[Raccourci : Alt+'.$menu_accesskey.' ] '; |
$menu_accesskey = 'accesskey="'.$menu_accesskey.'" '; |
} |
$menu_texte_title = ''; |
if (($menu_texte_title = htmlentities($menu_info['gm_description_resume'])) != '') { |
$menu_texte_title = 'title="'.$raccourci_txt.$menu_texte_title.'" ';; |
} |
$une_url =& new Pap_URL(PAP_URL); |
$une_url->setId($menu_id); |
if (isset($i18n) && ($i18n!='')) { |
$une_url->addQuerystring(GEN_URL_CLE_I18N,$i18n); |
} |
//Création d'une entrée dans la liste du menu |
$espaces = str_repeat(' ', $indent_origine + ($indent_pas * ($position + 2))); |
$retour = $espaces.'<a id="menu_lien_'.$num_menu.'_'.$menu_id.'" href="'.$une_url->getURL().'" '.$menu_texte_title.$menu_accesskey.'>'.$menu_nom.'</a>'."\n"; |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--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 |
* |
* Revision 1.29 2006/10/16 15:49:46 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.28 2006/09/21 15:52:19 jp_milcent |
* Utilisation de PAP_URL pour Net_URL à la place des constantes serveur. |
* |
* Revision 1.27 2006/09/20 09:25:31 alexandre_tb |
* Initialisation de la variable $i18n_url pour éviter un notice |
* |
* Revision 1.26 2006/07/04 09:43:21 alexandre_tb |
* correction d'un bug du javascript |
* |
* Revision 1.25 2006/06/28 12:53:34 ddelon |
* Multilinguisme : menu par defaut |
* |
* Revision 1.24 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.23 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.22.2.2 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.22.2.1 2005/12/20 14:40:25 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.22 2005/09/27 08:42:49 ddelon |
* Menu et Squelette |
* |
* Revision 1.21 2005/09/22 14:02:49 ddelon |
* nettoyage annuaire et php5 |
* |
* Revision 1.20 2005/05/27 14:56:51 alex |
* correction de bug d'affichage des menus communs |
* |
* Revision 1.19 2005/05/27 10:23:00 jpm |
* Modification du style des raccourcis. |
* |
* Revision 1.18 2005/05/03 08:39:32 jpm |
* Ajout d'un test sur la date. |
* |
* Revision 1.17 2005/04/19 16:59:51 jpm |
* Suppression de l'affichage d'un débogage. |
* |
* Revision 1.16 2005/04/19 16:47:24 jpm |
* Gestion des dates de fin de validité des menus. |
* |
* Revision 1.15 2005/04/14 16:37:48 jpm |
* Ajout de la gestion des URL avec la classe Pap_URL de Papyrus. |
* |
* Revision 1.14 2005/03/02 11:02:33 jpm |
* Suppression des espaces avant l'ouverture de la balise php. |
* |
* Revision 1.13 2005/02/08 19:03:03 alex |
* ajout de la balise DEROULANT qui permet de faire un affichage des menus avec survol javascript. Il nécessite des styles particuliers. |
* |
* Revision 1.12 2004/12/02 10:42:15 jpm |
* Correction bogue liste ul vide si pas de menu. |
* |
* Revision 1.11 2004/11/26 19:02:22 jpm |
* Correction bogue li surnuméraires. |
* |
* Revision 1.10 2004/11/15 17:40:02 jpm |
* Changement nom balise. |
* |
* Revision 1.9 2004/11/15 16:17:40 jpm |
* Gestion des différents types de menus. |
* |
* Revision 1.8 2004/11/10 18:59:21 jpm |
* Début de gestion de l'ensemble des types de menu dans l'applette menu. |
* |
* Revision 1.7 2004/09/23 14:31:40 jpm |
* Correction bogue sur le menu actif. |
* |
* Revision 1.6 2004/09/23 10:47:16 jpm |
* Amélioration de la gestion du menu actif en fonction du menu demandé dans l'url. |
* |
* Revision 1.5 2004/09/15 09:32:21 jpm |
* Mise en conformité avec le standard XHTML Strict. |
* Amélioration de la gestion de l'indentation. |
* |
* Revision 1.4 2004/09/13 18:02:34 jpm |
* Changement de nom de m_select en menu_actif et de m_non_select en menu_inactif. |
* Amélioration du rendu du code html. |
* |
* Revision 1.3 2004/07/23 11:21:25 alex |
* suppression du javascript. |
* |
* Revision 1.2 2004/06/25 08:32:02 alex |
* modification des styles |
* |
* Revision 1.1 2004/06/15 15:04:14 jpm |
* Changement de nom et d'arborescence de Genesia en Papyrus. |
* |
* Revision 1.10 2004/05/05 14:33:04 jpm |
* Gestion de l'indication de langue dans l'url. |
* Utile que si on veut forcer la langue. |
* |
* Revision 1.8 2004/05/05 06:44:19 jpm |
* Complément des commentaires indiquant les paquetages nécessaire à l'applette. |
* |
* Revision 1.7 2004/05/04 14:19:37 jpm |
* Mise entre guillemet simple d'un texte. |
* |
* Revision 1.6 2004/05/03 14:11:01 jpm |
* Intégration du fichier bibliothèquie de fonctions sur gen_menu provenant de la bibliothèque de Génésia INUTILE! |
* |
* Revision 1.5 2004/05/03 14:09:32 jpm |
* Intégration du fichier bibliothèquie de fonctions sur gen_menu provenant de la bibliothèque de Génésia. |
* |
* Revision 1.4 2004/05/03 11:19:00 jpm |
* Intégration de la variable globale de Génésia dans les arguments de la fonction de l'applette. |
* |
* Revision 1.3 2004/05/03 08:52:44 jpm |
* Modification pour intégrer les sous listes (ul) de menus à l'intèrieur de l'entrée (li) du menu supérieur. |
* |
* Revision 1.2 2004/05/01 17:22:23 jpm |
* Changement de nom de l'applette dans les commentaires. |
* |
* Revision 1.1 2004/05/01 16:12:39 jpm |
* Ajout de l'applette gérant les menus multi niveaux ou niveau unique. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/syndication/configuration/synd_configuration.inc.php |
---|
New file |
0,0 → 1,83 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: synd_configuration.inc.php,v 1.1 2006-12-13 17:06:36 jp_milcent Exp $ |
/** |
* papyrus_bp - synd_configuration.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 17:06:36 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_SYNDICATION_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette SYND.*/ |
define('SYND_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Paramétrage de la bibliothèque de manipulation des flux RSS |
/** Constante stockant le chemin vers la bibliothèque MAGPIERSS.*/ |
define('MAGPIE_DIR', GEN_CHEMIN_API.'syndication_rss/magpierss/'); |
/** Constante stockant le chemin vers le dossier de cache pour MAGPIERSS.*/ |
define('MAGPIE_CACHE_DIR', MAGPIE_DIR.'/tmp/magpie_cache'); |
/** Constante stockant le nombre de page syndiqués à afficher par site.*/ |
define('SYND_NOMBRE', 10); |
/** Constante stockant si oui ou non on ouvre une nouvelle fenêtre pour consulter la page d'un site syndiqué.*/ |
define('SYND_OUVRIR_LIEN_RSS_NOUVELLE_FENETRE', 1); |
/** Constante stockant le format des dates.*/ |
define('SYND_FORMAT_DATE', 'jma'); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Syndication de Papyrus.*/ |
define('SYND_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'syndication'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Syndication de Papyrus.*/ |
define('SYND_CHEMIN_LANGUE', SYND_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Syndication de Papyrus.*/ |
define('SYND_CHEMIN_SQUELETTE', SYND_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette, par défaut, à utiliser pour la liste des pages.*/ |
define('SYND_SQUELETTE_LISTE', 'synd_liste.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/syndication/syndication.php |
---|
New file |
0,0 → 1,313 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: syndication.php,v 1.7 2007-07-25 15:09:44 jp_milcent Exp $ |
/** |
* papyrus_bp - syndication.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.7 $ $Date: 2007-07-25 15:09:44 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherSyndication'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Ss]yndication'. |
'(?:\s*'. |
'(?:'. |
'(url="[^"]*")|'. |
'(titre="[^"]*")|'. |
'(nb="?\d+"?)|'. |
'(nouvellefenetre="?(?:0|1)"?)|'. |
'(formatdate="[^"]*")|'. |
'(formatdatepro="[^"]*")|'. |
'(template=".*")|'. |
')'. |
')+'. |
'\s*\}\}'; |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'syndication'.GEN_SEP.'configuration'.GEN_SEP.'synd_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette SYND de Papyrus |
if (file_exists(SYND_CHEMIN_LANGUE.'synd_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once SYND_CHEMIN_LANGUE.'synd_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once SYND_CHEMIN_LANGUE.'synd_langue_'.SYND_I18N_DEFAUT.'.inc.php'; |
} |
/** Inclusion du fichier de la bibliotheque permettant de manipuler les flux RSS.*/ |
//require_once(MAGPIE_DIR.'rss_fetch.inc'); |
require_once PAP_CHEMIN_API_PEAR.'XML/Feed/Parser.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherSyndication() - Retourne la liste des pages des sites syndiqués. |
* |
* Cette fonction retourne la liste des pages des sites syndiqués. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string XHTML la liste des pages. |
*/ |
function afficherSyndication($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_SYNDICATION_']['erreurs'] = array(); |
$GLOBALS['_SYNDICATION_']['informations'] = array(); |
$GLOBALS['_SYNDICATION_']['sites'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$balise = $tab_applette_arguments[0]; |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument, 2); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramétrage |
if (!isset($options['url'])) { |
$GLOBALS['_SYNDICATION_']['erreurs'][] = sprintf(SYND_LG_ERREUR_URL, $balise); |
} |
if (!isset($options['titre'])) { |
$options['titre'] = ''; |
} |
if (!isset($options['nb'])) { |
$options['nb'] = SYND_NOMBRE; |
} |
if (!isset($options['nouvellefenetre'])) { |
$options['nouvellefenetre'] = SYND_OUVRIR_LIEN_RSS_NOUVELLE_FENETRE; |
} |
if (!isset($options['formatdate'])) { |
$options['formatdate'] = SYND_FORMAT_DATE; |
} |
if (!isset($options['formatdatepro'])) { |
$options['formatdatepro'] = false; |
} |
if (!isset($options['template'])) { |
$options['template'] = SYND_CHEMIN_SQUELETTE.SYND_SQUELETTE_LISTE; |
} else { |
if (file_exists(SYND_CHEMIN_SQUELETTE.$options['template'])) { |
$options['template'] = SYND_CHEMIN_SQUELETTE.$options['template']; |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Recuperation des donnees |
if (count($GLOBALS['_SYNDICATION_']['erreurs']) == 0) { |
$tab_url = array_map('trim', explode(',', $options['url'])); |
foreach ($tab_url as $cle => $url) { |
if ($url != '') { |
$aso_site = array(); |
try { |
$feed = new XML_Feed_Parser(file_get_contents($url)); |
} catch (XML_Feed_Parser_Exception $e) { |
die('Le flux RSS est invalide : ' . $e->getMessage()); |
} |
if ($options['template'] != '' && !file_exists($options['template'])) { |
$i = 0 ; |
$res= ''; |
foreach ($feed as $item) { |
// Le test suivant pour savoir s il faut reduire l excendent de description |
// Si {all} est present dans le template on ne reduit pas |
if (preg_match ('/{all}/', $options['template'])) { |
$template = str_replace('{all}', '', $options['template']); |
$all = true ; |
} else { |
$all = false; |
} |
if (isset($item->summary)) { |
$item->description = $item->summary; |
} else { |
if (strlen($item->description) > 200 && !$all) { |
$item->description = substr ($item->description , 0, 300). |
'... <a href="'.$item->link.'">Lire la suite</a>'; |
} |
} |
if (!isset($item->pubdate)) { |
$item->pubdate = date('dmY'); |
} |
// Le code ci-apres est pour rattraper les dates du type 01012005 parsees par magpie |
// lorsque les flux donne des dates au format iso |
if (preg_match('/^([0-3][0-9])([0-1][0-9])([0-9][0-9][0-9][0-9])$/', $item->pubdate, $match)) { |
$item->pubdate = $match[3].'-'.$match[2].'-'.$match[1]; |
//echo $item['pubdate']; |
} |
$res .= str_replace ('{num}', ++$i, |
str_replace ('{item}', '<a href="'.$item->link.'" target="_top">'.htmlentities($item->title).'</a>', |
str_replace ('{date}', strftime('%d.%m.%Y',strtotime($item->pubdate)), |
str_replace ('{description}', $item->description, $options['template'])))) ; |
$res .= "\n"; |
if ($i > $options['nb']) { |
break; |
} |
} |
return $res; |
} |
// Gestion du titre |
if ( $options['titre'] == '' ) { |
$aso_site['titre'] = utf8_decode($feed->title); |
} else if ( $options['titre'] != '0' ) { |
$aso_site['titre'] = $options['titre']; |
} |
// Gestion de l'url du site |
$aso_site['url'] = htmlentities($feed->link); |
// Ouverture du lien dans une nouvelle fenetre |
$aso_site['ext'] = false; |
if ($options['nouvellefenetre'] == 1) { |
$aso_site['ext'] = true; |
} |
// Gestion des pages syndiquees |
$i = 0; |
$nb_item = $feed->numberEntries; |
foreach ($feed as $item) { |
//echo '<pre>'.print_r($item, true).'</pre>'; |
if ($options['nb'] != 0 && $nb_item >= $options['nb'] && $i >= $options['nb']) { |
break; |
} |
$i++; |
$aso_page = array(); |
$aso_page['site'] = $aso_site; |
$aso_page['url'] = $item->link; |
$aso_page['titre'] = utf8_decode($item->title); |
$aso_page['date'] = $item->pubDate; |
if ($options['formatdatepro']) { |
switch ($options['formatdatepro']) { |
case 'jm' : |
$aso_page['date'] = strftime('%d.%m', $aso_page['date']); |
break; |
case 'jma' : |
$aso_page['date'] = strftime('%d.%m.%Y', $aso_page['date']); |
break; |
case 'jmh' : |
$aso_page['date'] = strftime('%d.%m %H:%M', $aso_page['date']); |
break; |
case 'jmah' : |
$aso_page['date'] = strftime('%d.%m.%Y %H:%M', $aso_page['date']); |
break; |
default : |
$aso_page['date'] = strftime('%d.%m.%Y %H:%M', $aso_page['date']); |
} |
} else { |
switch ($options['formatdate']) { |
case 'jm' : |
$aso_page['date'] = strftime('%d.%m', $aso_page['date']); |
break; |
case 'jma' : |
$aso_page['date'] = strftime('%d.%m.%Y', $aso_page['date']); |
break; |
case 'jmh' : |
$aso_page['date'] = strftime('%d.%m %H:%M', $aso_page['date']); |
break; |
case 'jmah' : |
$aso_page['date'] = strftime('%d.%m.%Y %H:%M', $aso_page['date']); |
break; |
default : |
$aso_page['date'] = strftime('%d.%m.%Y %H:%M', $aso_page['date']); |
} |
} |
$aso_site['pages'][] = $aso_page; |
$GLOBALS['_SYNDICATION_']['pages'][strtotime($aso_page['date'])] = $aso_page; |
} |
$GLOBALS['_SYNDICATION_']['sites'][] = $aso_site; |
} |
} |
} |
// Trie des pages par date |
//var_dump($GLOBALS['_SYNDICATION_']['pages']); |
krsort($GLOBALS['_SYNDICATION_']['pages']); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes a l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_SYNDICATION_']); |
// Demarre le buffer |
ob_start(); |
// Inclusion du fichier |
include($options['template']); |
// Recuperer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrete et detruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.5.2.4 2007-07-25 15:07:52 jp_milcent |
* Correction problème url. |
* |
* Revision 1.5.2.3 2007-07-25 14:50:21 jp_milcent |
* Corrections, meilleure utilisation de XML_Feed_Parser. |
* |
* Revision 1.5.2.2 2007-07-25 09:45:07 jp_milcent |
* Utilisation de XML_Feed_Parser de Pear pour l'applette Syndication. |
* |
* Revision 1.6 2007-06-25 12:15:07 alexandre_tb |
* merge from narmer |
* |
* Revision 1.5.2.1 2007-06-06 15:24:37 jp_milcent |
* Amélioration de la compatibilité avec les anciennes version des balises de l'applette syndication. |
* |
* Revision 1.5 2007-04-20 12:50:18 florian |
* correction bugs suite au merge |
* |
* Revision 1.4 2007/03/28 15:53:27 florian |
* correction pb date, encodage utf-8 |
* |
* Revision 1.3 2007/01/23 14:17:19 alexandre_tb |
* backport : hack pour rattraper les dates du type 01012005 parsees par magpie |
* lorsque les flux donne des dates au format iso |
* |
* Revision 1.2 2006/12/13 17:20:51 jp_milcent |
* Correction bogue : paramètre nb non pris en compte |
* |
* Revision 1.1 2006/12/13 17:06:36 jp_milcent |
* Ajout de l'applette Syndication. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/syndication/langues/synd_langue_fr.inc.php |
---|
New file |
0,0 → 1,58 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: synd_langue_fr.inc.php,v 1.1 2006-12-13 17:06:35 jp_milcent Exp $ |
/** |
* papyrus_bp - synd_langue_fr.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 17:06:35 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "url" est abscent.*/ |
define('SYND_LG_ERREUR_URL', "Applette SYNDICATION : le paramètre 'url' est obligatoire!"); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/syndication/squelettes/synd_liste_date.tpl.html |
---|
New file |
0,0 → 1,20 |
<!-- SYNDICATION - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php else : ?> |
<ul class="rss_liste"> |
<?php foreach ($pages as $page) : ?> |
<li class="rss_page"> |
<h1 class="rss_titre_site"><a href="<?=$page['site']['url'];?>"><?=$page['site']['titre'];?></a> - <span class="rss_date"><?=$page['date'];?></span></h1> |
<h2 class="rss_titre_article"><a href="<?=$page['url'];?>" <?=($page['ext'])? 'onclick="window.open(this.href); return false;" title="S\'ouvre dans une nouvelle fenêtre"':'';?> ><?=$page['titre'];?></a></h2> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif; ?> |
<!-- SYNDICATION - FIN --> |
/branches/livraison_aha/papyrus/applettes/syndication/squelettes/synd_liste.tpl.html |
---|
New file |
0,0 → 1,24 |
<!-- SYNDICATION - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php else : ?> |
<?php foreach ($sites as $site) : ?> |
<h2 class="rss_site_titre"><a href="<?=$site['url'];?>"><?=$site['titre'];?></a></h2> |
<ul class="liste_rss"> |
<?php foreach ($site['pages'] as $page) : ?> |
<li class="titre_rss"> |
<span class="rss_date"><?=$page['date'];?></span> |
<span class="rss_separateur_date"> - </span> |
<a class="lien_rss" href="<?=$page['url'];?>" <?=($site['ext'])? 'onclick="window.open(this.href); return false;"':'';?>><?=$page['titre'];?></a> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endforeach; ?> |
<?php endif; ?> |
<!-- SYNDICATION - FIN --> |
/branches/livraison_aha/papyrus/applettes/mot_cles/configuration/mocl_configuration.inc.php |
---|
New file |
0,0 → 1,71 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: mocl_configuration.inc.php,v 1.1 2006-12-12 13:32:27 jp_milcent Exp $ |
/** |
* papyrus_bp - mocl_configuration.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-12 13:32:27 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_MOT_CLES_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette MOCL.*/ |
define('MOCL_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Categorie de Papyrus.*/ |
define('MOCL_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'mot_cles'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Categorie de Papyrus.*/ |
define('MOCL_CHEMIN_LANGUE', MOCL_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Categorie de Papyrus.*/ |
define('MOCL_CHEMIN_BIBLIO', MOCL_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Categorie de Papyrus.*/ |
define('MOCL_CHEMIN_SQUELETTE', MOCL_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('MOCL_SQUELETTE_LISTE', 'mocl_liste.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/mot_cles/mot_cles.php |
---|
New file |
0,0 → 1,269 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: mot_cles.php,v 1.2 2006-12-12 17:17:12 jp_milcent Exp $ |
/** |
* papyrus_bp - mot_cles.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.2 $ $Date: 2006-12-12 17:17:12 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherMotCles'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Mm]otCles'. |
'(?:\s*'. |
'(?:'. |
'(mots="[^"]+")|'. |
'(categorie="[^"]+")|'. |
'(condition="(?i:et|ou)")|'. |
'(mots_condition="(?i:et|ou)")|'. |
'(categorie_condition="(?i:et|ou)")|'. |
'(ordre="(?i:asc|desc)")|'. |
')'. |
')+'. |
'\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'mot_cles'.GEN_SEP.'configuration'.GEN_SEP.'mocl_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette MOCL de Papyrus |
if (file_exists(MOCL_CHEMIN_LANGUE.'mocl_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once MOCL_CHEMIN_LANGUE.'mocl_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once MOCL_CHEMIN_LANGUE.'mocl_langue_'.MOCL_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherMotCles() - Retourne la liste des pages pour un mot clés donné. |
* |
* Cette fonction retourne la liste des pages pour un mot clés donné. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string HTML la liste des listes de menus. |
*/ |
function afficherMotCles($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_MOT_CLES_']['erreurs'] = array(); |
$GLOBALS['_MOT_CLES_']['informations'] = array(); |
$GLOBALS['_MOT_CLES_']['pages'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$balise = $tab_applette_arguments[0]; |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
if (!isset($options['mots'])) { |
$GLOBALS['_MOT_CLES_']['erreurs'][] = MOCL_LG_ERREUR_MOTS; |
} |
if (!isset($options['categorie']) && isset($options['categorie_condition'])) { |
$GLOBALS['_MOT_CLES_']['erreurs'][] = sprintf(MOCL_LG_ERREUR_MOTS_CATEG, $balise); |
} |
if (!isset($options['categorie'])) { |
$options['categorie'] = ''; |
} |
// Les conditions étant écrites en français, ce qui suit les traduit, "et" devient "AND" etc. |
$tab_condition_type = array('condition', 'mots_condition', 'categorie_condition'); |
foreach ($tab_condition_type as $type) { |
if (isset($options[$type])) { |
if (strtolower($options[$type]) == 'et') { |
$options[$type] = 'AND'; |
} elseif (strtolower($options[$type]) == 'ou') { |
$options[$type] = 'OR'; |
} |
} |
} |
if (!isset($options['mots_condition']) && isset($options['condition'])) { |
$options['mots_condition'] = $options['condition']; |
} |
if (!isset($options['categorie_condition']) && isset($options['condition'])) { |
$options['categorie_condition'] = $options['condition']; |
} |
if (!isset($options['categorie_condition']) && !isset($options['condition']) && isset($options['mots_condition'])) { |
$options['categorie_condition'] = $options['mots_condition']; |
} |
if (!isset($options['ordre'])) { |
$options['ordre'] = 'ASC'; |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
// Récupération des infos sur les mots |
$tab_mots = explode(',', $options['mots']); |
for ($i = 0; $i < count($tab_mots); $i++) { |
// Suppression des espaces, tabulations... en début et fin de chaine |
$tab_mots[$i] = trim($tab_mots[$i]); |
} |
// Récupération des infos sur les catégories |
$tab_cat = explode(',', $options['categorie']) ; |
for ($i = 0; $i < count($tab_cat); $i++) { |
// Suppression des espaces, tabulations... en début et fin de chaine |
$tab_cat[$i] = trim($tab_cat[$i]); |
} |
$aso_info_menu = GEN_lireInfoMenuMeta($GLOBALS['_GEN_commun']['pear_db'], $tab_mots, $tab_cat, $options['mots_condition'], $options['categorie_condition'], $options['ordre']); |
if (count($aso_info_menu) == 0) { |
$GLOBALS['_MOT_CLES_']['informations'][] = sprintf(CATEG_LG_INFO_ZERO_PAGE, $options['mots']); |
} else { |
foreach ($aso_info_menu as $id_menu => $un_menu) { |
// Initialisation |
$aso_page = array(); |
$aso_page['url'] = '#'; |
$aso_page['auteur'] = MOCL_LG_INCONNU_AUTEUR; |
$aso_page['titre'] = MOCL_LG_INCONNU_TITRE; |
$aso_page['heure'] = ''; |
$aso_page['minute'] = ''; |
$aso_page['seconde'] = ''; |
$aso_page['jours'] = ''; |
$aso_page['mois'] = ''; |
$aso_page['annee'] = ''; |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($id_menu); |
$aso_page['url'] = $une_url->getURL(); |
// Affichage de l'auteur(s) |
if ($un_menu->gm_auteur != '') { |
$aso_page['auteur'] = $un_menu->gm_auteur; |
} |
// Affichage du titre |
if ($un_menu->gm_titre != '') { |
$aso_page['titre'] = $un_menu->gm_titre; |
} |
// Affichage de l'horaire de la création de la page |
if (($heure = date('G', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['heure'] = $heure; |
$minute = date('i', strtotime($un_menu->gm_date_creation)); |
$aso_page['minute'] = $minute; |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['seconde'] = $seconde; |
} |
} |
// Affichage de la date de la création de la page |
if (($jour = date('d', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['jour'] = $jour; |
} |
if (($mois = _traduireMois(date('m', strtotime($un_menu->gm_date_creation))) ) != '' ) { |
$aso_page['mois'] = $mois; |
} |
if (($annee = date('Y', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['annee'] = $annee; |
} |
$GLOBALS['_MOT_CLES_']['pages'][] = $aso_page; |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_MOT_CLES_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(MOCL_CHEMIN_SQUELETTE.MOCL_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
if (!function_exists('_traduireMois')) { |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return MOCL_LG_MOIS_01; |
case '02' : |
return MOCL_LG_MOIS_02; |
case '03' : |
return MOCL_LG_MOIS_03; |
case '04' : |
return MOCL_LG_MOIS_04; |
case '05' : |
return MOCL_LG_MOIS_05; |
case '06' : |
return MOCL_LG_MOIS_06; |
case '07' : |
return MOCL_LG_MOIS_07; |
case '08' : |
return MOCL_LG_MOIS_08; |
case '09' : |
return MOCL_LG_MOIS_09; |
case '10' : |
return MOCL_LG_MOIS_10; |
case '11' : |
return MOCL_LG_MOIS_11; |
case '12' : |
return MOCL_LG_MOIS_12; |
default: |
return ''; |
} |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/12/12 13:32:27 jp_milcent |
* Ajout de l'applette MotCles. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/mot_cles/langues/mocl_langue_fr.inc.php |
---|
New file |
0,0 → 1,90 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: mocl_langue_fr.inc.php,v 1.1 2006-12-12 13:32:27 jp_milcent Exp $ |
/** |
* papyrus_bp - mocl_langue_fr.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-12 13:32:27 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "mots" est abscent.*/ |
define('MOCL_LG_ERREUR_MOTS', "Applette MOT CLES : le paramètre 'mots' est obligatoire!"); |
/** Texte affiché quand le paramètre "categorie_condition" est présent avec "categorie" abscent.*/ |
define('MOCL_LG_ERREUR_MOTS_CATEG', "Applette MOT CLES : le paramètre 'categorie' est obligatoire si vous renseignez 'categorie_condition' dans %s !"); |
/** Texte affiché quand on n'a pas de page à afficher.*/ |
define('MOCL_LG_INFO_ZERO_PAGE', "Applette MOT CLES : aucune page n'a été trouvé pour : %s !"); |
/** Texte affiché quand l'auteur est inconnu.*/ |
define('MOCL_LG_INCONNU_AUTEUR', 'Anonyme'); |
/** Texte affiché quand le titre est vide.*/ |
define('MOCL_LG_INCONNU_TITRE', 'Titre inconnu'); |
/** Mois de janvier.*/ |
define('MOCL_LG_MOIS_01', 'janvier'); |
/** Mois de février.*/ |
define('MOCL_LG_MOIS_02', 'février'); |
/** Mois de mars.*/ |
define('MOCL_LG_MOIS_03', 'mars'); |
/** Mois d'avril.*/ |
define('MOCL_LG_MOIS_04', 'avril'); |
/** Mois de mai.*/ |
define('MOCL_LG_MOIS_05', 'mai'); |
/** Mois de juin.*/ |
define('MOCL_LG_MOIS_06', 'juin'); |
/** Mois de juillet.*/ |
define('MOCL_LG_MOIS_07', 'juillet'); |
/** Mois d'août'.*/ |
define('MOCL_LG_MOIS_08', 'août'); |
/** Mois de septembre.*/ |
define('MOCL_LG_MOIS_09', 'septembre'); |
/** Mois d'octobre.*/ |
define('MOCL_LG_MOIS_10', 'octobre'); |
/** Mois de novembre.*/ |
define('MOCL_LG_MOIS_11', 'novembre'); |
/** Mois de décembre.*/ |
define('MOCL_LG_MOIS_12', 'décembre'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/mot_cles/squelettes/mocl_liste.tpl.html |
---|
New file |
0,0 → 1,32 |
<!-- MOT CLES - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php else : ?> |
<ul class="page_liste"> |
<?php foreach ($pages as $page) : ?> |
<li> |
<span class="page_auteur"><?=$page['auteur'];?></span> |
<span class="page_separateur_auteur"> - </span> |
<a href="<?=$page['url'];?>"><span class="page_titre"><?=$page['titre'];?></span></a> |
<span class="page_separateur_titre"> - </span> |
<span class="page_creation_heure"><?=$page['heure'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_minute"><?=$page['minute'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_seconde"><?=$page['seconde'];?></span> |
<span class="page_separateur_date_heure"> - </span> |
<span class="page_creation_jour"><?=$page['jour'];?></span> |
<span class="page_creation_mois"><?=$page['mois'];?></span> |
<span class="page_creation_annee"><?=$page['annee'];?></span> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif; ?> |
<!-- MOT CLES - FIN --> |
/branches/livraison_aha/papyrus/applettes/lien/configuration/lien_configuration.inc.php |
---|
New file |
0,0 → 1,89 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: lien_configuration.inc.php,v 1.1 2006-12-08 20:08:59 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Lien |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-08 20:08:59 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_LIEN_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette LIEN.*/ |
define('LIEN_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('LIEN_CHEMIN_BIBLIOTHEQUE_PEAR', PAP_CHEMIN_API_PEAR); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Lien de Papyrus.*/ |
define('LIEN_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'lien'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Lien de Papyrus.*/ |
define('LIEN_CHEMIN_LANGUE', LIEN_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Lien de Papyrus.*/ |
define('LIEN_CHEMIN_BIBLIO', LIEN_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Lien de Papyrus.*/ |
define('LIEN_CHEMIN_SQUELETTE', LIEN_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('LIEN_SQUELETTE_LISTE', 'lien.tpl.html'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/lien/lien.php |
---|
New file |
0,0 → 1,184 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: lien.php,v 1.1 2006-12-08 20:08:59 jp_milcent Exp $ |
/** |
* papyrus_bp - lien.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-08 20:08:59 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherLien'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Ll]ien(?:\s*(?:((?:menu|site)="[^"]+")|(titre="[^"]+")|))+\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'lien'.GEN_SEP.'configuration'.GEN_SEP.'lien_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette LIEN de Papyrus |
if (file_exists(LIEN_CHEMIN_LANGUE.'lien_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once LIEN_CHEMIN_LANGUE.'lien_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once LIEN_CHEMIN_LANGUE.'lien_langue_'.LIEN_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherLien() - Retourne le lien d'un menu ou d'un site. |
* |
* Cette fonction retourne un lien vers un menu ou un site. Le lien est créé dynamiquement et donc toujours à jour. |
* Il est possible d'utiliser les code numérique ou alphanumérique. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string XHTML le lien. |
*/ |
function afficherLien($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_LIEN_']['url'] = ''; |
$GLOBALS['_LIEN_']['titre'] = LIEN_LG_ERREUR_TITRE; |
$GLOBALS['_LIEN_']['erreurs'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
if (!isset($options['menu']) && !isset($options['site']) ) { |
$GLOBALS['_LIEN_']['erreur'] = LIEN_LG_ERREUR_SITE_MENU; |
} else { |
if (isset($options['menu'])) { |
$niveau = 'menu'; |
$identifiant = $options['menu']; |
} else if (isset($options['site'])) { |
$niveau = 'site'; |
$identifiant = $options['site']; |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
$bdd =& $GLOBALS['_GEN_commun']['pear_db']; |
$id_langue = $GLOBALS['_GEN_commun']['i18n']; //identifiant de la langue choisie |
if (isset($id_langue) && ($id_langue != '')) { |
$langue_url = $id_langue; |
} else { |
$langue_url = GEN_I18N_ID_DEFAUT; |
} |
$une_url =& new Pap_URL(); |
// Les sites |
if ($niveau == "site") { |
if (preg_match('/^[0-9]+$/', $identifiant)) { |
$aso_site = GEN_lireInfoSiteI18nCodeAlpha($bdd, GEN_retournerSiteCodeAlpha($bdd, $identifiant), $langue_url, DB_FETCHMODE_ASSOC); |
} else { |
$aso_site = GEN_lireInfoSiteI18nCodeAlpha($bdd, $identifiant, $langue_url, DB_FETCHMODE_ASSOC); |
} |
if (isset($options['titre'])) { |
$GLOBALS['_LIEN_']['titre'] = $options['titre']; |
} else { |
if (!empty($aso_site['gs_titre'])) { |
$GLOBALS['_LIEN_']['titre'] = $aso_site['gs_titre']; |
} else { |
$GLOBALS['_LIEN_']['titre'] = $aso_site['gs_nom']; |
} |
} |
$une_url->setUrlType('SITE'); |
$une_url->setId($aso_site['gs_id_site']); |
} |
// Les menus |
if ($niveau == "menu") { |
if (preg_match('/^[0-9]+$/', $identifiant)) { |
$aso_menu = GEN_lireInfoMenu($bdd, GEN_retournerIdMenuParCodeNum($bdd, $identifiant), DB_FETCHMODE_ASSOC); |
} else { |
$aso_menu = GEN_lireInfoMenu($bdd, GEN_retournerIdMenuParCodeNum($bdd, GEN_retournerMenuCodeNum($bdd, $identifiant)), DB_FETCHMODE_ASSOC); |
} |
if (isset($options['titre'])) { |
$GLOBALS['_LIEN_']['titre'] = $options['titre']; |
} else { |
if (!empty($aso_menu['gm_titre'])) { |
$GLOBALS['_LIEN_']['titre'] = $aso_menu['gm_titre']; |
} elseif (!empty($aso_menu['gm_titre_alternatif'])) { |
$GLOBALS['_LIEN_']['titre'] = $aso_menu['gm_titre_alternatif']; |
} elseif (!empty($aso_menu['gm_nom'])) { |
$GLOBALS['_LIEN_']['titre'] = $aso_menu['gm_nom']; |
} |
} |
$une_url->setId($aso_menu['gm_id_menu']); |
} |
if ($langue_url != GEN_I18N_ID_DEFAUT) { |
$une_url->addQueryString(GEN_URL_CLE_I18N, $langue_url); |
} |
$GLOBALS['_LIEN_']['url'] = $une_url->getURL(); |
$GLOBALS['_LIEN_']['titre'] = htmlentities($GLOBALS['_LIEN_']['titre']); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_LIEN_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(LIEN_CHEMIN_SQUELETTE.LIEN_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/lien/langues/lien_langue_fr.inc.php |
---|
New file |
0,0 → 1,74 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: lien_langue_fr.inc.php,v 1.1 2006-12-08 20:08:59 jp_milcent Exp $ |
/** |
* papyrus |
* |
* Description... |
* |
*@package Applette |
*@subpackage Lien |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-08 20:08:59 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "menu" ou "site" est abscent.*/ |
define('LIEN_LG_ERREUR_SITE_MENU', "Applette LIEN : le paramètre 'site' ou 'menu' est obligatoire dans '%s' !"); |
/** Texte affiché quand aucun titre n'est trouvé.*/ |
define('LIEN_LG_ERREUR_TITRE', "page sans nom"); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/lien/squelettes/lien.tpl.html |
---|
New file |
0,0 → 1,9 |
<?php if ($erreurs) : ?> |
<!-- LIEN - DEBUT --> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<!-- LIEN - FIN --> |
<?php else : ?> |
<a href="<?=$url;?>"><?=$titre;?></a> |
<?php endif; ?> |
/branches/livraison_aha/papyrus/applettes/redirection/configuration/redi_configuration.inc.php |
---|
New file |
0,0 → 1,69 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: redi_configuration.inc.php,v 1.1 2006-12-13 10:52:30 jp_milcent Exp $ |
/** |
* papyrus_bp - redi_configuration.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 10:52:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_REDIRECTION_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette REDI.*/ |
define('REDI_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Redirection de Papyrus.*/ |
define('REDI_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'redirection'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Redirection de Papyrus.*/ |
define('REDI_CHEMIN_LANGUE', REDI_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Redirection de Papyrus.*/ |
define('REDI_CHEMIN_SQUELETTE', REDI_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour les erreurs.*/ |
define('REDI_SQUELETTE_PRINCIPAL', 'redi_erreur.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/redirection/redirection.php |
---|
New file |
0,0 → 1,135 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: redirection.php,v 1.1 2006-12-13 10:52:30 jp_milcent Exp $ |
/** |
* papyrus_bp - redirection.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 10:52:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'lancerRedirection'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Rr]edirection'. |
'(?:\s*'. |
'(?:'. |
'(url="[^"]*")|'. |
')'. |
')+'. |
'\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'redirection'.GEN_SEP.'configuration'.GEN_SEP.'redi_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette REDI de Papyrus |
if (file_exists(REDI_CHEMIN_LANGUE.'redi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once REDI_CHEMIN_LANGUE.'redi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once REDI_CHEMIN_LANGUE.'redi_langue_'.REDI_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction lancerRedirection() - Redirige vers une nouvelle URL. |
* |
* Cette fonction redirige l'utilisateur vers une nouvelle url. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return null on est redirigé. |
*/ |
function lancerRedirection($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_REDIRECTION_']['erreurs'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$balise = $tab_applette_arguments[0]; |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
if (!isset($options['url'])) { |
$GLOBALS['_REDIRECTION_']['erreurs'][] = sprintf(REDI_LG_ERREUR_URL, $balise); |
} |
if (isset($options['url']) && $options['url'] == '') { |
$GLOBALS['_REDIRECTION_']['erreurs'][] = sprintf(REDI_LG_ERREUR_URL_VIDE, $balise); |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Redirection |
if (count($GLOBALS['_REDIRECTION_']['erreurs']) == 0) { |
$options['url'] = preg_replace('/&/', '&', $options['url']); |
header('Location: '.$options['url']); |
exit(); |
} else { |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_REDIRECTION_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(REDI_CHEMIN_SQUELETTE.REDI_SQUELETTE_PRINCIPAL); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/redirection/langues/redi_langue_fr.inc.php |
---|
New file |
0,0 → 1,58 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: redi_langue_fr.inc.php,v 1.1 2006-12-13 10:52:30 jp_milcent Exp $ |
/** |
* papyrus_bp - redi_langue_fr.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 10:52:30 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "url" est abscent.*/ |
define('REDI_LG_ERREUR_URL', "Applette REDIRECTION : le paramètre 'url' est obligatoire dans %s !"); |
/** Texte affiché quand le paramètre "url" est vide.*/ |
define('REDI_LG_ERREUR_URL_VIDE', "Applette REDIRECTION : le paramètre 'url' doit être renseigné dans %s !"); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/redirection/squelettes/redi_erreur.tpl.html |
---|
New file |
0,0 → 1,7 |
<!-- REDIRECTION - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php endif; ?> |
<!-- REDIRECTION - FIN --> |
/branches/livraison_aha/papyrus/applettes/identification/configuration/iden_config.inc.php |
---|
New file |
0,0 → 1,80 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: iden_config.inc.php,v 1.3 2007-09-18 08:41:14 alexandre_tb Exp $ |
/** |
* Configuration de l'applette Identification. |
* |
* Fichier de configuration de l'applette Identification. |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.3 $ $Date: 2007-09-18 08:41:14 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette IDEN.*/ |
define('IDEN_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
/** Constante stockant la valeur de durée de la session.*/ |
define('IDEN_AUTH_SESSION_DUREE', PAP_AUTH_SESSION_DUREE); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Identification de Papyrus.*/ |
define('IDEN_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'identification'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Identification de Papyrus.*/ |
define('IDEN_CHEMIN_LANGUE', IDEN_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Identification de Papyrus.*/ |
define('IDEN_CHEMIN_BIBLIO', IDEN_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers le fichier squelette par defaut */ |
define ('IDEN_SQUELETTE_DEFAUT', 'identification.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/11/20 17:30:40 jp_milcent |
* Amélioration de la gestion de l'identification. |
* Utilisation des durées de session correcte. |
* Suppression du code pour Spip non fonctionnel. |
* |
* Revision 1.1 2005/03/15 14:18:49 jpm |
* Ajout d'un fichier de config. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/identification/langues/iden_langue_fr.inc.php |
---|
New file |
0,0 → 1,114 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: iden_langue_fr.inc.php,v 1.9 2006-11-20 18:39:22 jp_milcent Exp $ |
/** |
* Traduction de l'applette Identification : fr |
* |
* Fichier de traduction de l'applette Identification en français. |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.9 $ $Date: 2006-11-20 18:39:22 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Message de bienvenu de l'identification.*/ |
define('IDEN_LG_MESSAGE', 'Votre identité'); |
/** Message de la légende du formulaire demandant de s'identifier.*/ |
define('IDEN_LG_FORM_LEGEND', 'Identifiez vous'); |
/** Label du champ courriel.*/ |
define('IDEN_LG_FORM_LABEL_COURRIEL', 'Courriel : '); |
/** Valeur du champ courriel.*/ |
define('IDEN_LG_FORM_VALUE_COURRIEL', 'courriel'); |
/** Label du champ mot de passe.*/ |
define('IDEN_LG_FORM_LABEL_MDP', 'Mot de passe : '); |
/** Valeur du champ mot de passe.*/ |
define('IDEN_LG_FORM_VALUE_MDP', 'mot de passe'); |
/** Valeur du champ submit.*/ |
define('IDEN_LG_FORM_VALUE_SUBMIT', 'ok'); |
/** Message indiquant le lien vers la page d'inscription.*/ |
define('IDEN_LG_INSCRIPTION_URL', 'S\'inscrire... '); |
/** Message indiquant le lien vers la page d'aide de l'inscription.*/ |
define('IDEN_LG_INSCRIPTION_AIDE', 'Aide... '); |
/** Message indiquant le lien vers la page de modification de son inscription.*/ |
define('IDEN_LG_INSCRIPTION_URL_MODIF', 'Modifier votre inscription...'); |
/** Message indiquant le lien pour se déconnecter.*/ |
define('IDEN_LG_DECONNEXION', 'Déconnexion'); |
/** Message d'échec d'authentification */ |
define ('IDEN_ECHEC_AUTH', 'Mot de passe perdu ? ') ; |
/** Message ici */ |
define ('IDEN_ICI', 'Cliquer ici') ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.8 2006/11/20 17:30:40 jp_milcent |
* Amélioration de la gestion de l'identification. |
* Utilisation des durées de session correcte. |
* Suppression du code pour Spip non fonctionnel. |
* |
* Revision 1.7 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.6 2005/12/13 11:13:52 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.5.2.1 2005/12/20 14:40:25 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.6 2005/12/13 11:13:52 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.5 2005/06/09 17:06:28 jpm |
* Ajout de constantes de langue. |
* |
* Revision 1.4 2005/06/02 11:56:00 jpm |
* Modification de l'affichage de l'identification. |
* |
* Revision 1.3 2005/04/14 16:37:27 jpm |
* Ajout de la gestion de la modification de son inscription. |
* |
* Revision 1.2 2005/03/25 14:41:04 jpm |
* Modification et ajout de constantes. |
* |
* Revision 1.1 2005/03/15 14:19:32 jpm |
* Ajout d'un fichier de traduction. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/identification/langues/iden_langue_en.inc.php |
---|
New file |
0,0 → 1,112 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: iden_langue_en.inc.php,v 1.2 2006-11-20 18:39:22 jp_milcent Exp $ |
/** |
* Traduction de l'applette Identification : en |
* |
* Fichier de traduction de l'applette Identification en anglais |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.2 $ $Date: 2006-11-20 18:39:22 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Message de bienvenu de l'identification.*/ |
define('IDEN_LG_MESSAGE', 'You are'); |
/** Message de la légende du formulaire demandant de s'identifier.*/ |
define('IDEN_LG_FORM_LEGEND', 'Please log in'); |
/** Label du champ courriel.*/ |
define('IDEN_LG_FORM_LABEL_COURRIEL', 'Mail : '); |
/** Valeur du champ courriel.*/ |
define('IDEN_LG_FORM_VALUE_COURRIEL', 'mail'); |
/** Label du champ mot de passe.*/ |
define('IDEN_LG_FORM_LABEL_MDP', 'Password : '); |
/** Valeur du champ mot de passe.*/ |
define('IDEN_LG_FORM_VALUE_MDP', 'password'); |
/** Valeur du champ submit.*/ |
define('IDEN_LG_FORM_VALUE_SUBMIT', 'ok'); |
/** Message indiquant le lien vers la page d'inscription.*/ |
define('IDEN_LG_INSCRIPTION_URL', 'Register... '); |
/** Message indiquant le lien vers la page d'aide de l'inscription.*/ |
define('IDEN_LG_INSCRIPTION_AIDE', 'Help... '); |
/** Message indiquant le lien vers la page de modification de son inscription.*/ |
define('IDEN_LG_INSCRIPTION_URL_MODIF', 'Change parameters...'); |
/** Message indiquant le lien pour se déconnecter.*/ |
define('IDEN_LG_DECONNEXION', 'Logout'); |
/** Message d'échec d'authentification */ |
define ('IDEN_ECHEC_AUTH', 'Lost password ? ') ; |
/** Message ici */ |
define ('IDEN_ICI', 'Clic here') ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.7 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.6 2005/12/13 11:13:52 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.5.2.1 2005/12/20 14:40:25 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.6 2005/12/13 11:13:52 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.5 2005/06/09 17:06:28 jpm |
* Ajout de constantes de langue. |
* |
* Revision 1.4 2005/06/02 11:56:00 jpm |
* Modification de l'affichage de l'identification. |
* |
* Revision 1.3 2005/04/14 16:37:27 jpm |
* Ajout de la gestion de la modification de son inscription. |
* |
* Revision 1.2 2005/03/25 14:41:04 jpm |
* Modification et ajout de constantes. |
* |
* Revision 1.1 2005/03/15 14:19:32 jpm |
* Ajout d'un fichier de traduction. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/identification/squelettes/identification.tpl.html |
---|
New file |
0,0 → 1,46 |
<?php if ($loggue) : ?> |
<p id="identification_info"> |
<span id="identification_message"><?=IDEN_LG_MESSAGE;?></span> |
<?php if ($url_page_inscription) : ?> |
<a href="<?=$url_page_inscription;?>" id="voir_inscription" title="Voir mon inscription"> |
<?=$chp_personne_prenom; ?> <?=$chp_personne_nom; ?> <?=$chp_structure; ?> |
</a> |
<?php else : ?> |
<?=$chp_personne_prenom; ?> <?=$chp_personne_nom; ?> <?=$chp_structure; ?> |
<?php endif; ?> |
</p> |
<p id="iden_action"> |
<?php if ($url_page_modif_inscription) : ?> |
<a id="lien_inscription_modif" href="<?=$url_page_modif_inscription; ?>"> |
<?=IDEN_LG_INSCRIPTION_URL_MODIF;?> |
</a> |
<?php endif; ?> |
<a id="deconnexion" href="<?=$url_deconnect;?>"><?=IDEN_LG_DECONNEXION;?></a> |
</p> |
<?php else : ?> |
<form id="form_connexion" class="form_identification" action="<?=$url;?>" method="post"> |
<fieldset> |
<legend><?=IDEN_LG_FORM_LEGEND;?></legend> |
<label for="username"><?=IDEN_LG_FORM_LABEL_COURRIEL;?></label> |
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="<?=IDEN_LG_FORM_VALUE_COURRIEL;?>" /> |
<label for="password"><?=IDEN_LG_FORM_LABEL_MDP;?></label> |
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="<?=IDEN_LG_FORM_VALUE_MDP;?>" /> |
<input type="submit" id="connexion" name="connexion" tabindex="4" value="<?=IDEN_LG_FORM_VALUE_SUBMIT;?>" /> |
<?php if (IDEN_AUTH_SESSION_DUREE != 0) : ?> |
<input type="checkbox" id="persistant" name="persistant" tabindex="3" value="o" /> |
<label id="persistant_label" for="persistant">Mémoriser mon compte</label> |
<?php endif ;?> |
<?php if ($url_page_inscription || $url_inscription_aide) : ?> |
<p id="inscription_info"> |
<?php if ($url_page_inscription) : ?> |
<a id="lien_inscription" href="<?=$url_page_inscription;?>"><?=IDEN_LG_INSCRIPTION_URL;?></a> |
<?php endif ;?> |
<?php if ($url_inscription_aide) : ?> |
<a id="inscription_aide" href="<?=$url_inscription_aide;?>"><?=IDEN_LG_INSCRIPTION_AIDE;?></a></p> |
<?php endif; ?> |
</p> |
<?php endif; ?> |
</fieldset> |
</form> |
<?php endif; ?> |
/branches/livraison_aha/papyrus/applettes/identification/identification.php |
---|
New file |
0,0 → 1,351 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: identification.php,v 1.35 2007-10-11 14:14:22 florian Exp $ |
/** |
* Applette : identification |
* |
* Génère un formulaire les champs nécessaires pour s'identifier. |
* Nécessite : |
* - Variable globale de Génésia. |
* - Pear Auth |
* - Pear Net_URL |
* |
* A faire : remplacer le formulaire par un QuickForm |
* |
*@package Applette |
*@subpackage Identification |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.35 $ $Date: 2007-10-11 14:14:22 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherFormIdentification'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '(?:<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'(IDENTIFICATION) -->|'. |
'\{\{[Ii]dentification'. |
'(?:\s*'. |
'(?:'. |
'(template=".*")|'. |
')'. |
')+'. |
'\s*\}\})'; |
/** Inclusion du fichier de configuration de cette applette.*/ |
require_once GEN_CHEMIN_APPLETTE.'identification'.GEN_SEP.'configuration'.GEN_SEP.'iden_config.inc.php'; |
// Inclusion des fichiers de traduction de l'applette. |
if (file_exists(IDEN_CHEMIN_LANGUE.'iden_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once IDEN_CHEMIN_LANGUE.'iden_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once IDEN_CHEMIN_LANGUE.'iden_langue_'.IDEN_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Si le site utilise une authentification. |
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) { |
$cookie_persistant_nom = session_name().'-memo'; |
// Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur. |
if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']))) { |
$GLOBALS['_GEN_commun']['pear_auth']->logout(); |
// Destruction du cookie de session de Papyrus : est ce utile? |
setcookie(session_name(), session_id(), time()-3600, '/'); |
// Destruction du cookie de permanence de l'identitification de Papyrus |
setcookie($cookie_persistant_nom, '', time()-3600, '/'); |
//$GLOBALS['_GEN_commun']['pear_auth']->start(); |
} else { |
if (isset($_REQUEST['connexion'])) { |
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur. |
// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte" |
if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) { |
// Expiration si l'utilisateur ne referme pas son navigateur |
$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE); |
// Création d'un cookie pour rendre permanente l'identification de Papyrus |
$cookie_val = md5($_POST['password']).$_POST['username']; |
setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/'); |
} |
} else if (isset($_COOKIE[$cookie_persistant_nom])) { |
// Si un cookie existe, nous loggons l'utilisateur. |
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_persistant_nom], 0, 32 ); |
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_persistant_nom], 32); |
// Nous sommes obligés de crypter le mot de passe |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) { |
$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none'; |
} |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) { |
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none'; |
} |
} |
$GLOBALS['_GEN_commun']['pear_auth']->login(); |
//echo '<pre>'.print_r($GLOBALS['_GEN_commun']['pear_auth'], true).'</pre>'; |
} |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherFormIdentification() - Retourne une formulaire pour s'identifier. |
* |
* Retourne un formulaire d'identificatin ou de déconnexion suivant que l'utilisateur est |
* identifié ou pas. |
* |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction. |
* @param array tableau global de Papyrus. |
* @return string formulaire de connexion ou de déconnexion. |
*/ |
function afficherFormIdentification($tab_arguments, $_GEN_commun) |
{ |
// Extraction des arguments s il y a |
$balise = $tab_arguments[0]; |
$tab_arguments = $tab_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument, 2); |
if (isset($tab_parametres[1])) $options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
if (!isset($options['template'])) { |
$options['template'] = IDEN_CHEMIN_APPLETTE.'squelettes/'.IDEN_SQUELETTE_DEFAUT; |
} |
// Initialisation de variable. |
$retour = ''; |
$objet_pear_auth =& $_GEN_commun['pear_auth']; |
$objet_pear_db =& $_GEN_commun['pear_db']; |
$InfoAuthBdd =& $_GEN_commun['info_auth_bdd']; |
$objet_url =& $_GEN_commun['url']; |
$url = $objet_url->getURL(); |
$objet_url->addQueryString('logout', 1); |
$url_deconnect = $objet_url->getURL(); |
$objet_url->removeQueryString('logout'); |
// Récupération des valeurs pour le login et le mot de passe |
$mot_de_passe = (! isset($_POST['password'])) ? '' : $_POST['password']; |
$login = (! isset($_POST['username'])) ? '' : $_POST['username']; |
// ATTENTION : Partie à supprimer une fois les mise à jour effectué dans l'annuaire de Tela Botanica |
// Devrait être déplacer dans l'appli inscription de Tela. |
if (isset($InfoAuthBdd->gsab_nom_table) && $InfoAuthBdd->gsab_nom_table == 'annuaire_tela') { |
verification_mot_de_passe($objet_pear_db, $mot_de_passe, $login); |
if (isset($_POST['connexion'])) { |
$objet_pear_auth->login(); |
} |
} |
// L'utilisateur a essayé de s'identifier mais a échoué |
if ($login != '') { |
$retour .= '<span class="erreur">'.IDEN_ECHEC_AUTH ; |
$url_erreur = '#'; |
if (isset($InfoAuthBdd->url_erreur)) { |
$url_erreur = $InfoAuthBdd->url_erreur; |
} else if (isset($InfoAuthBdd->url_inscription)) { |
$url_erreur = $InfoAuthBdd->url_inscription; |
} |
$retour .= '<a id="lien_inscription" href="'.$url_erreur.'">'.IDEN_ICI.'</a>' ; |
$retour .= '</span>'."\n"; |
} |
$url_inscription_aide = ''; |
$url_page_inscription = ''; |
$url_page_modif_inscription = ''; |
if (isset($InfoAuthBdd->url_inscription)) { |
$url_page_inscription = $InfoAuthBdd->url_inscription; |
} |
if (isset($InfoAuthBdd->url_inscription_modif)) { |
$url_page_modif_inscription = $InfoAuthBdd->url_inscription_modif; |
} |
if (isset($InfoAuthBdd->url_inscription_aide)) { |
$url_inscription_aide = $InfoAuthBdd->url_inscription_aide; |
} |
$chp_personne_prenom=''; |
if (isset($InfoAuthBdd->chp_personne_prenom)) { |
$chp_personne_prenom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_prenom); |
} |
$chp_personne_nom=''; |
if (isset($InfoAuthBdd->chp_personne_nom)) { |
$chp_personne_nom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_nom); |
} |
$chp_structure=''; |
if (isset($InfoAuthBdd->chp_structure_nom)) { |
$chp_structure = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_structure_nom); |
} |
if ($objet_pear_auth->getAuth()) { $loggue = true; } else { $loggue = false; } |
ob_start(); |
include_once $options['template']; |
$retour = ob_get_contents(); |
// Arrete et detruit le buffer |
ob_end_clean(); |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.34 2007-09-18 08:40:54 alexandre_tb |
* modification de la balise identification pour permettre de preciser un template. |
* |
* Revision 1.33 2007-08-28 14:23:35 jp_milcent |
* Amélioration de la gestion des mots de passe perdus. |
* |
* Revision 1.32 2007-08-28 14:14:35 jp_milcent |
* Ajout de la gestion des erreurs d'identification. |
* |
* Revision 1.31 2006-12-15 14:49:47 jp_milcent |
* Correction bogue : le type de cryptage est stocké à 2 endroits... |
* |
* Revision 1.30 2006/12/14 15:01:05 jp_milcent |
* Utilisation d'un système permettant de mémoriser les idenitifications. |
* Passage à Auth 1.4.3 et DB 1.7.6. |
* |
* Revision 1.29 2006/12/12 13:53:54 jp_milcent |
* Mise en place du nouveau format des balises d'applette. |
* |
* Revision 1.28 2006/12/12 13:26:42 jp_milcent |
* Modification de la gestion de l'identification. Utilisation des variables de session. |
* |
* Revision 1.27 2006/12/08 18:14:57 jp_milcent |
* Correction bogue : l'identification ne tenait pas... |
* |
* Revision 1.26 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.25 2006/11/20 18:40:33 jp_milcent |
* Amélioration de la gestion des infos sur l'inscription. |
* Ajout du paramêtre url_inscription_aide permettant d'indiquer l'url vers une page d'aide sur l'inscription. |
* |
* Revision 1.24 2006/11/20 17:42:40 jp_milcent |
* Ajout d'un test activant ou pas la mémorisation de l'identification. |
* |
* Revision 1.23 2006/11/20 17:30:40 jp_milcent |
* Amélioration de la gestion de l'identification. |
* Utilisation des durées de session correcte. |
* Suppression du code pour Spip non fonctionnel. |
* |
* Revision 1.22 2006/09/21 15:25:17 jp_milcent |
* Nettoyage dans l'url de la querystring logout. |
* |
* Revision 1.21 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.20 2005/12/13 11:13:35 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.19.2.1 2005/12/20 14:40:24 ddelon |
* Fusion Head vers Livraison |
* |
* Revision 1.20 2005/12/13 11:13:35 alexandre_tb |
* ajout d'un message si l'identification échoue |
* |
* Revision 1.19 2005/10/31 17:09:28 ddelon |
* Suppression auth start suite à deconnexion ... attention aux effets de bord |
* |
* Revision 1.18 2005/09/27 09:07:32 ddelon |
* size applette et squelettes |
* |
* Revision 1.17 2005/09/12 09:17:17 alexandre_tb |
* utilisation de l'objet Net_URL pour ajouter la variable logout dans le lien de déconnexion |
* |
* Revision 1.16 2005/06/09 17:06:28 jpm |
* Ajout de constantes de langue. |
* |
* Revision 1.15 2005/06/02 11:56:00 jpm |
* Modification de l'affichage de l'identification. |
* |
* Revision 1.14 2005/05/19 14:00:58 jpm |
* Déplacement du menu de modif de l'inscription. |
* |
* Revision 1.13 2005/04/14 16:37:22 jpm |
* Ajout de la gestion de la modification de son inscription. |
* |
* Revision 1.12 2005/03/25 14:40:51 jpm |
* Prise en compte du paramêtre url_inscription permettant de faire figurer dans l'applette inscription un lien vers la page d'inscription. |
* |
* Revision 1.11 2005/03/17 15:52:17 jpm |
* Suppression d'un / causant un bogue. |
* |
* Revision 1.10 2005/03/15 14:47:14 jpm |
* Utilisation d'un lien à la place d'un formulaire pour la déconnexion. |
* |
* Revision 1.9 2005/03/15 14:17:46 jpm |
* Ajout d'un fichier de config et de traduction. |
* Début gestion des constantes de langue. |
* |
* Revision 1.8 2005/03/10 12:50:44 alex |
* remplacement de & par & |
* |
* Revision 1.7 2005/01/07 12:43:03 alex |
* réauction de la taille des champs texte à 12 |
* |
* Revision 1.6 2004/12/13 18:07:09 alex |
* désauthentification spip presque parfaite |
* |
* Revision 1.5 2004/09/23 14:31:12 jpm |
* Correction bogue sur l'identification de l'annuaire_tela. |
* |
* Revision 1.4 2004/09/23 10:53:44 jpm |
* Suppression de l'attribut size. Gestion via les css. |
* |
* Revision 1.3 2004/06/28 10:18:48 alex |
* suppression de balises <p> |
* |
* Revision 1.2 2004/06/21 07:37:30 alex |
* Modification d'un label |
* |
* Revision 1.1 2004/06/15 15:01:41 jpm |
* Changement de nom et d'arborescence de Genesia en Papyrus. |
* |
* Revision 1.5 2004/05/05 06:44:15 jpm |
* Complément des commentaires indiquant les paquetages nécessaire à l'applette. |
* |
* Revision 1.4 2004/05/03 11:18:55 jpm |
* Intégration de la variable globale de Génésia dans les arguments de la fonction de l'applette. |
* |
* Revision 1.3 2004/05/01 17:21:16 jpm |
* Ajout d'un fieldset et d'une légende au formulaire. |
* |
* Revision 1.2 2004/05/01 16:13:07 jpm |
* Ajout du nom de la balise de l'applette dans le code de l'applette. |
* |
* Revision 1.1 2004/05/01 11:42:01 jpm |
* Ajout de l'applette identification. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/plan/plan.php |
---|
New file |
0,0 → 1,225 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan.php,v 1.2 2006-12-13 10:53:36 jp_milcent Exp $ |
/** |
* papyrus_bp - plan.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.2 $ $Date: 2006-12-13 10:53:36 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherPlan'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Pp]lan'. |
'(?:\s*'. |
'(?:'. |
'(site="[^"]*")|'. |
'(permalien="[^"]*")|'. |
')'. |
')+'. |
'\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'plan'.GEN_SEP.'configuration'.GEN_SEP.'plan_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette PLAN de Papyrus |
if (file_exists(PLAN_CHEMIN_LANGUE.'plan_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once PLAN_CHEMIN_LANGUE.'plan_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once PLAN_CHEMIN_LANGUE.'plan_langue_'.PLAN_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherPlan() - Retourne la liste des pages du plan d'un site. |
* |
* Cette fonction retourne la liste des pages du plan d'un site. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string HTML la liste de menus. |
*/ |
function afficherPlan($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_PLAN_']['erreurs'] = array(); |
$GLOBALS['_PLAN_']['informations'] = array(); |
$GLOBALS['_PLAN_']['sites'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$balise = $tab_applette_arguments[0]; |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
if (!isset($options['site'])) { |
$GLOBALS['_PLAN_']['erreurs'][] = sprintf(PLAN_LG_ERREUR_SITE, $balise); |
} |
if (!isset($options['permalien'])) { |
$options['permalien'] = false; |
} |
if (isset($options['permalien']) && $options['permalien'] != '' && $options['permalien'] != 'oui' && $options['permalien'] != 'non') { |
$GLOBALS['_PLAN_']['erreurs'][] = sprintf(PLAN_LG_ERREUR_PERMALIEN, $balise); |
} else { |
if ($options['permalien'] == 'oui') { |
$options['permalien'] = true; |
} else if ($options['permalien'] == 'non') { |
$options['permalien'] = false; |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
if (count($GLOBALS['_PLAN_']['erreurs']) == 0) { |
$tab_site = array_map('trim', explode(',', $options['site'])); |
if (count($tab_site) == 0) { |
$GLOBALS['_PLAN_']['informations'][] = sprintf(PLAN_LG_INFO_ZERO_PAGE, $options['site']); |
} else { |
foreach ($tab_site as $cle => $site) { |
$aso_site_info = GEN_lireInfoSitePrincipalCodeAlpha($GLOBALS['_GEN_commun']['pear_db'], $site, DB_FETCHMODE_ASSOC); |
$aso_site['abreviation'] = $site; |
if (!empty($aso_site_info['gs_titre'])) { |
$titre = $aso_site_info['gs_titre']; |
} else { |
$titre = $aso_site_info['gs_nom']; |
} |
$aso_site['titre'] = htmlentities($titre); |
$url_site =& new Pap_URL(); |
$url_site->setUrlType('SITE'); |
$url_site->setId($aso_site_info['gs_id_site']); |
$aso_site['url'] = $url_site->getUrl(); |
$aso_menus = GEN_retournerTableauMenusSiteCodeAlpha($GLOBALS['_GEN_commun']['pear_db'], $site); |
$aso_site['pages'] = parserTableauMenus($aso_menus, $options['permalien']); |
$GLOBALS['_PLAN_']['sites'][] = $aso_site; |
} |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_PLAN_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(PLAN_CHEMIN_SQUELETTE.PLAN_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
function parserTableauMenus($aso_menus, $permalien) |
{ |
$aso_arbo_site = array(); |
foreach ($aso_menus as $menu_id => $menu_valeur) { |
if ( $menu_valeur['gm_date_fin_validite'] == '' |
|| $menu_valeur['gm_date_fin_validite'] == '0000-00-00 00:00:00' |
|| strtotime($menu_valeur['gm_date_fin_validite']) > time()) { |
// Initialisation |
$aso_page = array(); |
$aso_page['url'] = PLAN_LG_INCONNU_URL; |
$aso_page['nom'] = PLAN_LG_INCONNU_NOM; |
$aso_page['titre'] = PLAN_LG_INCONNU_TITRE; |
$aso_page['sous_menus'] = 'fermer'; |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($menu_id); |
$aso_page['url'] = $une_url->getURL(); |
// Construction de l'attribut title |
$title = ''; |
if (!empty($menu_valeur['gm_titre'])) { |
$title = $menu_valeur['gm_titre']; |
} elseif (!empty($menu_valeur['gm_titre_alternatif'])) { |
$title = $menu_valeur['gm_titre_alternatif']; |
} |
$aso_page['titre'] = htmlentities($title); |
// Le nom |
$aso_page['nom'] = htmlentities($menu_valeur['gm_nom']); |
// Nous affichons ou pas le permalien |
if ($permalien) { |
$une_url->setPermalienBool(true); |
$aso_page['permalien_url'] = $une_url->getURL(); |
$aso_page['permalien_nom'] = $une_url->getPermalien(); |
$une_url->setPermalienBool(false); |
} |
// Nous ajoutons les sous-menus s'il y en a. |
$retour = parserTableauMenus($menu_valeur['sous_menus'], $permalien); |
if (count($retour) != 0) { |
$aso_page['sous_menus'] = 'ouvrir_liste'; |
$aso_arbo_site[] = $aso_page; |
$aso_arbo_site = array_merge($aso_arbo_site, $retour); |
$aso_arbo_site[]['sous_menus'] = 'fermer_liste'; |
} else { |
$aso_arbo_site[] = $aso_page; |
} |
} |
} |
return $aso_arbo_site; |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/12/13 09:42:39 jp_milcent |
* Ajout de l'applette Plan. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/plan/configuration/plan_configuration.inc.php |
---|
New file |
0,0 → 1,71 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan_configuration.inc.php,v 1.1 2006-12-13 09:42:39 jp_milcent Exp $ |
/** |
* papyrus_bp - plan_configuration.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-13 09:42:39 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_PLAN_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette PLAN.*/ |
define('PLAN_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Plan de Papyrus.*/ |
define('PLAN_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'plan'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Plan de Papyrus.*/ |
define('PLAN_CHEMIN_LANGUE', PLAN_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Plan de Papyrus.*/ |
define('PLAN_CHEMIN_BIBLIO', PLAN_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Plan de Papyrus.*/ |
define('PLAN_CHEMIN_SQUELETTE', PLAN_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('PLAN_SQUELETTE_LISTE', 'plan_liste.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/plan/langues/plan_langue_fr.inc.php |
---|
New file |
0,0 → 1,70 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan_langue_fr.inc.php,v 1.2 2006-12-13 10:53:36 jp_milcent Exp $ |
/** |
* papyrus_bp - plan_langue_fr.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.2 $ $Date: 2006-12-13 10:53:36 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "permalien" est abscent.*/ |
define('PLAN_LG_ERREUR_PERMALIEN', "Applette PLAN : le paramètre 'permalien' peut prendre les valeurs 'oui' ou 'non' dans : %s !"); |
/** Texte affiché quand le type ne convient.*/ |
define('PLAN_LG_ERREUR_TYPE', "Applette PLAN : le paramètre 'type' peut prendre les valeurs 'majeure' ou 'mineure' dans : %s !"); |
/** Texte affiché quand on n'a pas de page à afficher.*/ |
define('PLAN_LG_INFO_ZERO_PAGE', "Applette PLAN : aucune page n'a été trouvée pour : %s !"); |
/** Texte affiché quand l'auteur est inconnu.*/ |
define('PLAN_LG_INCONNU_NOM', 'Anonyme'); |
/** Texte affiché quand le titre est vide.*/ |
define('PLAN_LG_INCONNU_TITRE', 'Titre inconnu'); |
/** Texte affiché quand l'url est inconnu.*/ |
define('PLAN_LG_INCONNU_URL', '#'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2006/12/13 09:42:39 jp_milcent |
* Ajout de l'applette Plan. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/plan/squelettes/plan_liste.tpl.html |
---|
New file |
0,0 → 1,35 |
<!-- PLAN - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php else : ?> |
<?php foreach ($sites as $site) : ?> |
<h2 class="plan_titre"><a href="<?=$site['url'];?>"><?=$site['titre'];?></a></h2> |
<ul class="plan_site"> |
<?php foreach ($site['pages'] as $page) : ?> |
<?php if ($page['sous_menus'] == 'fermer_liste') : ?> |
</ul> |
</li> |
<?php else : ?> |
<li class="plan_page"> |
<a href="<?=$page['url'];?>" title="<?=$page['titre'];?>"><?=$page['nom'];?></a> |
<?php if (isset($page['permalien_url'])) : ?> |
<span class="page_separateur_permalien"> - </span> |
<a class="plan_permalien" href="<?=$page['permalien_url'];?>"><?=$page['permalien_nom'];?></a> |
<?php endif; ?> |
<?php if ($page['sous_menus'] == 'ouvrir_liste') : ?> |
<ul> |
<?php elseif ($page['sous_menus'] == 'fermer') : ?> |
</li> |
<?php endif; ?> |
<?php endif; ?> |
<?php endforeach; ?> |
</ul> |
<?php endforeach; ?> |
<?php endif; ?> |
<!-- PLAN - FIN --> |
/branches/livraison_aha/papyrus/applettes/nouveaute/langues/nouv_langue_fr.inc.php |
---|
New file |
0,0 → 1,102 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: nouv_langue_fr.inc.php,v 1.3 2006-12-13 09:27:42 jp_milcent Exp $ |
/** |
* papyrus_bp - nouv_langue_fr.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.3 $ $Date: 2006-12-13 09:27:42 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Texte affiché quand le paramètre "nombre" est abscent.*/ |
define('NOUV_LG_ERREUR_NOMBRE', "Applette NOUVEAUTÉ : le paramètre 'nombre' est obligatoire dans %s !"); |
/** Texte affiché quand le type ne convient.*/ |
define('NOUV_LG_ERREUR_TYPE', "Applette NOUVEAUTÉ : le paramètre 'type' peut prendre les valeurs 'majeure' ou 'mineure' dans : %s !"); |
/** Texte affiché quand on n'a pas de page à afficher.*/ |
define('NOUV_LG_INFO_ZERO_PAGE', "Applette NOUVEAUTÉ : aucune page n'a été trouvée pour : %s !"); |
/** Texte affiché quand un champ est vide.*/ |
define('NOUV_LG_INCONNU_GENERAL', ' '); |
/** Texte affiché quand l'auteur est inconnu.*/ |
define('NOUV_LG_INCONNU_AUTEUR', 'Anonyme'); |
/** Texte affiché quand le titre est vide.*/ |
define('NOUV_LG_INCONNU_TITRE', 'Titre inconnu'); |
/** Texte affiché quand le titre est vide.*/ |
define('NOUV_LG_INCONNU_URL', '#'); |
/** Mois de janvier.*/ |
define('NOUV_LG_MOIS_01', 'janvier'); |
/** Mois de février.*/ |
define('NOUV_LG_MOIS_02', 'février'); |
/** Mois de mars.*/ |
define('NOUV_LG_MOIS_03', 'mars'); |
/** Mois d'avril.*/ |
define('NOUV_LG_MOIS_04', 'avril'); |
/** Mois de mai.*/ |
define('NOUV_LG_MOIS_05', 'mai'); |
/** Mois de juin.*/ |
define('NOUV_LG_MOIS_06', 'juin'); |
/** Mois de juillet.*/ |
define('NOUV_LG_MOIS_07', 'juillet'); |
/** Mois d'août'.*/ |
define('NOUV_LG_MOIS_08', 'août'); |
/** Mois de septembre.*/ |
define('NOUV_LG_MOIS_09', 'septembre'); |
/** Mois d'octobre.*/ |
define('NOUV_LG_MOIS_10', 'octobre'); |
/** Mois de novembre.*/ |
define('NOUV_LG_MOIS_11', 'novembre'); |
/** Mois de décembre.*/ |
define('NOUV_LG_MOIS_12', 'décembre'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/12/13 09:26:44 jp_milcent |
* Ajout d'une valeur pour les champs vides. |
* |
* Revision 1.1 2006/12/12 17:16:22 jp_milcent |
* Ajout de l'applette Nouveaute. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/nouveaute/squelettes/nouv_liste.tpl.html |
---|
New file |
0,0 → 1,42 |
<!-- NOUVEAUTE - DEBUT --> |
<?php if ($erreurs) : ?> |
<?php foreach ($erreurs as $erreur) : ?> |
<p class="pap_erreur"><?=$erreur;?></p> |
<?php endforeach; ?> |
<?php elseif ($informations) : ?> |
<?php foreach ($informations as $information) : ?> |
<p class="pap_info"><?=$information;?></p> |
<?php endforeach; ?> |
<?php else : ?> |
<ul class="page_liste"> |
<?php foreach ($pages as $page) : ?> |
<li class="page_modification_<?=$page['type'];?>"> |
<h2 class="page_titre"><a href="<?=$page['url'];?>"><span class="page_titre"><?=$page['titre'];?></span></a></h2> |
<dl> |
<dt class="page_auteur">Auteur(s) :</dt> |
<dd><?=$page['auteur'];?></dd> |
<dt class="page_contributeur">Contributeur(s) :</dt> |
<dd><?=$page['contributeur'];?></dd> |
<dt class="page_modification_date">Modifié le :</dt> |
<dd> |
<span class="page_creation_heure"><?=$page['heure'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_minute"><?=$page['minute'];?></span> |
<span class="page_separateur_heure">:</span> |
<span class="page_creation_seconde"><?=$page['seconde'];?></span> |
<span class="page_separateur_date_heure"> - </span> |
<span class="page_creation_jour"><?=$page['jour'];?></span> |
<span class="page_creation_mois"><?=$page['mois'];?></span> |
<span class="page_creation_annee"><?=$page['annee'];?></span> |
</dd> |
<dt class="page_description">Description :</dt> |
<dd><?=$page['description'];?></dd> |
<dt class="page_resumer_modification_">Résumer modification :</dt> |
<dd><?=$page['resumer'];?></dd> |
</dl> |
</li> |
<?php endforeach; ?> |
</ul> |
<?php endif; ?> |
<!-- NOUVEAUTE - FIN --> |
/branches/livraison_aha/papyrus/applettes/nouveaute/nouveaute.php |
---|
New file |
0,0 → 1,287 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: nouveaute.php,v 1.3 2006-12-13 09:27:42 jp_milcent Exp $ |
/** |
* papyrus_bp - nouveaute.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.3 $ $Date: 2006-12-13 09:27:42 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherNouveaute'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '\{\{[Nn]ouveaute'. |
'(?:\s*'. |
'(?:'. |
'(nombre="[^"]+")|'. |
'(categorie="[^"]+")|'. |
'(type="[^"]+")|'. |
'(site="[^"]+")|'. |
')'. |
')+'. |
'\s*\}\}'; |
// -------------------------------------------------------------------------------------------------------- |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLETTE.'nouveaute'.GEN_SEP.'configuration'.GEN_SEP.'nouv_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'applette NOUV de Papyrus |
if (file_exists(NOUV_CHEMIN_LANGUE.'nouv_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once NOUV_CHEMIN_LANGUE.'nouv_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once NOUV_CHEMIN_LANGUE.'nouv_langue_'.NOUV_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherNouveaute() - Retourne la liste des pages modifiées récement. |
* |
* Cette fonction retourne la liste des pages modifiées récement. |
* |
* @param array contient les arguments de la fonction. |
* @param array tableau global de Papyrus. |
* @return string HTML la liste de menus. |
*/ |
function afficherNouveaute($tab_applette_arguments, $_GEN_commun) |
{ |
// Initialisation des variables |
$sortie = ''; |
$GLOBALS['_NOUVEAUTE_']['erreurs'] = array(); |
$GLOBALS['_NOUVEAUTE_']['informations'] = array(); |
$GLOBALS['_NOUVEAUTE_']['pages'] = array(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des arguments |
$balise = $tab_applette_arguments[0]; |
$tab_arguments = $tab_applette_arguments; |
unset($tab_arguments[0]); |
foreach($tab_arguments as $argument) { |
if ($argument != '') { |
$tab_parametres = explode('=', $argument); |
$options[$tab_parametres[0]] = trim($tab_parametres[1], '"'); |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Gestion des erreurs de paramètrage |
if (!isset($options['nombre'])) { |
$GLOBALS['_NOUVEAUTE_']['erreurs'][] = sprintf(NOUV_LG_ERREUR_NOMBRE, $balise); |
} |
if (!isset($options['type'])) { |
$options['type'] = ''; |
} |
if (isset($options['type']) && $options['type'] != '' && $options['type'] != 'mineure' && $options['type'] != 'majeure') { |
$GLOBALS['_NOUVEAUTE_']['erreurs'][] = sprintf(NOUV_LG_ERREUR_TYPE, $balise); |
} else { |
if ($options['type'] == 'mineure') { |
$options['type'] = 1; |
} else if ($options['type'] == 'majeure') { |
$options['type'] = 2; |
} |
} |
if (!isset($options['site'])) { |
$options['site'] = ''; |
} |
if (!isset($options['categorie'])) { |
$options['categorie'] = ''; |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Récupération des données |
if (count($GLOBALS['_NOUVEAUTE_']['erreurs']) == 0) { |
$aso_info_menu = GEN_lireInfoMenuContenuDate($GLOBALS['_GEN_commun']['pear_db'], $options['type'], $options['site'], $options['categorie']); |
if (count($aso_info_menu) == 0) { |
$GLOBALS['_NOUVEAUTE_']['informations'][] = sprintf(NOUV_LG_INFO_ZERO_PAGE, $options['mots']); |
} else { |
$i = 0; |
foreach ($aso_info_menu as $id_menu => $un_menu) { |
// On stope l'affichage si le nombre de nouveauté demandé est atteint. |
if ($i == $options['nombre']) { |
break; |
} else { |
$i++; |
} |
// Initialisation |
$aso_page = array(); |
$aso_page['url'] = NOUV_LG_INCONNU_URL; |
$aso_page['auteur'] = NOUV_LG_INCONNU_AUTEUR; |
$aso_page['contributeur'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['titre'] = NOUV_LG_INCONNU_TITRE; |
$aso_page['heure'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['minute'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['seconde'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['jours'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['mois'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['annee'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['description'] = NOUV_LG_INCONNU_GENERAL; |
$aso_page['resumer'] = NOUV_LG_INCONNU_GENERAL; |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($id_menu); |
$aso_page['url'] = $une_url->getURL(); |
// Affichage du type de modification de la page |
if ($un_menu->gmc_ce_type_modification = 1) { |
$aso_page['type'] = 'mineure'; |
} elseif ($un_menu->gmc_ce_type_modification = 2) { |
$aso_page['type'] = 'majeure'; |
} |
// Affichage de l'auteur(s) |
if ($un_menu->gm_auteur != '') { |
$aso_page['auteur'] = $un_menu->gm_auteur; |
} |
// Affichage des contributeur(s) |
if (!empty($un_menu->gm_contributeur)) { |
$sortie .= '<dt class="page_contributeur"> Contributeur(s) : '.'</dt>'."\n"; |
$sortie .= '<dd>'.$un_menu->gm_contributeur.'</dd>'."\n"; |
$aso_page['contributeur'] = $un_menu->gm_contributeur; |
} |
// Affichage du titre |
if (!empty($un_menu->gm_titre)) { |
$aso_page['titre'] = $un_menu->gm_titre; |
} elseif (!empty($un_menu->gm_titre_alternatif)) { |
$aso_page['titre'] = $un_menu->gm_titre_alternatif; |
} else { |
$aso_page['titre'] = $un_menu->gm_nom; |
} |
// Affichage de l'horaire de la création de la page |
if (($heure = date('G', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['heure'] = $heure; |
$minute = date('i', strtotime($un_menu->gm_date_creation)); |
$aso_page['minute'] = $minute; |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['seconde'] = $seconde; |
} |
} |
// Affichage de la date de la création de la page |
if (($jour = date('d', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['jour'] = $jour; |
} |
if (($mois = _traduireMois(date('m', strtotime($un_menu->gm_date_creation))) ) != '' ) { |
$aso_page['mois'] = $mois; |
} |
if (($annee = date('Y', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$aso_page['annee'] = $annee; |
} |
// Affichage de la description |
if (!empty($un_menu->gm_description_libre)) { |
$aso_page['decription'] = $un_menu->gm_description_libre; |
} |
// Affichage du résumé de la modification |
if (!empty($un_menu->gmc_resume_modification)) { |
$aso_page['resumer'] = $un_menu->gmc_resume_modification; |
} |
$GLOBALS['_NOUVEAUTE_']['pages'][] = $aso_page; |
} |
} |
} |
//+----------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($GLOBALS['_NOUVEAUTE_']); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include(NOUV_CHEMIN_SQUELETTE.NOUV_SQUELETTE_LISTE); |
// Récupérer le contenu du buffer |
$sortie = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
//+----------------------------------------------------------------------------------------------------------------+ |
// Sortie |
return $sortie; |
} |
if (!function_exists('_traduireMois')) { |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return NOUV_LG_MOIS_01; |
case '02' : |
return NOUV_LG_MOIS_02; |
case '03' : |
return NOUV_LG_MOIS_03; |
case '04' : |
return NOUV_LG_MOIS_04; |
case '05' : |
return NOUV_LG_MOIS_05; |
case '06' : |
return NOUV_LG_MOIS_06; |
case '07' : |
return NOUV_LG_MOIS_07; |
case '08' : |
return NOUV_LG_MOIS_08; |
case '09' : |
return NOUV_LG_MOIS_09; |
case '10' : |
return NOUV_LG_MOIS_10; |
case '11' : |
return NOUV_LG_MOIS_11; |
case '12' : |
return NOUV_LG_MOIS_12; |
default: |
return ''; |
} |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/12/13 09:26:44 jp_milcent |
* Ajout d'une valeur pour les champs vides. |
* |
* Revision 1.1 2006/12/12 17:16:22 jp_milcent |
* Ajout de l'applette Nouveaute. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/nouveaute/configuration/nouv_configuration.inc.php |
---|
New file |
0,0 → 1,70 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 1999-2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of papyrus_bp. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: nouv_configuration.inc.php,v 1.1 2006-12-12 17:16:22 jp_milcent Exp $ |
/** |
* papyrus_bp - nouv_configuration.inc.php |
* |
* Description : |
* |
*@package papyrus_bp |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 1999-2006 |
*@version $Revision: 1.1 $ $Date: 2006-12-12 17:16:22 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_NOUVEAUTE_'] = array(); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'applette NOUV.*/ |
define('NOUV_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'applette |
/** Chemin vers l'applette Nouveauté de Papyrus.*/ |
define('NOUV_CHEMIN_APPLETTE', GEN_CHEMIN_APPLETTE.'nouveaute'.GEN_SEP); |
/** Chemin vers les fichiers de traduction de l'applette Nouveauté de Papyrus.*/ |
define('NOUV_CHEMIN_LANGUE', NOUV_CHEMIN_APPLETTE.'langues'.GEN_SEP); |
/** Chemin vers les fichiers de la bibliotheque de l'applette Nouveauté de Papyrus.*/ |
define('NOUV_CHEMIN_BIBLIO', NOUV_CHEMIN_APPLETTE.'bibliotheque'.GEN_SEP); |
/** Chemin vers les fichiers squelettes de l'applette Nouveauté de Papyrus.*/ |
define('NOUV_CHEMIN_SQUELETTE', NOUV_CHEMIN_APPLETTE.'squelettes'.GEN_SEP); |
// Configuration du rendu |
/** Nom du fichier de squelette à utiliser pour la liste des pages.*/ |
define('NOUV_SQUELETTE_LISTE', 'nouv_liste.tpl.html'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applettes/body_attributs/body_attributs.php |
---|
New file |
0,0 → 1,56 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 5.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2006 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Ce logiciel est un programme informatique servant à gérer du contenu et des applications web. | | |
// | | |
// | Ce logiciel est régi par la licence CeCILL soumise au droit français et respectant les principes de | |
// | diffusion des logiciels libres. Vous pouvez utiliser, modifier et/ou redistribuer ce programme sous | |
// | les conditions de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site | |
// | "http://www.cecill.info". | |
// | | |
// | En contrepartie de l'accessibilité au code source et des droits de copie, de modification et de | |
// | redistribution accordés par cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. | |
// | Pour les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du programme, le | |
// | titulaire des droits patrimoniaux et les concédants successifs. | |
// | | |
// | A cet égard l'attention de l'utilisateur est attirée sur les risques associés au chargement, à | |
// | l'utilisation, à la modification et/ou au développement et à la reproduction du logiciel par | |
// | l'utilisateur étant donné sa spécificité de logiciel libre, qui peut le rendre complexe à manipuler | |
// | et qui le réserve donc à des développeurs et des professionnels avertis possédant des connaissances | |
// | informatiques approfondies. Les utilisateurs sont donc invités à charger et tester l'adéquation | |
// | du logiciel à leurs besoins dans des conditions permettant d'assurer la sécurité de leurs systèmes | |
// | et ou de leurs données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes conditions | |
// | de sécurité. | |
// | | |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la | |
// | licence CeCILL, et que vous en avez accepté les termes. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id $ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = 'afficherAttributsBody'; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'BODY_ATTRIBUTS -->'; |
function afficherAttributsBody() |
{ |
global $_GEN_commun; |
$html = ""; |
if(!isset($_GEN_commun['attributs_body'])) |
return; |
foreach($_GEN_commun['attributs_body'] as $attribut => $valeur) |
{ |
$html .= " ".$attribut.'="'.$valeur .'"'; |
} |
return($html); |
} |
?> |
/branches/livraison_aha/papyrus/applettes/vous_etes_ici/vous_etes_ici.php |
---|
New file |
0,0 → 1,246 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: vous_etes_ici.php,v 1.13 2007-05-24 16:51:55 jp_milcent Exp $ |
/** |
* Applette : Vous Etes Ici |
* |
* Affiche les liens contenant la suite des menus visités pour arriver |
* au menu courant visioné par l'utilisateur. |
* Nécessite : |
* - Constantes et variable de Papyrus. |
* - Base de données de Papyrus |
* - Pear Net_URL |
* - Pear DB |
* - API Débogage 1.0 |
* |
*@package Applette |
*@subpackage Vous_Etes_Ici |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.13 $ $Date: 2007-05-24 16:51:55 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Inclusion de la bibliothèque defonction sur les menu : inutile car inclue par Papyrus |
// require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php'; |
$GLOBALS['_VEI_']['nom_fonction'] = 'afficherVousEtesIci'; |
$GLOBALS['_GEN_commun']['info_applette_nom_fonction'] = $GLOBALS['_VEI_']['nom_fonction']; |
$GLOBALS['_GEN_commun']['info_applette_balise'] = '(?:<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe'].'(VOUS_ETES_ICI) -->|'. |
'\{\{[Vv]ousEtesIci\s*\}\})'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherVousEtesIci() - Déploie le "vous êtes ici" d'un menu. |
* |
* Affiche la suite des menus visité, sous forme de lien, pour arriver |
* au menu courant visioné par l'utilisateur. |
* Necessite : |
* - Constantes et variable de Papyrus. |
* - Pear Net_URL |
* - Pear DB |
* |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction. |
* @param array tableau global de Papyrus. |
* @param int identifiant du menu courant qui représentent la fin du "vous êtes ici". |
* @param boolean indique que nous avons à faire au premier appel de cette fonction récursive. |
* @return string une liste de listes XHTML représentant le plan du site. |
*/ |
function afficherVousEtesIci($tab_arguments, $_GEN_commun, $menu_courant_id = '', $premier_appel = true) |
{ |
// Initialisation de variable. |
$objet_pear_db =& $_GEN_commun['pear_db']; |
$vei_numero = $GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_VEI_']['nom_fonction']]; |
if (isset($_GEN_commun['info_menu']->gm_id_menu)) { |
(empty($menu_courant_id)) ? $menu_courant_id = $_GEN_commun['info_menu']->gm_id_menu : ''; |
} |
$vei = ''; |
// Gestion des erreurs |
if (empty($menu_courant_id)) { |
if (isset($GLOBALS['_VEI_']['usurpation'])) { |
$vei = $GLOBALS['_VEI_']['usurpation']; |
} |
return $vei; |
} |
// Début contruction du vei |
$menu_pere_id = GEN_lireIdentifiantMenuPere($menu_courant_id, $objet_pear_db); |
// Récupération des infos sur sur l'entrée du menu à afficher |
// GEN_I18N_ID_DEFAUT; |
$id_langue = $_GEN_commun['i18n']; |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test = GEN_I18N_ID_DEFAUT; |
} |
$requete_traduction = 'SELECT gmr_id_menu_02, gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE '.$menu_courant_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_menu_02 = gm_id_menu '. |
'AND gmr_id_valeur = 2 '.// 2 = "avoir traduction" |
'AND gm_ce_i18n = "'.$langue_test.'" '; |
$resultat_traduction = $objet_pear_db->query($requete_traduction); |
(DB::isError($resultat_traduction)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
if ($resultat_traduction->numRows() > 0) { |
$ligne_resultat_traduction=$resultat_traduction->fetchRow(DB_FETCHMODE_ASSOC); |
$menu_courant_id=$ligne_resultat_traduction['gmr_id_menu_02']; |
} |
$menu_info = GEN_lireInfoMenu($objet_pear_db, $menu_courant_id, DB_FETCHMODE_ASSOC); |
// Préparation d'une entrée dans la liste du menu |
$menu_nom = htmlentities($menu_info['gm_nom']); |
$menu_hreflang = htmlentities($menu_info['gm_ce_i18n']); |
$menu_accesskey = ''; |
$raccourci_txt = ''; |
if (($menu_accesskey = htmlentities($menu_info['gm_raccourci_clavier'])) != '') { |
$raccourci_txt = '(Raccourci : '.$menu_accesskey.' ).'; |
$menu_accesskey = 'accesskey="'.$menu_accesskey.'" '; |
} |
$menu_texte_title = ''; |
if (($menu_texte_title = htmlentities($menu_info['gm_description_resume'])) != '') { |
$menu_texte_title = 'title="'.$raccourci_txt.$menu_texte_title.'" ';; |
} |
// Création de l'url du menu courant |
$une_url =& new Pap_URL(PAP_URL); |
$une_url->setId($menu_courant_id); |
$menu_url = $une_url->getURL(); |
if ($menu_pere_id != 0) { |
// Ce n'est pas le menu racine : nous continuons |
$vei .= '<a id="vei_menu_'.$vei_numero.'_'.$menu_courant_id.'" href="'.$menu_url.'" '; |
$vei .= 'hreflang="'.$menu_hreflang.'" '.$menu_texte_title.$menu_accesskey.'>'.$menu_nom.'</a> >>> '."\n"; |
$vei .= afficherVousEtesIci($tab_arguments, $_GEN_commun, $menu_pere_id, false); |
} else { |
// C'est le menu racine : nous nous arrêtons |
$vei .= '<a id="vei_menu_'.$vei_numero.'_'.$menu_courant_id.'" href="'.$menu_url.'" '; |
$vei .= 'hreflang="'.$menu_hreflang.'" '.$menu_texte_title.$menu_accesskey.'>'.$menu_nom.'</a>'."\n"; |
} |
// Retour du VEI après la recherche récursive des liens |
if ($premier_appel) { |
$tab_vei = explode(' >>> ', $vei); |
// Récupération des liens pour les inverser et créer le VEI |
$retour = ''; |
for ($i = (count($tab_vei) - 1); $i >= 0 ;$i--) { |
if ($i == 0) { |
// Supprime le lien pour le nom du menu courant |
$tab_txt_capture=''; |
preg_match("/>(.*)<\/a>/", $tab_vei[$i], $tab_txt_capture); |
$retour .= $tab_txt_capture[1]; |
} else { |
$retour .= $tab_vei[$i]; |
} |
// Ajout du séparateur |
$retour .= ($i != 0) ? "\n".'<span class="separateur_vei"> > </span>'."\n" : '' ; |
} |
// Retour de la chaine de liens et de textes du VEI |
return $retour; |
} |
return $vei; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.12 2006-12-12 13:53:54 jp_milcent |
* Mise en place du nouveau format des balises d'applette. |
* |
* Revision 1.11 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.10 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.9 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.8.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.8 2005/09/26 20:18:27 ddelon |
* Appli projet : php5 et generalisation |
* |
* Revision 1.7 2005/09/23 14:21:18 florian |
* compatibilité XHTML |
* |
* Revision 1.6 2005/04/14 16:38:02 jpm |
* Ajout de la gestion des URL avec la classe Pap_URL de Papyrus. |
* |
* Revision 1.5 2004/12/06 19:39:57 jpm |
* Gestion de l'usurpation de VEI. |
* |
* Revision 1.4 2004/11/10 19:41:27 jpm |
* Correction bogue quand pas de menu par défaut. |
* |
* Revision 1.3 2004/09/23 17:57:19 jpm |
* La page active n'est pas afficher sous forme de lien mais sous forme de texte. |
* |
* Revision 1.2 2004/07/06 17:07:21 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/15 15:06:25 jpm |
* Changement de nom et d'arborescence de Genesia en Papyrus. |
* |
* Revision 1.4 2004/05/05 14:33:19 jpm |
* Gestion de l'indication de langue dans l'url. |
* Utile que si on veut forcer la langue. |
* |
* Revision 1.2 2004/05/05 06:44:33 jpm |
* Complément des commentaires indiquant les paquetages nécessaire à l'applette. |
* |
* Revision 1.1 2004/05/05 06:39:18 jpm |
* Transformation en applette de la fonction générant le "vous êtes ici". |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/installation/papyrus_v0.24.sql |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/installation/papyrus_v0.24.sql |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/pap_cache.inc.php |
---|
New file |
0,0 → 1,127 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_cache.inc.php,v 1.4 2007-04-13 09:41:09 neiluj Exp $ |
/** |
* Gestion de la suppression et de la recherche dans le cache. |
* |
* Ce fichier n'est utilisé que si le site utilise la gestion du cache proposée |
* par Papyrus. |
* Il commence par supprimer les pages en cache trop anciennes et recherche en suite |
* la présence de la page demandée dans le cache. Si elle est trouvée la page est renvoyée |
* directement et le programme s'arrête ici. Si elle n'est pas trouvée, le programme de rendu |
* la reconstruit et le programme d'envoi la sotcke dans le cache. |
* |
*@package Papyrus |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ $Date: 2007-04-13 09:41:09 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** <BR> Inclusion de la bibliothèque de fonctions de gestion du cache.*/ |
include_once './bibliotheque/fonctions/pap_cache.fonct.php'; |
/** <BR> Inclusion de la bibliothèque de fonctions de compression des données à envoyer.*/ |
include_once './bibliotheque/fonctions/pap_compression.fonct.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// Gestion de la recherche dans le cache de la page demandée. |
/* |
// Utilisons nous le cache ? |
if (! $GS_ARGUMENTS['cachectrl']) { |
//header ("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 |
//header ("Pragma: no-cache"); // HTTP/1.0 |
} |
*/ |
// Nous supprimons les pages en cache dont le délai de mise en cache est dépassé. |
$duree_cache = $_GEN_commun['application_info']->cache_duree * 3600; |
if ($duree_cache > 0) { |
$requete = 'DELETE FROM gen_page_cache '. |
'WHERE gpc_ce_site = '.$_GEN_commun['site_info']->gsi_id_site.' '. |
'AND gpc_ce_i18n = "'.$_GEN_commun['site_info']->gsi_id_i18n.'" '. |
'AND gpc_date_heure + '.$duree_cache.' < NOW()'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) |
: ''; |
} |
// Vérification de la présence de la page demandée dans le cache. |
$requete = 'SELECT * '. |
'FROM gen_page_cache '. |
'WHERE gpc_ce_site = '.$_GEN_commun['site_info']->gsi_id_site.' '. |
'AND gpc_ce_i18n = "'.$_GEN_commun['site_info']->gsi_id_i18n.'" '. |
'AND gpc_id_md5_url = "'.GEN_donnerMD5UriPostSession().'"'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) |
: ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ; |
$resultat->free(); |
// Nous avons trouvé la page. Nous essayons de la renvoyer. |
if ($ligne == true) { |
if ( GEN_envoyerDonneesCompressees($ligne->gpc_corps) ) { |
// Si l'envoie des données à réussi nous arrétons le script ICI. |
exit(); |
} |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.2 2005/02/28 11:20:42 jpm |
* Modification des auteurs. |
* |
* Revision 1.1 2004/06/16 08:11:01 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.2 2004/04/22 08:29:55 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.1 2004/04/09 16:19:15 jpm |
* Ajout du fichier indépendant du cache avec gestion des tables i18n. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/pap_initialise_info.inc.php |
---|
New file |
0,0 → 1,688 |
<?php |
//vim: set expandtab tabstop=4 shiftwidth=4: |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2003 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | | |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_initialise_info.inc.php,v 1.32 2007-10-23 13:45:33 ddelon Exp $ |
/** |
*Initialisation de Papyrus : vérification et récupération de paramètres généraux. |
* |
* La page contient le code initialisant l'exécution du rendu d'une page par Papyrus. |
* Nous y trouvons la recherche des informations disponibles sur : |
* - le site présent sur le serveur demandé, |
* - l'identification, |
* - la langue, |
* - le menu, |
* - la page |
* - l'application |
* |
*@package Papyrus |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alex@tela-botanica.org> |
*@author Laurent COUDOUNEAU <laurent.coudouneau@ema.fr> |
*@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 | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// 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') { |
$_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 { |
$_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 |
/** <br> 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 |
$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 '; |
$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 |
/** <br> 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); |
} |
// 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; |
} |
// 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 ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/pap_connecte_bdd.inc.php |
---|
New file |
0,0 → 1,92 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_connecte_bdd.inc.php,v 1.4 2007-04-13 09:41:09 neiluj Exp $ |
/** |
* Connection à la base de données et inclusions des classes générées par DataObject de Pear. |
* |
* Ce fichier permet de se connecter à la base de données et d'inclure les classes représentant les tables |
* de la base de données de Papyrus. Ces tables sont générées par DataObject de Pear. |
* |
*@package Papyrus |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ $Date: 2007-04-13 09:41:09 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** <br> Inclusion de la classe PEAR d'abstraction de base de donnée. */ |
require_once PAP_CHEMIN_API_PEAR.'DB.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// Connexion à la base de données. |
$db = DB::connect(PAP_DSN) ; |
$_GEN_commun['pear_db'] = $db; |
if (DB::isError($db)) { |
$msg_erreur_connection = 'Impossible de se connecter à la base de données.'; |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $db->getMessage(), 'connexion à la base de données',$msg_erreur_connection)); |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.2 2004/10/15 18:29:19 jpm |
* Modif pour gérer l'appli installateur de Papyrus. |
* |
* Revision 1.1 2004/06/16 08:11:22 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.5 2004/05/10 13:24:16 jpm |
* Correction gestion de l'erreur impossible de se connecter. |
* |
* Revision 1.4 2004/05/01 11:41:31 jpm |
* Ajout de la variable globale $_GEN_commun['pear_db'] devant être utilisé à la place de $db. |
* |
* Revision 1.3 2004/04/28 12:04:31 jpm |
* Changement du modèle de la base de données. |
* |
* Revision 1.2 2004/04/22 08:25:05 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.1 2004/04/21 16:24:29 jpm |
* Ajout d'un fichier spécifique pour la connexion à la base de données et incluant les classes DataObject de Pear. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/plan/langues/plan_langue_en.inc.php |
---|
New file |
0,0 → 1,65 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan_langue_en.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Gestion des langues de l'application PLAN |
* |
* Contient les constantes pour la langue française de l'application PLAN |
* |
*@package Plan |
*@subpackage Langues |
//Auteur original : |
*@author David Delon<dd@clapas.net> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.2 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define('PLAN_PLAN_DU_SITE', 'Site map'); |
define('PLAN_PLAN_DES_SITES', 'Sites map'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.3 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.2 2004/12/13 18:07:57 alex |
* ajout de labels |
* |
* Revision 1.1 2004/12/06 11:31:37 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/plan/langues/plan_langue_fr.inc.php |
---|
New file |
0,0 → 1,65 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan_langue_fr.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Gestion des langues de l'application PLAN |
* |
* Contient les constantes pour la langue française de l'application PLAN |
* |
*@package Plan |
*@subpackage Langues |
//Auteur original : |
*@author David Delon<dd@clapas.net> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.2 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define('PLAN_PLAN_DU_SITE', 'Plan du site'); |
define('PLAN_PLAN_DES_SITES', 'Plan des sites'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.3 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.2 2004/12/13 18:07:57 alex |
* ajout de labels |
* |
* Revision 1.1 2004/12/06 11:31:37 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/plan/plan.php |
---|
New file |
0,0 → 1,209 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: plan.php,v 1.7 2006-10-11 18:05:15 jp_milcent Exp $ |
/** |
* Application réalisant le plan d'un site web géré par Papyrus. |
* |
* Construit une liste de listes représentant le plans des sites web gérés par Papyrus. |
* Cette application est fortement dépendante de Papyrus puisqu'elle se base sur |
* le modèle de données de Papyrus. |
* |
*@package Plan |
//Auteur original : |
*@author Alexandre GRANIER <alexandrel@tela-botanica.org> |
//Autres auteurs : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.7 $ $Date: 2006-10-11 18:05:15 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante permettatn de configurer l'application en affichant que le plan du site courant si sa valeur vaut true.*/ |
define('PLAN_SITE_COURRANT', false); |
define('PLAN_AFFICHER_PERMALIEN', false); |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications/plan/configuration/plan_config.inc.php'; |
// Inclusion des fichiers de traduction de l'applette. |
if (file_exists(PLAN_CHEMIN_LANGUE.'plan_langue_'.$_GEN_commun['i18n'].'.inc.php')) { |
require_once PLAN_CHEMIN_LANGUE.'plan_langue_'.$_GEN_commun['i18n'].'.inc.php'; |
} else { |
require_once PLAN_CHEMIN_LANGUE.'plan_langue_'.PLAN_I18N_DEFAUT.'.inc.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherContenuTete() - Fonction appelé par le gestionnaire Papyrus. |
* |
* Elle retourne l'entête de l'application.. |
* |
* @return string du code XHTML correspondant à la zone d'entête de l'application. |
*/ |
function afficherContenuTete() |
{ |
return ''; |
} |
/** Fonction afficherContenuCorps() - Fonction appelé par le gestionnaire Papyrus. |
* |
* Elle démarre la création de la liste contenant le plan du site. |
* |
* @return string le code HTML produit par l'application. |
*/ |
function afficherContenuCorps() |
{ |
// Initialisation des variables |
$retour = ''; |
$bdd =& $GLOBALS['_GEN_commun']['pear_db']; |
$site_courant_id = $GLOBALS['_GEN_commun']['info_site']->gs_id_site; |
// Si on veut seulement le plan du site courrant. |
if (PLAN_SITE_COURRANT) { |
$aso_sites = GEN_lireInfoSitePrincipal($bdd, $site_courant_id, DB_FETCHMODE_ASSOC); |
$retour .= '<h1 id="titre_page">'.PLAN_PLAN_DU_SITE.'</h1>'."\n"; |
} else { |
$aso_sites = GEN_lireInfoSites($bdd, DB_FETCHMODE_ASSOC); |
$retour .= '<h1 id="titre_page">'.PLAN_PLAN_DES_SITES.'</h1>'."\n"; |
} |
foreach ($aso_sites as $cle => $site) { |
// On ignore le site admin |
if ($site['gs_code_alpha'] == 'admin' && $GLOBALS['_GEN_commun']['info_site']->gs_code_alpha!='admin') continue; |
if (count($aso_sites) >= 1) { |
if (!empty($site['gs_titre'])) { |
$titre = $site['gs_titre']; |
} else { |
$titre = $site['gs_nom']; |
} |
$url_site =& new Pap_URL(); |
$url_site->setUrlType('SITE'); |
$url_site->setId($site['gs_id_site']); |
$retour .= '<h2><a href="'.$url_site->getUrl().'">'.htmlentities($titre).'</a></h2>'."\n"; |
} |
$retour .= '<ul class="plan_site_'.$site['gs_nom'].'" >'."\n"; |
$aso_menus = GEN_retournerTableauMenusSiteCodeAlpha($bdd, $site['gs_code_alpha']); |
$retour .= parserTableauMenus($aso_menus, PLAN_AFFICHER_PERMALIEN); |
$retour .= '</ul>'."\n"; |
} |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
function parserTableauMenus($aso_menus, $permalien) |
{ |
$retour = ''; |
// Création de l'url |
foreach ($aso_menus as $menu_id => $menu_valeur) { |
if ($menu_valeur['gm_date_fin_validite'] == '0000-00-00 00:00:00' || strtotime($menu_valeur['gm_date_fin_validite']) > time() ) { |
$retour .= '<li>'; |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($menu_id); |
// Construction de l'attribut title |
$title = ''; |
if (!empty($menu_valeur['gm_titre'])) { |
$title = ' title="'.htmlentities($menu_valeur['gm_titre']).'"'; |
} elseif (!empty($menu_valeur['gm_titre_alternatif'])) { |
$title = ' title="'.htmlentities($menu_valeur['gm_titre_alternatif']).'"'; |
} |
// Construction du lien |
$retour .= '<a href="'.$une_url->getURL().'"'.$title.'>'.htmlentities($menu_valeur['gm_nom']).'</a>'; |
// Nous affichons ou pas le permalien |
if ($permalien) { |
$une_url->setPermalien(true); |
$retour .= ' <span class="plan_permalien">'.'('.$une_url->getURL().')'.'</span>'; |
$une_url->setPermalien(false); |
} |
// Nous ajoutons les sous-menus s'il y en a. |
$retour_menus = parserTableauMenus($menu_valeur['sous_menus'], $permalien); |
if ($retour_menus != '') { |
$retour .= "\n".'<ul>'."\n".$retour_menus."\n".'</ul>'."\n"; |
} |
$retour .= '</li>'."\n"; |
} |
} |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.6 2006/10/06 10:03:14 florian |
* amelioration: affichage du plan des menus d'administration, dans le monde administration |
* |
* Revision 1.5 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.4.2.1 2006/02/28 14:02:09 ddelon |
* Finition multilinguisme |
* |
* Revision 1.4 2005/10/14 11:49:51 alexandre_tb |
* Pas d'affichage du site admin |
* |
* Revision 1.3 2005/04/19 17:21:02 jpm |
* Amélioration de l'application. |
* Gestion des dates de fin de validité des menus. |
* |
* Revision 1.2 2005/02/28 10:38:24 jpm |
* Modification de l'utilisation d'une variable globale. |
* |
* Revision 1.1 2004/06/16 14:34:53 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.7 2004/05/05 15:33:59 jpm |
* Gestion de l'indication des langues disponibles pour un menu d'un site donné. |
* |
* Revision 1.6 2004/05/05 14:33:00 jpm |
* Gestion de l'indication de langue dans l'url. |
* Utile que si on veut forcer la langue. |
* |
* Revision 1.5 2004/05/05 06:45:51 jpm |
* Suppression de l'appel de la fonction générant le "vous êtes ici" dans la fonction affichant l'entête de l'application. |
* |
* Revision 1.4 2004/05/04 16:27:27 jpm |
* Réduction de code pour la fonction afficherContenuTete(). |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/plan/configuration/plan_config.inc.php |
---|
New file |
0,0 → 1,76 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2005 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: plan_config.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Configuration de l'applette Identification. |
* |
* Fichier de configuration de l'applette selection de site. |
* |
*@package Applette |
*@subpackage Selecteur |
//Auteur original : |
*@author David Delon <david.delon@clapas.net> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2005 |
*@version $Revision: 1.2 $ $Date: 2006-03-02 10:49:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'appli ADME.*/ |
define('PLAN_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin vers les dossiers de l'application |
/** Chemin vers l'application Plan de Papyrus.*/ |
define('PLAN_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'plan/'); |
/** Chemin vers les fichiers de traduction de l'application Admin Auth de Papyrus.*/ |
define('PLAN_CHEMIN_LANGUE', PLAN_CHEMIN_APPLICATION.'langues/'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2006/02/28 14:02:09 ddelon |
* Finition multilinguisme |
* |
* Revision 1.1.2.1 2005/12/07 19:46:15 ddelon |
* Merge + navi sites |
* |
* Revision 1.1 2005/03/15 14:18:49 jpm |
* Ajout d'un fichier de config. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_application/bibliotheque/adap_application.fonct.php |
---|
New file |
0,0 → 1,153 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adap_application.fonct.php,v 1.4 2006-12-01 10:39:14 alexandre_tb Exp $ |
/** |
* Contient les fonctions de l'appli admin_auth |
* |
* |
* |
* |
*@package Admin_auth |
*@subpackage Fonctions |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* |
* |
* @return |
*/ |
function adap_supprimer_application($id_appl, &$db) { |
$requete = 'DELETE FROM gen_application WHERE gap_id_application='.$id_appl; |
$resultat = $db->query ($requete) ; |
} |
/** |
* |
* |
* @return |
*/ |
function adap_valeurs_par_defaut ($id_appl, &$db) { |
// requete sur gen_site_auth |
$requete = 'SELECT * FROM gen_application WHERE gap_id_application='.$id_appl ; |
$resultat = $db->query ($requete) ; |
if (DB::isError ($resultat)) { |
trigger_error("Echec de la requete : $requete<br />".$resultat->getMessage(), E_USER_WARNING) ; |
return ; |
} |
$tableau_retour = array () ; |
$ligne = $resultat->fetchRow (DB_FETCHMODE_OBJECT) ; |
$tableau_retour['nom_appl'] = $ligne->gap_nom ; |
$tableau_retour['description'] = $ligne->gap_description ; |
$tableau_retour['chemin'] = $ligne->gap_chemin ; |
unset ($requete, $resultat) ; |
return $tableau_retour ; |
} |
/** |
* |
* |
* @return |
*/ |
function insertion ($valeur, &$db) { |
$id_appl_bdd = SQL_obtenirNouveauId ($db, 'gen_application', 'gap_id_application') ; |
$requete = "insert into gen_application set gap_id_application=" |
.$id_appl_bdd."," |
.requete_site_appl($valeur) ; |
$resultat = $db->query ($requete) ; |
if (DB::isError ($resultat)) { |
trigger_error("Echec de la requete : $requete<br />".$resultat->getMessage(),E_USER_WARNING) ; |
} |
} |
/** |
* |
* |
* @return |
*/ |
function mise_a_jour ($valeur, &$db) { |
$requete = "update gen_application set ".requete_site_appl($valeur) |
.' WHERE gap_id_application='.$GLOBALS['id_appl'] ; |
$resultat = $db->query ($requete) ; |
if (DB::isError ($resultat)) { |
trigger_error("Echec de la requete : $requete<br />".$resultat->getMessage(),E_USER_WARNING) ; |
} |
} |
/** |
* |
* |
* @return string un morceau de code SQL |
*/ |
function requete_site_appl (&$valeur) { |
if (!isset($valeur['applette'])) {$valeur['applette']=0;} |
return 'gap_nom="'.$valeur['nom_appl'].'", ' |
.'gap_description="'.$valeur['description'].'", ' |
.'gap_chemin="'.$valeur['chemin'].'"'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2006/09/07 13:28:39 jp_milcent |
* Mise en majuscule des termes SQL et trie des application par ordre alphabétique. |
* |
* Revision 1.2 2005/09/23 15:02:38 florian |
* correction de bugs |
* |
* Revision 1.1 2005/03/09 10:44:04 jpm |
* Mise au norme du nom du fichier. |
* |
* Revision 1.2 2005/03/09 10:40:33 alex |
* version initiale |
* |
* Revision 1.1 2004/12/13 18:07:28 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_application/bibliotheque/HTML_formulaireAppli.class.php |
---|
New file |
0,0 → 1,123 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public | |
// | 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: HTML_formulaireAppli.class.php,v 1.5 2007-06-26 14:18:53 florian Exp $ |
/** |
* Application projet |
* |
* La classe HTML_formulaireAuth |
* |
*@package projet |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.5 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclure le fichier de langue pour utiliser cette classe de façon autonome. */ |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm.php' ; |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/checkbox.php' ; |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/select.php' ; |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des constantes | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* class HTML_formulaireProjet |
* Cette classe représente un formulaire pour saisir un projet ou le modifier. |
*/ |
class HTML_formulaireAppl extends HTML_QuickForm |
{ |
/** |
* Constructeur |
* |
* @param string formName Le nom du formulaire. |
* @param string method Soit get soit post, voir le protocole HTTP |
* @param string action L'action du formulaire. |
* @param string target La cible du formulaire. |
* @param Array attributes Des attributs supplémentaires pour la balise <form> |
* @param bool trackSubmit Pour repérer si la formulaire a été soumis. |
* @return void |
* @access public |
*/ |
function HTML_formulaireAppl( $formName = "", $method = "post", $action = "", $target = "_self", $attributes = "", $trackSubmit = false ) |
{ |
HTML_QuickForm::HTML_QuickForm($formName, $method, $action, $target, $attributes, $trackSubmit) ; |
} // end of member function HTML_formulaireProjet |
/** |
* Renvoie le code HTML du formulaire. |
* |
* @return string |
* @access public |
*/ |
function toHTML( ) |
{ |
$res = HTML_QuickForm::toHTML() ; |
return $res ; |
} // end of member function toHTML |
/** |
* Ajoute les champs nécessaire au formulaire. |
* |
* @return void |
* @access public |
*/ |
function construitFormulaire($url_retour) |
{ |
$squelette =& $this->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<p class="formulaire_element"><span class="form_label">'."\n". |
'{label}'."\n". |
'<!-- BEGIN required --><span style="color:red; width:5px; margin:0; padding:0;">*</span><!-- END required -->'."\n". |
'</span>'."\n".'{element}'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</p>'."\n"); |
$squelette->setGroupElementTemplate('<p style="display:inline">{element}</p>', 'form_boutons'); |
$squelette->setRequiredNoteTemplate("\n".'<p class="symbole_obligatoire">* : {requiredNote}</p>'."\n"); |
//Note pour les erreurs javascript |
$this->setJsWarnings('Erreur de saisie', 'Veuillez verifier vos informations saisies'); |
// Note de fin de formulaire |
$this->setRequiredNote('Indique les champs obligatoires'); |
$this->addElement ('text', 'nom_appl', ADAP_NOM_APPL, array ('size' => 35)) ; |
$this->addRule ('nom_appl', ADAP_NOM_APPL_ALERTE, 'required', '', 'client') ; |
$this->addElement ('textarea', 'description', ADAP_DESCRIPTION, array ('cols' => 50, 'rows' => 5)) ; |
$this->addElement ('text', 'chemin', ADAP_CHEMIN, array('size' => 35)) ; |
$this->addElement('html', '<br />'); |
$this->setRequiredNote(ADAP_CHAMPS_REQUIS) ; |
// on fait un groupe avec les boutons pour les mettres sur la même ligne |
$buttons[] = &HTML_QuickForm::createElement('button', 'annuler', ADAP_ANNULER, array ("onclick" => "javascript:document.location.href='".str_replace ('&', '&', $url_retour->getURL())."'")); |
$buttons[] = &HTML_QuickForm::createElement('submit', 'valider', ADAP_VALIDER); |
$this->addGroup($buttons, 'form_boutons', null, ' '); |
} // end of member function _construitFormulaire |
} // end of HTML_formulaireProjet |
?> |
/branches/livraison_aha/papyrus/applications/admin_application/langues/adap_langue_fr.inc.php |
---|
New file |
0,0 → 1,74 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adap_langue_fr.inc.php,v 1.4 2006-12-01 10:39:14 alexandre_tb Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADAP. |
* |
*@package Admin_appli |
*@subpackage Langues |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define ('ADAP_NOM_APPL', 'Nom de l\'application') ; |
define ('ADAP_MODIFIER', 'Modifier') ; |
define ('ADAP_SUPPRIMER', 'Supprimer') ; |
define ('ADAP_AJOUTER', 'Ajouter une application') ; |
define ('ADAP_NOM_APPL_ALERTE', 'Vous devez spécifier un nom') ; |
define ('ADAP_CHAMPS_REQUIS', 'Indique les champs requis') ; |
define ('ADAP_DESCRIPTION', 'Description') ; |
define ('ADAP_IDENTIFIEZ_VOUS','Veuillez vous identifier pour accèder à ce menu.'); |
define ('ADAP_CHEMIN', 'Chemin vers l\'application') ; |
define ('ADAP_CHEMIN_REQUIS', 'Le chemin vers l\'application est requis') ; |
define ('ADAP_APPLETTE', 'L\'application est elle une applette') ; |
define ('ADAP_ANNULER', 'Annuler') ; |
define ('ADAP_VALIDER', 'Valider') ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2006/10/06 10:40:51 florian |
* harmonisation des messages d'erreur de l'authentification |
* |
* Revision 1.2 2005/03/09 10:40:37 alex |
* version initiale |
* |
* Revision 1.1 2004/12/13 18:07:38 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_application/admin_application.php |
---|
New file |
0,0 → 1,210 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: admin_application.php,v 1.9 2007-08-28 14:02:06 jp_milcent Exp $ |
/** |
* Application gérant les applications de Papyrus |
* |
* Cette application permet de gérer les applications de papyrus |
* elle permet de spécifier pour un monde quel annuaire utiliser |
* et de gérer des authentifications de spip et ou wikini |
* |
*@package Admin_auth |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.9 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications/admin_application/configuration/adap_configuration.inc.php'; |
//Utilisation de la bibliothèque PEAR NET_URL |
/** Inclusion de la bibliothèque PEAR de conception de formulaire.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm.php'; |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm/select.php'; |
/** Inclusion de l'API de fonctions gérant les erreurs sql.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_API.'debogage/BOG_sql.fonct.php'; |
/** Inclusion des fonctions de manipulation du sql. |
* Permet la récupération d'un nouvel identifiant d'une table.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_API.'sql/SQL_manipulation.fonct.php'; |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_API.'html/HTML_TableFragmenteur.php' ; |
/** <BR> Inclusion de la bibliothèque de fonctions concernant les tables "gen_site..." de Papyrus.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_GEN.'pap_site.fonct.php'; |
/** <BR> Inclusion de la bibliothèque de fonctions concernant les tables "gen_menu..." de Papyrus.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_GEN.'pap_menu.fonct.php'; |
/** <BR> Inclusion de la bibliothèque de fonctions concernant les tables "gen_applications..." de Papyrus.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE_GEN.'pap_application.fonct.php'; |
/** <BR> Inclusion de la bibliothèque de fonctions concernant l'affichage commun.*/ |
require_once ADAP_CHEMIN_BIBLIOTHEQUE.'adap_application.fonct.php'; |
require_once ADAP_CHEMIN_BIBLIOTHEQUE.'HTML_formulaireAppli.class.php' ; |
// Inclusion des fichiers de traduction de l'appli ADME dePapyrus |
if (file_exists(ADAP_CHEMIN_LANGUE.'adap_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once ADAP_CHEMIN_LANGUE.'adap_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once ADAP_CHEMIN_LANGUE.'adap_langue_'.ADAP_I18N_DEFAUT.'.inc.php'; |
} |
// Stockage des styles de l'application |
GEN_stockerStyleExterne('adap_standard', ADAP_CHEMIN_STYLE.'adap_standard.css'); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
function afficherContenuCorps() |
{ |
$db = &$GLOBALS['_GEN_commun']['pear_db'] ; |
$url = $GLOBALS['_GEN_commun']['url'] ; |
$auth = &$GLOBALS['_GEN_commun']['pear_auth'] ; |
$res=''; |
if (!$auth->getAuth()) { |
$res .= '<p class="zone_alert">'.ADAP_IDENTIFIEZ_VOUS.'</p>'."\n" ; |
$res .= '<form id="form_connexion" style="clear:both;" class="form_identification" action="' ; |
$res .= $url->getURL(); |
$res .= '" method="post"> |
<fieldset> |
<legend>Identifiez vous</legend> |
<label for="username">Courriel : </label> |
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="courriel" /> |
<label for="password">Mot de passe : </label> |
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" /> |
<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" /> |
</fieldset> |
</form>'; |
return $res ; |
} else { |
// Le lien pour une nouvelle entrée |
$url->addQueryString('action', 'nouveau'); |
$url_nouveau = $url->getURL(); |
$url->removeQueryString('action', 'nouveau'); |
$res .= '<a href="'.$url_nouveau.'">'.ADAP_AJOUTER.'</a>'."\n<br />" ; |
// traitement de la suppression |
if (isset ($_REQUEST['action']) && $_REQUEST['action'] == 'supprimer') adap_supprimer_application($_REQUEST['id_appl'], $db) ; |
// traitement de l'ajout |
if (isset ($_REQUEST['action']) || isset ($_REQUEST['id_appl'])) { |
$formulaire = new HTML_formulaireAppl('formulaire_appl', '', str_replace ('&', '&', $url->getURL())) ; |
$formulaire->construitFormulaire($url) ; |
// On ajoute un champs caché avec action=nouveau_v |
if (isset ($_REQUEST['action']) && $_REQUEST['action'] == 'nouveau') { |
$formulaire->addElement ('hidden', 'action', 'nouveau_v') ; |
return $formulaire->toHTML() ; |
} |
if (isset ($_REQUEST['id_appl']) && !isset ($_REQUEST['action'])) { |
$formulaire->addElement ('hidden', 'action', 'modifier_v') ; |
$formulaire->addElement ('hidden', 'id_appl', $_REQUEST['id_appl']) ; |
$formulaire->setDefaults(adap_valeurs_par_defaut($_REQUEST['id_appl'], $db)) ; |
return $formulaire->toHTML() ; |
} |
if ($_REQUEST['action'] == 'modifier_v') { |
if ($formulaire->validate()) { |
mise_a_jour ($formulaire->getSubmitValues(), $db) ; |
} |
} |
if ($_REQUEST['action'] == 'nouveau_v') { |
if ($formulaire->validate()) { |
insertion ($formulaire->getSubmitValues(), $db) ; |
} |
} |
} |
// Comportement par défaut |
// requete sur la table gen_application |
$requete = 'SELECT gap_id_application, gap_nom FROM gen_application where gap_id_application <> 0 ORDER BY gap_nom ASC' ; |
$resultat = $db->query ($requete) ; |
if (DB::isError ($resultat)) { |
$GLOBALS['_GEN_commun']['debogage_erreur']->gererErreur(E_USER_WARNING, "Echec de la requete : $requete<br />".$resultat->getMessage(), |
__FILE__, __LINE__, 'admin_appl') ; |
return ; |
} |
$liste = new HTML_TableFragmenteur () ; |
$liste->construireEntete(array (ADAP_NOM_APPL, ADAP_SUPPRIMER)) ; |
$tableau_appl = array() ; |
while ($ligne = $resultat->fetchRow()) { |
$url->addQueryString ('id_appl', $ligne[0]) ; |
array_push ($tableau_appl, array ('<a href="'.$url->getURL().'">'.$ligne[1].'</a>'."\n", // Première colonne, le nom de l'application |
'<a href="'.$url->getURL().'&action=supprimer" onclick="javascript:return confirm (\''.ADAP_SUPPRIMER.' ?\');">'.ADAP_SUPPRIMER.'</a>'."\n" |
)); |
} |
$liste->construireListe($tableau_appl) ; |
$res .= $liste->toHTML(); |
return $res ; |
} |
}// Fin de la fonction afficherContenuCorps() |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.8 2007-03-20 14:17:36 alexandre_tb |
* remplacement des varaibles $GLOBALS par $_REQUEST, pour que l appli fonctionne avec les register_globals à Off |
* |
* Revision 1.7 2006/12/01 10:39:14 alexandre_tb |
* Suppression des références aux applettes |
* |
* Revision 1.6 2006/10/06 10:40:51 florian |
* harmonisation des messages d'erreur de l'authentification |
* |
* Revision 1.5 2006/09/07 13:28:39 jp_milcent |
* Mise en majuscule des termes SQL et trie des application par ordre alphabétique. |
* |
* Revision 1.4 2005/03/09 10:46:17 jpm |
* Changement d'un nom de fichier. |
* |
* Revision 1.3 2005/03/09 10:40:26 alex |
* version initiale |
* |
* Revision 1.2 2005/02/28 10:32:59 jpm |
* Changement de nom de dossier. |
* |
* Revision 1.1 2004/12/13 18:07:19 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_application/configuration/adap_configuration.inc.php |
---|
New file |
0,0 → 1,80 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: adap_configuration.inc.php,v 1.1 2004-12-13 18:07:33 alex Exp $ |
/** |
* Fichier de configuration général de l'application Administration des applications. |
* |
* Permet de définir certains paramètres valables pour toutes l'application |
* Administrateur des applications. |
* |
*@package Admin_application |
*@subpackage Configuration |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'appli ADAP.*/ |
define('ADAP_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('ADAP_CHEMIN_BIBLIOTHEQUE_PEAR', ''); |
/** Chemin vers la bibliothèque API.*/ |
define('ADAP_CHEMIN_BIBLIOTHEQUE_API', GEN_CHEMIN_API); |
/** Chemin vers la bibliothèque de Papyrus.*/ |
define('ADAP_CHEMIN_BIBLIOTHEQUE_GEN', GEN_CHEMIN_BIBLIO); |
// Chemin vers les dossiers de l'application |
/** Chemin vers l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'admin_application/'); |
/** Chemin vers les images de l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_IMAGE_INTERFACE', ADAP_CHEMIN_APPLICATION.'presentations/images/interface/'); |
/** Chemin vers la bibliothèque de l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_BIBLIOTHEQUE', ADAP_CHEMIN_APPLICATION.'bibliotheque/'); |
/** Chemin vers les classes de l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_CLASSES', ADAP_CHEMIN_APPLICATION.'classes/'); |
/** Chemin vers les fichiers de traduction de l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_LANGUE', ADAP_CHEMIN_APPLICATION.'langues/'); |
/** Chemin vers les styles de l'application Admin Auth de Papyrus.*/ |
define('ADAP_CHEMIN_STYLE', ADAP_CHEMIN_APPLICATION.'presentations/styles/'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/configuration/adme_configuration.inc.php |
---|
New file |
0,0 → 1,150 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_configuration.inc.php,v 1.6 2006-06-28 12:53:34 ddelon Exp $ |
/** |
* Fichier de configuration général de l'application Administrateur de Menus. |
* |
* Permet de définir certains paramètres valables pour toutes l'application |
* Administrateur de Menus. |
* |
*@package Admin_menu |
*@subpackage Configuration |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.6 $ $Date: 2006-06-28 12:53:34 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'appli ADME.*/ |
define('ADME_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('ADME_CHEMIN_BIBLIOTHEQUE_PEAR', ''); |
/** Chemin vers la bibliothèque API.*/ |
define('ADME_CHEMIN_BIBLIOTHEQUE_API', GEN_CHEMIN_API); |
/** Chemin vers la bibliothèque de Papyrus.*/ |
define('ADME_CHEMIN_BIBLIOTHEQUE_GEN', GEN_CHEMIN_BIBLIO); |
// Chemin vers les dossiers de l'application |
/** Chemin vers l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'admin_menu/'); |
/** Chemin vers les images de l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_IMAGE_INTERFACE', ADME_CHEMIN_APPLICATION.'presentations/images/interface/'); |
/** Chemin vers la bibliothèque de l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_BIBLIOTHEQUE_ADME', ADME_CHEMIN_APPLICATION.'bibliotheque/'); |
/** Chemin vers les fichiers de traduction de l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_LANGUE', ADME_CHEMIN_APPLICATION.'langues/'); |
/** Chemin vers les styles de l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_STYLE', ADME_CHEMIN_APPLICATION.'presentations/styles/'); |
// Chemin vers le dossier contenant les images des drapeaux des pays |
/** Chemin vers le dossier contenant les images i18n l'application Admin Menus de Papyrus.*/ |
define('ADME_CHEMIN_IMAGE_DRAPEAUX', GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.'/'.GEN_DOSSIER_IMAGE.'/drapeaux/'); |
// Chemin (intégrant le nom du fichier) vers les images de l'interface de l'application |
/** Chemin vers l'image ouvrir une branche.*/ |
define('ADME_IMAGE_PLUS', ADME_CHEMIN_IMAGE_INTERFACE.'adme_ouvrir.png'); |
/** Chemin vers l'image fermer une branche.*/ |
define('ADME_IMAGE_MOINS', ADME_CHEMIN_IMAGE_INTERFACE.'adme_fermer.png'); |
/** Chemin vers l'image voir la définition d'un menu.*/ |
define('ADME_IMAGE_VOIR', ADME_CHEMIN_IMAGE_INTERFACE.'adme_modifier.png'); |
/** Chemin vers l'image monter un menu.*/ |
define('ADME_IMAGE_FLECHE_HAUT', ADME_CHEMIN_IMAGE_INTERFACE.'adme_monter.png'); |
/** Chemin vers l'image descendre un menu.*/ |
define('ADME_IMAGE_FLECHE_BAS', ADME_CHEMIN_IMAGE_INTERFACE.'adme_descendre.png'); |
/** Chemin vers l'image diminuer un menu.*/ |
define('ADME_IMAGE_FLECHE_GAUCHE', ADME_CHEMIN_IMAGE_INTERFACE.'adme_diminuer.png'); |
/** Chemin vers l'image augmenter un menu.*/ |
define('ADME_IMAGE_FLECHE_DROITE', ADME_CHEMIN_IMAGE_INTERFACE.'adme_augmenter.png'); |
/** Chemin vers l'image supprimer un menu.*/ |
define('ADME_IMAGE_SUPPRIMER', ADME_CHEMIN_IMAGE_INTERFACE.'adme_supprimer.png'); |
/** Chemin vers l'image ajouter un menu.*/ |
define('ADME_IMAGE_NOUVEAU', ADME_CHEMIN_IMAGE_INTERFACE.'adme_ajouter.png'); |
/** Chemin vers l'image accéder à l'interface d'administration de l'application du menu courant.*/ |
define('ADME_IMAGE_TEXTE', ADME_CHEMIN_IMAGE_INTERFACE.'adme_administrer.png'); |
/** Chemin vers l'image choix d'une traduction par défaut */ |
define('ADME_IMAGE_TRADUCTION_DEFAUT',ADME_CHEMIN_IMAGE_INTERFACE.'adme_radio_off.png'); |
/** Chemin vers l'image traduction par défaut */ |
define('ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE',ADME_CHEMIN_IMAGE_INTERFACE.'adme_radio_on.png'); |
// Nom des classes des images |
/** Constante stockant le nom de la classe des fichiers icônes de 16x16px de ADME.*/ |
define('ADME_CLASS_IMG_ICONE', 'adme_img_icone'); |
/** Constante stockant le nom de la classe des fichiers plier-déplier de 9x9px de ADME.*/ |
define('ADME_CLASS_IMG_PD', 'adme_img_plier_deplier'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.5 2005/07/08 21:13:15 ddelon |
* Gestion indentation menu |
* |
* Revision 1.4 2004/11/09 13:00:06 jpm |
* Changement de noms des images. |
* |
* Revision 1.3 2004/11/09 12:51:16 jpm |
* Ajout de commentaires. |
* |
* Revision 1.2 2004/07/06 17:07:42 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 14:39:44 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.7 2004/05/07 16:32:46 jpm |
* Correction erreur de chemin. |
* |
* Revision 1.6 2004/05/07 09:53:58 jpm |
* Ajout de commentaires et de nouvelles constantes. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/bibliotheque/adme_general.fonct.php |
---|
New file |
0,0 → 1,398 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// 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 |
* |
* Ce fichier contient les fonctions d'affichage commune à toute l'application Admin Menu. |
* Nous y trouvons, entre autre, la fonction d'affichage par défaut de l'appli. |
* |
*@package Admin_menu |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.20 $ $Date: 2007-10-24 14:43:02 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction ADME_afficherFormPrincipal() - Affichage par défaut. |
* |
* Fournit l'affichage par défaut de l'application Admin Menus. |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @return string le XHTML par défaut de la page. |
*/ |
function ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $adme_site_id, $adme_menu_id, $adme_action) |
{ |
$db=$objet_pear_db; |
$id_langue = $GLOBALS['_GEN_commun']['i18n']; //identifiant de la langue choisie |
// Langue en cours : langue choisie ou langue par defaut (principale) |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
//$langue_test=GEN_I18N_ID_DEFAUT; |
//requete pour recuperer l'id du menu par defaut |
$requete = 'SELECT gs_id_site '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = gs_id_site '. |
'AND gsr_id_valeur=101 '. |
'AND gs_ce_i18n = "'.$langue_test.'" '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$id_site_par_defaut=$ligne->gs_id_site; |
} |
// Liste des sites principaux : |
// Recherche de tous les sites langue en cours |
$requete = 'SELECT * '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = gs_id_site '. |
'AND gsr_id_valeur IN (102, 103) '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
'ORDER BY gsr_ordre'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$liste_site=array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
if ($langue_test == GEN_I18N_ID_DEFAUT) { |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
$liste_site[]=$ligne; |
} |
} |
else { |
$liste_site[]=$ligne; |
} |
} |
$resultat->free(); |
// Si la langue en cours n'est pas la langue par défaut, recherche des sites ayant comme langue |
// la langue par defaut, non traduits dans la langue en cours et n'etant pas des traductions |
if ($langue_test != GEN_I18N_ID_DEFAUT) { |
$requete = 'SELECT * '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur IN (102, 103) '. |
'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '. |
'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe" |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Recherche de tous les sites de la langue principale qui ne sont pas traduits dans la langue en cours |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
$requete_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation, gen_site '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' . |
'AND gsr_id_site_02 = gs_id_site '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_traduction = $db->query($requete_traduction); |
(DB::isError($resultat_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
if ( $resultat_traduction->numRows() == 0 ) { |
$liste_site []=$ligne; |
} |
$resultat_traduction->free(); |
} |
$resultat_est_traduction->free(); |
} |
$resultat->free(); |
} |
// Traduction d'un site principal uniquement : |
$requete = 'SELECT * '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_02 = '.$adme_site_id.' '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
if ( $resultat->numRows() == 0 ) { |
$adme_site_id =$adme_site_id; |
} |
else { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$adme_site_id = $ligne->gsr_id_site_01; |
} |
$resultat->free(); |
//--------------------------------------------------------------------------------------------------------------- |
// Création du formulaire |
// Notes : Quickform semble remplacer les & des & à nouveau par des & solution utiliser str_replace()... |
$form =& new HTML_QuickForm('adme_form_sites', 'post', str_replace('&', '&', $objet_pear_url->getUrl())); |
$tab_index = 1000; |
$squelette =& $form->defaultRenderer(); |
$squelette->setformTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n"."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '{label}'."\n".'{element}'."\n". |
'<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n"); |
$partie_site_debut = '<fieldset>'."\n". |
'<legend>'.ADME_LG_FORM_SITE_TITRE.'</legend>'."\n"; |
$form->addElement('html', $partie_site_debut); |
$id = 'adme_site_id'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'onchange' => 'javascript:this.form.submit();'); |
$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 |
$site_nom = $ligne->gs_nom; |
} else { |
$objet_select->addOption(htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')'), $ligne->gs_id_site); |
} |
} |
$form->addElement($objet_select); |
$form->addElement('submit', 'choisir_site', ADME_LG_FORM_SITE_VALIDER); |
$partie_site_fin = "\n".'</fieldset>'; |
$form->addElement('html', $partie_site_fin); |
// Instanciation des valeurs par défaut du formulaire |
if (isset($id_site_par_defaut)) { |
if (!isset($_GET['adme_site_id'])) { |
$adme_site_id=$id_site_par_defaut; |
} else { |
$adme_site_id=$_GET['adme_site_id']; |
} |
} |
$form->setDefaults(array('adme_site_id' => $adme_site_id)); |
$retour =''; |
$retour .= '<h1>'.ADME_LG_MENU_TITRE.$site_nom.'</h1>'."\n"; |
$retour .= $form->toHTML()."\n"; |
//--------------------------------------------------------------------------------------------------------------- |
// Gestion des menus classiques |
$retour .= '<p>'."\n"; |
$objet_pear_url_copie = $objet_pear_url; |
$objet_pear_url_copie->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_AJOUTER); |
$objet_pear_url_copie->addQueryString('adme_site_id', $adme_site_id); |
$objet_pear_url_copie->addQueryString('adme_menu_id', 0); |
$url_ajout_menu_classique_n1 = $objet_pear_url_copie->getURL(); |
//unset($url_ajout_menu_n1); |
$retour .= '<a href="'.$url_ajout_menu_classique_n1.'" >'. |
ADME_LG_MENU_CLASSIQUE_RACINE.' '. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_NOUVEAU.'" alt="+" />'. |
'</a>'."\n"; |
$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"; |
$objet_pear_url_copie = $objet_pear_url; |
$objet_pear_url_copie->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_AJOUTER); |
$objet_pear_url_copie->addQueryString('adme_site_id', $adme_site_id); |
$objet_pear_url_copie->addQueryString('adme_menu_id', 0); |
$url_ajout_menu_commun_n1 = $objet_pear_url_copie->getURL(); |
//unset($url_ajout_menu_n1); |
$retour .= '<a href="'.$url_ajout_menu_commun_n1.'">'. |
ADME_LG_MENU_COMMUN_RACINE.' '. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_NOUVEAU.'" alt="+" />'. |
'</a>'."\n"; |
$retour .= '</p>'."\n"; |
$retour .= ADME_afficherListeMenuCommun($objet_pear_db, $objet_pear_url, $adme_site_id, $adme_menu_id, $adme_action, 0); |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--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 |
* |
* Revision 1.17 2006/10/06 13:38:45 florian |
* ergonomie amélioree |
* |
* Revision 1.16 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.15 2006/03/24 13:03:24 ddelon |
* bug afficheur multilinguisme |
* |
* Revision 1.14 2006/03/23 20:24:59 ddelon |
* *** empty log message *** |
* |
* Revision 1.13 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.12 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.11.2.1 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.11 2005/07/18 16:14:32 ddelon |
* css admin + menu communs |
* |
* Revision 1.10 2005/07/08 21:57:24 ddelon |
* Copyright |
* |
* Revision 1.9 2005/05/12 16:51:37 alex |
* Changement de l'odre d'apparition des sites dans l'administration des menus. |
* |
* Revision 1.8 2005/01/26 16:18:05 jpm |
* Correction bogue 221 : mauvais réglage du titre. |
* |
* Revision 1.7 2004/11/24 11:31:51 jpm |
* Ajout d'une contante de langue à la place d'un texte. |
* |
* Revision 1.6 2004/11/10 17:26:07 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.5 2004/11/10 11:58:54 jpm |
* Mise en place des constantes de traduction de l'appli. |
* |
* Revision 1.4 2004/11/09 17:48:35 jpm |
* Gestion de différentes interfaces d'administration. |
* |
* Revision 1.3 2004/11/09 12:37:34 jpm |
* Fin de gestion des menus et mise en conformité avec la convention de codage. |
* |
* Revision 1.2 2004/11/08 17:41:07 jpm |
* Légères corrections : multisite, corrections SQL. |
* |
* Revision 1.1 2004/11/04 12:26:42 jpm |
* Contient les fonctions d'affichage général de l'appli ADME. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/bibliotheque/adme_menu_classique.fonct.php |
---|
New file |
0,0 → 1,1999 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_menu_classique.fonct.php,v 1.42 2007-10-25 14:26:56 ddelon Exp $ |
/** |
* Fonctions de gestion des menus classiques |
* |
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus classiques. |
* Par menus classiques nous entendons tous les menus devant paraitre dans l'arborescences |
* des menus disponibles pour le site courant. |
* |
*@package Admin_menu |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.42 $ $Date: 2007-10-25 14:26:56 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction ADME_afficherListeMenuClassique () - Affiche un arbre de menu en xhtml |
* |
* Elle forme l'arbre des menus classiques à administrer. |
* Ancien nom : deployer_menu(). |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du menu à administrer. |
* @param integer l'identifiant du menu sur lequel on agit. |
* @param string le nom de l'action courante. |
* @param integer l'identifiant du menu en cours de déploiement. |
* @param boolean true indique que l'on a à faire au premier appel de cette fonction récursive. |
* @return string le code XHTML constituant l'arbre des menus à administrer. |
*/ |
function ADME_afficherListeMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $adme_action, $id_menu_a_deployer, $bln_premier_appel = true) |
{ |
// Initialisation des variables : |
$retour = ''; |
// Est-ce que ces menus comporte des sous-menus ? |
$requete_sous_menu = 'SELECT gm_id_menu '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$id_menu_a_deployer.' '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu '. |
'AND gm_ce_site = '.$adme_site_id.' '. |
'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 GMR02.gmr_id_valeur = 100 '.// 100 = type "menu classique" |
'ORDER BY GMR01.gmr_ordre ASC'; |
$resultat_sous_menu = $db->query($requete_sous_menu) ; |
if (DB::isError($resultat_sous_menu)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_sous_menu->getMessage(), $requete_sous_menu)); |
} |
// Gestion du stockage ou déstockage des menus ouverts |
if (($adme_action == ADME_LG_ACTION_DEPLIER || $adme_action == ADME_LG_ACTION_CLASSIQUE_AJOUTER) && $id_menu_a_deployer != 0) { |
$_SESSION['adme_menus_classiques_ouverts'][$adme_menu_id] = $adme_menu_id; |
} |
if ($adme_action == ADME_LG_ACTION_PLIER && $id_menu_a_deployer != 0) { |
unset($_SESSION['adme_menus_classiques_ouverts'][$adme_menu_id]); |
foreach ($_SESSION['adme_menus_classiques_ouverts'] as $val) { |
if (GEN_etreAncetre($adme_menu_id, $val)) { |
unset($_SESSION['adme_menus_classiques_ouverts'][$val]); |
} |
} |
} |
// Gestion affichage des menus |
if ($resultat_sous_menu->numRows() > 0) { |
// Ici, on sait qu'un menu a des sous menus, on commence par l'afficher: |
if ($bln_premier_appel == false) { |
$retour .= '<li>'."\n"; |
if (GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_DEPLIER) || |
isset($_SESSION['adme_menus_classiques_ouverts'][$id_menu_a_deployer]) |
){ |
// Affiche un - |
$retour .= ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $id_menu_a_deployer, 1); |
} else if ( !GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_PLIER) || |
!isset($_SESSION['adme_menus_classiques_ouverts'][$id_menu_a_deployer]) |
){ |
// Affiche un + |
$retour .= ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $id_menu_a_deployer, 2); |
} |
} |
if ($bln_premier_appel == true || GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_DEPLIER) || |
isset($_SESSION['adme_menus_classiques_ouverts'][$id_menu_a_deployer]) |
){ |
$retour .= '<ul class="menu_classique">'."\n"; |
while ($ligne_sous_menu = $resultat_sous_menu->fetchRow(DB_FETCHMODE_OBJECT)) { |
$retour .= ADME_afficherListeMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $adme_action, $ligne_sous_menu->gm_id_menu, false); |
} |
$retour .= '</ul>'."\n"; |
} |
if ($bln_premier_appel == false) { |
$retour .= '</li>'."\n"; |
} |
} else if ($resultat_sous_menu->numRows() == 0 && $bln_premier_appel == false) { |
$retour .= '<li>'."\n"; |
$retour .= ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $id_menu_a_deployer, 0); |
$retour .= '</li>'."\n"; |
} |
return $retour; |
} |
/** Fonction ADME_retournerXhtmlMenuClassique() - Effectue une sortie d'un menu en XHTML |
* |
* Retourne le XHTML d'une ligne de l'arbre des menus "classiques" permettant de l'administer. |
* Ancien nom : menu_toHtml(). |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @param integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +. |
* @return string une ligne de liste XHTML |
*/ |
function ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $int_deplier,$est_traduction=false,$menu_traduction_defaut=0) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Initialisation des variables |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération des infos concernant l'administrateur d'un menu |
$requete = 'SELECT gen_menu.*, ga_prenom '. |
'FROM gen_menu, gen_annuaire '. |
'WHERE gm_id_menu = '.$adme_menu_id.' '. |
'AND gm_ce_admin = ga_id_administrateur'; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
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); |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML image plier-déplier |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
$xhtml_pd = ''; |
if ($int_deplier != 0) { |
if ($int_deplier == 1) { |
// Afficher un - |
$image_plier_deplier = ADME_IMAGE_MOINS; |
$alt = ADME_LG_ACTION_PLIER_ALT; |
$url->addQueryString('adme_action', ADME_LG_ACTION_PLIER); |
$url_plier_deplier = $url->getURL(); |
} else if ($int_deplier == 2) { |
// Afficher un + |
$image_plier_deplier = ADME_IMAGE_PLUS; |
$alt = ADME_LG_ACTION_DEPLIER_ALT; |
$url->addQueryString('adme_action', ADME_LG_ACTION_DEPLIER); |
$url_plier_deplier = $url->getURL(); |
} |
$xhtml_pd = '<a href="'.$url_plier_deplier.'" title="'.$alt.'">'. |
'<img class="'.ADME_CLASS_IMG_PD.'" src="'.$image_plier_deplier.'" alt="'.$alt.'" />'. |
'</a>'.' '."\n"; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML du nom du menu et de ses infos |
$xhtml_info = htmlentities(empty($ligne->gm_nom) ? ADME_LG_PARENTHESE_OUVRANTE.$ligne->gm_nom.ADME_LG_PARENTHESE_FERMANTE : $ligne->gm_nom); |
$xhtml_info .= ' '; |
if (!isset($ligne_app->gap_nom)) { |
$gap_nom=''; |
} |
else { |
$gap_nom=$ligne_app->gap_nom; |
} |
$xhtml_info .= ADME_LG_PARENTHESE_OUVRANTE.$gap_nom.' '.ADME_LG_SLASH.' '.$ligne->ga_prenom.ADME_LG_PARENTHESE_FERMANTE; |
$xhtml_info .= ' '."\n"; |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML actions |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_MODIFIER); |
$xhtml_action = '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_MODIFIER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_VOIR.'" alt="'.ADME_LG_ACTION_CLASSIQUE_MODIFIER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_MONTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_MONTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_HAUT.'" alt="'.ADME_LG_ACTION_CLASSIQUE_MONTER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_DESCENDRE); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_DESCENDRE_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_BAS.'" alt="'.ADME_LG_ACTION_CLASSIQUE_DESCENDRE_ALT.'" />'. |
'</a> '."\n"; |
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_DIMINUER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_DIMINUER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_GAUCHE.'" alt="'.ADME_LG_ACTION_CLASSIQUE_DIMINUER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_AUGMENTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_AUGMENTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_DROITE.'" alt="'.ADME_LG_ACTION_CLASSIQUE_AUGMENTER_ALT.'" />'. |
'</a> '."\n"; |
} |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_SUPPRIMER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TITLE.'" onclick="javascript:return confirm(\''.ADME_LG_ACTION_SUPPRIMER_CONFIRMATION.'\');">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_SUPPRIMER.'" alt="'.ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_ALT.'" />'. |
'</a> '."\n"; |
} |
else { |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_TITLE.'" onclick="javascript:return confirm(\''.ADME_LG_ACTION_SUPPRIMER_CONFIRMATION.'\');">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_SUPPRIMER.'" alt="'.ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_ALT.'" />'. |
'</a> '."\n"; |
} |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_AJOUTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_AJOUTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_NOUVEAU.'" alt="'.ADME_LG_ACTION_CLASSIQUE_AJOUTER_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
$url->removeQueryString('adme_action'); |
// Si le menu à une application liée on regarde s'il y a une interface d'administration. |
if (!isset($ligne_app->gap_id_application)) { |
$gap_id_application=0; |
} |
else { |
$gap_id_application=$ligne_app->gap_id_application; |
} |
if ($gap_id_application != 0 && GEN_verifierPresenceInterfaceAdmin($db, $gap_id_application)) { |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_ADMINISTRER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_ADMINISTRER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TEXTE.'" alt="'.ADME_LG_ACTION_ADMINISTRER_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
if (!$est_traduction) { |
$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) ) { |
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 .= '<i><b><a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_OUVRIR_TITLE.'">'. |
$ligne_lang->gi_id_i18n. |
'</a></b></i> '."\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) { |
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT.'" />'. |
' '."\n"; |
} |
else { |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
} |
$xhtml_traduction=''; |
// $id_langue = $GLOBALS['_GEN_commun']['i18n']; |
$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)) |
: ''; |
if ($resultat_traduction->numRows() > 0 ) { |
$requete_traduction_defaut = 'SELECT gmr_id_menu_02 '. |
'FROM gen_menu_relation '. |
'WHERE '.$adme_menu_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 traduction par defaut |
$resultat_traduction_defaut = $db->query($requete_traduction_defaut); |
(DB::isError($resultat_traduction_defaut)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction_defaut)) |
: ''; |
if ($resultat_traduction_defaut->numRows() == 0 ) { |
$menu_traduction_defaut=0; |
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT.'" />'. |
' '."\n"; |
} |
else { |
$ligne_traduction_defaut = $resultat_traduction_defaut->fetchRow(DB_FETCHMODE_OBJECT); |
$menu_traduction_defaut=$ligne_traduction_defaut->gmr_id_menu_02; |
if ($menu_traduction_defaut!=$adme_menu_id) { |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
else { |
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT.'" />'. |
' '."\n"; |
} |
} |
while ($ligne_resultat = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) { |
$xhtml_traduction.="<br><em>".$ligne_resultat->gm_ce_i18n.": ".ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $ligne_resultat->gmr_id_menu_02, 0,true,$menu_traduction_defaut)."</em>"; |
} |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Envoi du menu. |
//------------------------------------------------------------------------------------------------------------------- |
$retour = $xhtml_pd.$xhtml_info.$xhtml_action.$xhtml_traduction; |
return $retour; |
} |
/** Fonction ADME_ajouterMenuClassique() - Ajoute un sous menu au menu courant |
* |
* Cette fonction permet d'ajouter un sous-menu de type "classique" au menu courant. |
* Ancien nom : addMenu() |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear d'authentification. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @return void le menu classique est ajouté à la base de données. |
*/ |
function ADME_ajouterMenuClassique($db, $auth, $adme_site_id, $adme_menu_id) |
{ |
$url=$GLOBALS['_GEN_commun']['url']; |
$url->removeQueryString('adme_action'); |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur le site principal. |
$objet_site = GEN_lireInfoSitePrincipal($db, $adme_site_id); |
if ($objet_site == false) { |
die('ERREUR Génésia Administrateur de Menus : impossible de lire les infos du site.<br />'. |
'ID du site : '.$adme_site_id.'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$nouveau_id_menu = SQL_obtenirNouveauId($db, 'gen_menu', 'gm_id_menu'); |
$auteur = $auth->getAuthData('ga_prenom').' '.$auth->getAuthData('ga_nom'); |
//---------------------------------------------------------------------------- |
// Ajout du nouveau menu |
$requete = 'INSERT INTO gen_menu '. |
'SET gm_id_menu = '.$nouveau_id_menu.', '. |
'gm_ce_site = '.$adme_site_id.', '. |
'gm_ce_i18n = "'.$objet_site->gs_ce_i18n.'", '. |
'gm_ce_application = 0, '. |
'gm_code_num = '.$nouveau_id_menu.', '. |
'gm_code_alpha = "menu_'.$nouveau_id_menu.'", '. |
'gm_nom = "menu_'.$nouveau_id_menu.'", '. |
'gm_titre = "menu_'.$nouveau_id_menu.'", '. |
'gm_description_resume = "menu_'.$nouveau_id_menu.'", '. |
'gm_auteur = "'.$auteur.'", '. |
'gm_editeur = "'.$objet_site->gs_auteur.'", '. |
'gm_date_creation = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_soumission = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_acceptation = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_publication = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_debut_validite = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_fin_validite = "0000-00-00 00:00:00", '. |
'gm_date_copyright = "'.date('Y-00-00 00:00:00').'", '. |
'gm_categorie = "menu", '. |
'gm_ce_admin = '.$auth->getAuthData('ga_id_administrateur').' ' |
; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation "père" |
if (!isset($adme_menu_id) && empty($adme_menu_id)) { |
$adme_menu_id = 0 ;// Identifiant du père |
} |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$adme_menu_id.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu = $ligne->gmr_ordre + 1; |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_02 = '.$adme_menu_id.', '. |
'gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 1, '. |
'gmr_ordre = '.$nouveau_ordre_menu; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation-type "menu classique" |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT * '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = gmr_id_menu_01 '. |
'AND gmr_id_valeur = 100 '.// 100 = type menu "classique" |
'AND gmr_id_menu_01 = gm_id_menu '. |
'AND gm_ce_site = '.$adme_site_id.' '. |
'ORDER BY gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu_classique = $ligne->gmr_ordre + 1; |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 100, '. |
'gmr_ordre = '.$nouveau_ordre_menu_classique; |
$result = $db->query($requete); |
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_afficherFormMenuClassique() - Affiche le formulaire pour un menu classique |
* |
* Utilise HTML_QuickForm pour générer le formulaire. |
* Ancien nom : showMenu() |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @param array le tableau associatif des valeurs à afficher dans le formulaire. |
* @return string le formulaire XHTML. |
*/ |
function ADME_afficherFormMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $aso_valeurs,$traduction=FALSE) |
{ |
// Initialisation de variable |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
$script = 'function switchMenu(obj) { |
var el = document.getElementById(obj); |
if(el.style.display != "block") |
{ |
el.style.display = "block"; |
} |
else |
{ |
el.style.display = "none"; |
} |
}'; |
GEN_stockerCodeScript($script); |
// Nous sommes toujours en modification car un menu est ajouté automatiquement! |
// Récupération des informations du menu concerné. |
if (!isset($aso_valeurs[ADME_LG_ACTION_CLASSIQUE_VERIFIER]) && !isset($aso_valeurs[ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION])) { |
$aso_valeurs = GEN_lireInfoMenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC); |
if ($aso_valeurs === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU.'<br />'. |
'Idenitifiant du menu n° : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
// Requete pour récupérer les informations issues des relations du site à modifier |
$ligne = GEN_lireInfoMenuRelation($db, $adme_menu_id, $id_valeur = 101); |
$aso_valeurs['defaut'] = false; |
if (isset($ligne) && !empty($ligne)) { |
if ($ligne->gmr_id_valeur != false) {// 101 = site par défaut |
$aso_valeurs['defaut'] = true; |
} |
} |
} |
// Titre de la page |
if ($traduction) { |
$retour = '<h1>'.ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL_TRADUCTION.'</h1>'."\n"; |
} |
else { |
$retour = '<h1>'.ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL.'</h1>'."\n"; |
} |
$retour .= '<p class="adme_menu_id" >'.ADME_LG_FORM_MENU_ID.'<span id="adme_menu_id">'.$aso_valeurs['gm_id_menu'].'</span></p>'."\n"; |
// Création du formulaire |
// Notes : Quickform semble remplacer les & des & à nouveau par des & solution utiliser str_replace()... |
$form =& new HTML_QuickForm('form_menu_classique', 'post', str_replace('&', '&', $url->getUrl())); |
$tab_index = 1000; |
$squelette =& $form->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<p class="formulaire_element"><span class="form_label">'."\n". |
'{label}'."\n". |
'<!-- BEGIN required --><span style="color:red; width:5px; margin:0; padding:0;">*</span><!-- END required -->'."\n". |
'</span>'."\n".'{element}'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</p>'."\n"); |
$squelette->setGroupElementTemplate('<p style="display:inline">{element}</p>', 'form_boutons'); |
$squelette->setRequiredNoteTemplate("\n".'<p class="symbole_obligatoire">* : {requiredNote}</p>'."\n"); |
//Note pour les erreurs javascript |
$form->setJsWarnings('Erreur de saisie', 'Veuillez verifier vos informations saisies'); |
// Note de fin de formulaire |
$form->setRequiredNote(ADME_LG_FORM_TXT_CHP_OBLIGATOIRE); |
$partie_menu_debut = '<fieldset>'."\n".'<legend>'.ADME_LG_FORM_MENU_CLASSIQUE_TITRE_CONFIG.'</legend>'."\n"; |
$form->addElement('html', $partie_menu_debut); |
$id = 'gm_code_alpha'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CODE_ALPHA.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_CODE_ALPHA, 'required', '', 'client'); |
$id = 'gm_nom'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_NOM.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_NOM, 'required', '', 'client'); |
$form->applyFilter($id, 'trim'); |
$id = 'gm_description_resume'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 2, 'cols' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_INFO_BULLE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_INFO_BULLE, 'required', '', 'client'); |
// Requête sur les applications |
$requete = 'SELECT gap_id_application, gap_nom '. |
'FROM gen_application '. |
'WHERE gap_bool_applette = 0 '. |
'ORDER BY gap_nom ASC';// Pour éviter d'afficher les applettes. |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$aso_options[$ligne->gap_id_application] = $ligne->gap_nom; |
} |
$resultat->free(); |
$id = 'gm_ce_application'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_APPLI.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
if ($traduction) { |
// Recherche liste des menu deja traduits |
$requete = 'SELECT distinct gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_01 = ' . $adme_menu_id .' '. |
'AND gm_id_menu = gmr_id_menu_02 '. |
'AND gmr_id_valeur = 2 '; // 2 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$not_in_langue=''; |
if ( $resultat->numRows() == 0 ) { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
else { |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$not_in_langue="'".$ligne->gm_ce_i18n."'".",".$not_in_langue; |
$end="'".$ligne->gm_ce_i18n."'"; |
} |
if ($not_in_langue) { |
$not_in_langue="'".$aso_valeurs['gm_ce_i18n']."'".",".$not_in_langue; |
$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')'; |
} |
else { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
} |
$resultat->free(); |
$requete = "SELECT * FROM gen_i18n where ".$not_in_langue; |
/*$requete = 'SELECT * '. |
'FROM gen_i18n ';*/ |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
$aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n; |
} |
$resultat->free(); |
$id = 'gs_ce_i18n'; |
$aso_attributs = array('id' => $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Langue : '.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
} |
$id = 'gm_titre'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TITRE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_mots_cles'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_MOT_CLE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_description_libre'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DESCRIPTION.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$partie_menu_fin = "\n".'</fieldset>'."\n"; |
$form->addElement('html', $partie_menu_fin); |
//Lien javascript pour cacher les options compliquées |
$form->addElement('html', '<a href="#" onclick="switchMenu(\'config_avancee\');" title="'.ADME_VOIR_CONFIG_AVANCEE.'">'.ADME_VOIR_CONFIG_AVANCEE.'</a><br />'."\n"); |
//début de la div cachée pour les options compliquées----------------------------------------------- |
$form->addElement('html', '<div id="config_avancee" style="display:none;">'); |
$partie_entete_debut = '<fieldset>'."\n".'<legend>'.ADME_CONFIG_AVANCEE.'</legend>'."\n"; |
$form->addElement('html', $partie_entete_debut); |
$id = 'gm_code_num'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 5, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CODE_NUM.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_CODE_NUM, 'required', '', 'client'); |
$id = 'gm_raccourci_clavier'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 1, 'maxlength' => 1); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_RACCOURCI.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'defaut'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
if ($aso_valeurs[$id] === true) { |
$aso_attributs['checked'] = 'checked'; |
} |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DEFAUT.'</label>'; |
$form->addElement('checkbox', $id, $label, '', $aso_attributs); |
$id = 'gm_fichier_squelette'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_FICHIER_SQUELETTE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_application_arguments'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_APPLI_ARGUMENT.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_robot'; |
$aso_options = array( 'index,follow' => ADME_LG_FORM_MENU_INDEX_FOLLOW, |
'index' => ADME_LG_FORM_MENU_INDEX, |
'noindex' => ADME_LG_FORM_MENU_NOINDEX, |
'noindex,nofollow' => ADME_LG_FORM_MENU_NOINDEX_NOFOLLOW, |
'' => ADME_LG_FORM_MENU_INDEX_VIDE); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ROBOT.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_titre_alternatif'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TITRE_ALTERNATIF.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_description_table_matieres'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TABLE_MATIERE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_source'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_SOURCE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_auteur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_AUTEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_contributeur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 2, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CONTRIBUTEUR.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_editeur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 65000); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_EDITEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_creation'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_CREATION.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_debut_validite'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_VALIDITE_DEBUT.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_fin_validite'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_VALIDITE_FIN.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_copyright'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_COPYRIGHT.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_licence'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_URL_LICENCE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_categorie'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CATEGORIE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_public'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_PUBLIC.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_public_niveau'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 25, 'maxlength' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_PUBLIC_NIVEAU.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_ce_type_portee_spatiale'; |
$aso_options = array( '' => ADME_LG_FORM_MENU_ZG_VIDE, |
'iso3166' => ADME_LG_FORM_MENU_ZG_ISO, |
'Point' => ADME_LG_FORM_MENU_ZG_POINT, |
'Box' => ADME_LG_FORM_MENU_ZG_DC, |
'TGN' => ADME_LG_FORM_MENU_ZG_GTGN); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ZG_TYPE.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_portee_spatiale'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ZG_VALEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_ce_type_portee_temporelle'; |
$aso_options = array( '' => ADME_LG_FORM_MENU_TMP_VIDE, |
'W3CDTF' => ADME_LG_FORM_MENU_TMP_W3C, |
'Period' => ADME_LG_FORM_MENU_TMP_DC); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TMP_TYPE.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_portee_temporelle'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TMP_VALEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
// Requete pour connaitre les informations sur l'administrateur ayant fait la dernière modif |
if (!isset($aso_valeurs[ADME_LG_ACTION_CLASSIQUE_VERIFIER]) && !isset($aso_valeurs[ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION])) { |
$requete_admin = 'SELECT * '. |
'FROM gen_annuaire '. |
'WHERE ga_id_administrateur = '.$aso_valeurs['gm_ce_admin']; |
$resultat_admin = $db->query($requete_admin); |
if (DB::isError($resultat_admin)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_admin->getMessage(), $requete_admin)); |
} |
$ligne_admin = $resultat_admin->fetchRow(DB_FETCHMODE_OBJECT); |
$info_admin = '<p class="info">Dernière modification par '.$ligne_admin->ga_prenom.' '.$ligne_admin->ga_nom.'</p>'; |
$form->addElement('html', $info_admin); |
} |
//fin de la div cachée pour les options compliquées------------------------------------------------- |
$form->addElement('html', "\n".'</fieldset>'."\n".'</div>'); |
$buttons[] = &HTML_QuickForm::createElement('link', 'annuler', ADME_LG_FORM_MENU_ANNULER, |
str_replace ("&", "&", $url->getURL()), ADME_LG_FORM_MENU_ANNULER); // Le preg_replace contourne un pb de QuickForm et Net_URL |
// qui remplacent deux fois les & par des & |
//Bouton de validation du formulaire |
if ($traduction) { |
$buttons[] = &HTML_QuickForm::createElement('submit', ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION, ADME_LG_FORM_MENU_VALIDER); |
$form->addElement('hidden', 'adme_site_id', $adme_site_id); |
} |
else { |
$buttons[] = &HTML_QuickForm::createElement('submit', ADME_LG_ACTION_CLASSIQUE_VERIFIER, ADME_LG_FORM_MENU_VALIDER); |
} |
$form->addGroup($buttons, 'form_boutons', null, ' '); |
$form->addElement('hidden', 'gm_id_menu', $aso_valeurs['gm_id_menu']); |
// Instanciation avec les valeur par défaut |
$form->setDefaults($aso_valeurs); |
$retour .= $form->toHTML()."\n"; |
return $retour; |
} |
/** Fonction ADME_validerFormAjouterMenuClassique() - Valide les données issues du formulaire pour gen_menu. |
* |
* Cette fonction valide les données à ajouter dans la table gen_menu. |
* |
* @param PEAR::DB l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADME_validerFormAjouterMenuClassique($db, $aso_valeurs) |
{ |
$message = ''; |
if ($aso_valeurs['gm_code_alpha'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_ALPHA.'</p>'; |
} |
if ($aso_valeurs['gm_code_num'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_NUM.'</p>'; |
} |
if ($aso_valeurs['gm_nom'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_NOM.'</p>'; |
} |
if ($aso_valeurs['gm_description_resume'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_INFO_BULLE.'</p>'; |
} |
return $message; |
} |
/** Fonction ADME_validerFormTraduireMenuClassique() - Valide les données issues du formulaire de traduction de menu |
* |
* Cette fonction valide les données à ajouter dans la table gen_menu. |
* |
* @param PEAR::DB l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADME_validerFormTraduireMenuClassique($db, $aso_valeurs) |
{ |
$message = ''; |
if ($aso_valeurs['gm_code_alpha'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_ALPHA.'</p>'; |
} |
if ($aso_valeurs['gm_code_num'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_NUM.'</p>'; |
} |
if ($aso_valeurs['gm_nom'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_NOM.'</p>'; |
} |
if ($aso_valeurs['gm_description_resume'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_INFO_BULLE.'</p>'; |
} |
return $message; |
} |
/** Fonction ADME_modifierMenuClassique() - Met à jour les infos d'un menu classique |
* |
* Fonction modifiant un menu commun à Papyrus. |
* Ancien nom : commitUpdateLevel() |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'authentification. |
* @param integer l'identifiant du menu à administrer. |
* @param array le tableau des valeurs à modifier. |
* @return void les changement sont fait dans la base de données. |
*/ |
function ADME_modifierMenuClassique($db, $auth, $adme_menu_id, $aso_valeurs) |
{ |
$requete = 'UPDATE gen_menu SET '. |
'gm_ce_application = '.$aso_valeurs['gm_ce_application'].', '. |
'gm_application_arguments = "'.$aso_valeurs['gm_application_arguments'].'", '. |
'gm_fichier_squelette = "'.$aso_valeurs['gm_fichier_squelette'].'", '. |
'gm_code_num = '.$aso_valeurs['gm_code_num'].', '. |
'gm_code_alpha = "'.$aso_valeurs['gm_code_alpha'].'", '. |
'gm_nom = "'.$aso_valeurs['gm_nom'].'", '. |
'gm_raccourci_clavier = "'.$aso_valeurs['gm_raccourci_clavier'].'", '. |
'gm_robot = "'.$aso_valeurs['gm_robot'].'", '. |
'gm_titre = "'.$aso_valeurs['gm_titre'].'", '. |
'gm_titre_alternatif = "'.$aso_valeurs['gm_titre_alternatif'].'", '. |
'gm_mots_cles = "'.$aso_valeurs['gm_mots_cles'].'", '. |
'gm_description_libre = "'.$aso_valeurs['gm_description_libre'].'", '. |
'gm_description_resume = "'.$aso_valeurs['gm_description_resume'].'", '. |
'gm_description_table_matieres = "'.$aso_valeurs['gm_description_table_matieres'].'", '. |
'gm_source = "'.$aso_valeurs['gm_source'].'", '. |
'gm_auteur = "'.$aso_valeurs['gm_auteur'].'", '. |
'gm_contributeur = "'.$aso_valeurs['gm_contributeur'].'", '. |
'gm_editeur = "'.$aso_valeurs['gm_editeur'].'", '. |
'gm_date_creation = "'.$aso_valeurs['gm_date_creation'].'", '. |
'gm_date_debut_validite = "'.$aso_valeurs['gm_date_debut_validite'].'", '. |
'gm_date_fin_validite = "'.$aso_valeurs['gm_date_fin_validite'].'", '. |
'gm_date_copyright = "'.$aso_valeurs['gm_date_copyright'].'", '. |
'gm_licence = "'.$aso_valeurs['gm_licence'].'", '. |
'gm_categorie = "'.$aso_valeurs['gm_categorie'].'", '. |
'gm_public = "'.$aso_valeurs['gm_public'].'", '. |
'gm_public_niveau = "'.$aso_valeurs['gm_public_niveau'].'", '. |
'gm_ce_type_portee_spatiale = "'.$aso_valeurs['gm_ce_type_portee_spatiale'].'", '. |
'gm_portee_spatiale = "'.$aso_valeurs['gm_portee_spatiale'].'", '. |
'gm_ce_type_portee_temporelle = "'.$aso_valeurs['gm_ce_type_portee_temporelle'].'", '. |
'gm_portee_temporelle = "'.$aso_valeurs['gm_portee_temporelle'].'", '. |
'gm_ce_admin = "'.$auth->getAuthData('ga_id_administrateur').'" '. |
'WHERE gm_id_menu = '.$adme_menu_id; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Gestion de la relation menu par défaut |
if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) { |
$requete_id_menu_supr_defaut = 'SELECT GM01.gm_id_menu AS id_menu_supr_defaut '. |
'FROM gen_menu AS GM01, gen_menu AS GM02, gen_menu_relation '. |
'WHERE GM02.gm_id_menu = '.$adme_menu_id.' '. |
'AND GM02.gm_ce_site = GM01.gm_ce_site '. |
'AND GM01.gm_id_menu = gmr_id_menu_01 '. |
'AND gmr_id_valeur = 101 ';// 101 = menu par "defaut" |
$resultat_menu_supr_defaut = $db->query($requete_id_menu_supr_defaut); |
if (DB::isError($resultat_menu_supr_defaut)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu_supr_defaut->getMessage(), $requete_id_menu_supr_defaut)); |
} |
$ligne_menu_supr_defaut = $resultat_menu_supr_defaut->fetchRow(DB_FETCHMODE_OBJECT); |
if ($resultat_menu_supr_defaut->numRows() > 0 ) { |
$requete_supr_defaut = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = gmr_id_menu_02 '. |
'AND gmr_id_valeur = 101 '.// 101 = menu par "defaut" |
'AND gmr_id_menu_01 = '.$ligne_menu_supr_defaut->id_menu_supr_defaut; |
$resultat_supr_defaut = $db->query($requete_supr_defaut); |
if (DB::isError($resultat_supr_defaut)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut)); |
} |
} |
$resultat_menu_supr_defaut->free(); |
// Requete d'insertion de la relation menu par défaut |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$adme_menu_id.', '. |
'gmr_id_menu_02 = '.$adme_menu_id.', '. |
'gmr_id_valeur = 101, '. |
'gmr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
} |
/** Fonction ADME_deplacerMenuClassique() - Permet de déplacer un menu dans la hiérarchie. |
* |
* Permet de déplacer un menu dans la hiérarchie des menus classiques. |
* Ancien nom : moveMenu() |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer identifiant du site administré. |
* @param integer identifiant du menu à déplacer. |
* @param boolean indique si on veut monter le menu (true) ou le descendre (false). |
* @return void modifie la base de données. |
*/ |
function ADME_deplacerMenuClassique($db, $adme_site_id, $adme_menu_id, $bln_monter) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'information sur le site de ce menu. |
$objet_site = GEN_lireInfoSitePrincipal($db, $adme_site_id); |
if ($objet_site == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_SITE.'<br />'. |
'Id du site : '. $adme_site_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'informations sur les relations du menu courant. |
$ligne_menu_courant_relation = GEN_lireInfoMenuRelation($db, $adme_menu_id, '1'); |
if ($ligne_menu_courant_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération de l'identifiant du menu pére |
$id_pere = GEN_lireIdentifiantMenuPere($adme_menu_id); |
if ($id_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Recherche d'information sur le menu précédent ou suivant le menu courant |
$requete = 'SELECT GMR01.gmr_ordre AS nouvel_ordre, GMR01.gmr_id_menu_01 AS id_menu_remplace '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = '.$objet_site->gs_id_site.' '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'AND GMR01.gmr_id_menu_02 = '.$id_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 ';// 1 = relation menu "père" |
if ($bln_monter) { |
$requete .= 'AND GMR01.gmr_ordre < '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
} else { |
$requete .= 'AND GMR01.gmr_ordre > '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre ASC'; |
} |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
return null; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour des relations du menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.$ligne_menu->nouvel_ordre.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour des relations du menu précédent ou suivant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu->id_menu_remplace.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_traduireMenuClassique() - Permet de traduire un menu classique |
* |
* Permet de traduire un menu classique |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer identifiant du site administré. |
* @param integer identifiant du menu à déplacer. |
* @return void modifie la base de données. |
*/ |
function ADME_traduireMenuClassique($db, $auth, $adme_menu_id, $aso_valeurs) { |
// Récupération d'infos sur le site principal. |
$objet_site = GEN_lireInfoSitePrincipal($db, $aso_valeurs['adme_site_id']); |
if ($objet_site == false) { |
die('ERREUR Génésia Administrateur de Menus : impossible de lire les infos du site.<br />'. |
'ID du site : '.$aso_valeurs['adme_site_id'].'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$nouveau_id_menu = SQL_obtenirNouveauId($db, 'gen_menu', 'gm_id_menu'); |
$auteur = $auth->getAuthData('ga_prenom').' '.$auth->getAuthData('ga_nom'); |
$requete = 'INSERT INTO gen_menu '. |
'SET gm_id_menu = '.$nouveau_id_menu.', '. |
'gm_ce_site = '.$aso_valeurs['adme_site_id'].', '. |
'gm_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '. |
'gm_ce_application = '.$aso_valeurs['gm_ce_application'].', '. |
'gm_application_arguments = "'.$aso_valeurs['gm_application_arguments'].'", '. |
'gm_fichier_squelette = "'.$aso_valeurs['gm_fichier_squelette'].'", '. |
'gm_code_num = '.$aso_valeurs['gm_code_num'].', '. |
'gm_code_alpha = "'.$aso_valeurs['gm_code_alpha'].'", '. |
'gm_nom = "'.$aso_valeurs['gm_nom'].'", '. |
'gm_raccourci_clavier = "'.$aso_valeurs['gm_raccourci_clavier'].'", '. |
'gm_robot = "'.$aso_valeurs['gm_robot'].'", '. |
'gm_titre = "'.$aso_valeurs['gm_titre'].'", '. |
'gm_titre_alternatif = "'.$aso_valeurs['gm_titre_alternatif'].'", '. |
'gm_mots_cles = "'.$aso_valeurs['gm_mots_cles'].'", '. |
'gm_description_libre = "'.$aso_valeurs['gm_description_libre'].'", '. |
'gm_description_resume = "'.$aso_valeurs['gm_description_resume'].'", '. |
'gm_description_table_matieres = "'.$aso_valeurs['gm_description_table_matieres'].'", '. |
'gm_source = "'.$aso_valeurs['gm_source'].'", '. |
'gm_auteur = "'.$aso_valeurs['gm_auteur'].'", '. |
'gm_contributeur = "'.$aso_valeurs['gm_contributeur'].'", '. |
'gm_editeur = "'.$aso_valeurs['gm_editeur'].'", '. |
'gm_date_creation = "'.$aso_valeurs['gm_date_creation'].'", '. |
'gm_date_debut_validite = "'.$aso_valeurs['gm_date_debut_validite'].'", '. |
'gm_date_fin_validite = "'.$aso_valeurs['gm_date_fin_validite'].'", '. |
'gm_date_copyright = "'.$aso_valeurs['gm_date_copyright'].'", '. |
'gm_licence = "'.$aso_valeurs['gm_licence'].'", '. |
'gm_categorie = "'.$aso_valeurs['gm_categorie'].'", '. |
'gm_public = "'.$aso_valeurs['gm_public'].'", '. |
'gm_public_niveau = "'.$aso_valeurs['gm_public_niveau'].'", '. |
'gm_ce_type_portee_spatiale = "'.$aso_valeurs['gm_ce_type_portee_spatiale'].'", '. |
'gm_portee_spatiale = "'.$aso_valeurs['gm_portee_spatiale'].'", '. |
'gm_ce_type_portee_temporelle = "'.$aso_valeurs['gm_ce_type_portee_temporelle'].'", '. |
'gm_portee_temporelle = "'.$aso_valeurs['gm_portee_temporelle'].'", '. |
'gm_ce_admin = "'.$auth->getAuthData('ga_id_administrateur').'" '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation traduction |
if (!isset($adme_menu_id) && empty($adme_menu_id)) { |
$adme_menu_id = 0 ;// Identifiant du père |
} |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$adme_menu_id.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu = $ligne->gmr_ordre + 1; |
$resultat->free(); |
// Traduction : |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$adme_menu_id.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 2, '. // Avoir traduction |
'gmr_ordre = '.$nouveau_ordre_menu; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation-type "menu classique" |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT * '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = gmr_id_menu_01 '. |
'AND gmr_id_valeur = 100 '.// 100 = type menu "classique" |
'AND gmr_id_menu_01 = gm_id_menu '. |
'AND gm_ce_site = '.$aso_valeurs['adme_site_id'].' '. |
'ORDER BY gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu_classique = $ligne->gmr_ordre + 1; |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 100, '. |
'gmr_ordre = '.$nouveau_ordre_menu_classique; |
$result = $db->query($requete); |
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_indenterMenuClassique() - Permet d'augmenter ou diminuer l'indentation d'un menu dans la |
* hierarchie |
* |
* Permet d'augmenter ou diminuer l'indentation d'un menu dans la hierarchie |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer identifiant du site administré. |
* @param integer identifiant du menu à déplacer. |
* @param boolean indique si on veut diminuer (gauche) l'indentation (true) ou augmenter (droite) l'indentation (false). |
* @return void modifie la base de données. |
*/ |
function ADME_indenterMenuClassique($db, $adme_site_id, $adme_menu_id, $bln_diminuer) { |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'information sur le site de ce menu. |
$objet_site = GEN_lireInfoSitePrincipal($db, $adme_site_id); |
if ($objet_site == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_SITE.'<br />'. |
'Id du site : '. $adme_site_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'informations sur les relations du menu courant. |
$ligne_menu_courant_relation = GEN_lireInfoMenuRelation($db, $adme_menu_id, '1'); |
if ($ligne_menu_courant_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération de l'identifiant du menu pére |
$id_pere = GEN_lireIdentifiantMenuPere($adme_menu_id); |
if ($id_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
if ($bln_diminuer) { |
// Diminution d'un niveau |
if ($id_pere) { |
// Récupération de l'identifiant du menu grand pére, sera le nouveau pere |
$id_grand_pere = GEN_lireIdentifiantMenuPere($id_pere); |
if ($id_grand_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
// Récupération d'informations sur les relations du menu pere |
$ligne_menu_pere_relation = GEN_lireInfoMenuRelation($db, $id_pere, '1'); |
if ($ligne_menu_pere_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Recherche d'information sur le menu suivant le menu pere |
//------------------------------------------------------------------------------------------------------------------- |
$requete = 'SELECT GMR01.gmr_ordre AS nouvel_ordre, GMR01.gmr_id_menu_01 AS id_menu_remplace '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = '.$objet_site->gs_id_site.' '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'AND GMR01.gmr_id_menu_02 = '.$id_grand_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre > '.$ligne_menu_pere_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
$no=$ligne_menu_pere_relation->gmr_ordre+1; |
} |
else { |
$no=$ligne_menu->nouvel_ordre+1; |
} |
// Mise à jour pere menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_id_menu_02 = '.$id_grand_pere.' ,'. |
'gmr_ordre = '.$no.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
} |
} |
else { |
$requete = 'SELECT GMR01.gmr_id_menu_01 '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = '.$objet_site->gs_id_site.' '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'AND GMR01.gmr_id_menu_02 = '.$id_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre < '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
return null; |
} |
//---------------------------------------------------------------------------- |
// Recherche dernier fils |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$ligne_menu->gmr_id_menu_01.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat->free(); |
if (isset($ligne)) { |
$no = $ligne->gmr_ordre + 1; |
} |
else { |
$no = 1; |
} |
// Mise à jour pere menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_id_menu_02 = '.$ligne_menu->gmr_id_menu_01.' ,'. |
'gmr_ordre = '.$no.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
} |
} |
/** Fonction ADME_supprimerMenuClassique() - Supprime un menu classique. |
* |
* Supprime de la base de données de Papyrus toutes les traces du menu classiques |
* passé en paramètre. |
* Ancien nom : deleteMenu() |
* |
* @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_supprimerMenuClassique($db, $adme_id_site, $id_menu_a_supprimer) |
{ |
$code_menu = GEN_lireInfoMenu($db, $id_menu_a_supprimer, DB_FETCHMODE_ASSOC); |
//---------------------------------------------------------------------------- |
// Y a t'il des sous_menus |
$requete = 'SELECT COUNT(gm_id_menu) AS compte '. |
'FROM gen_menu, gen_menu_relation '. |
'WHERE gmr_id_menu_02 = '.$id_menu_a_supprimer.' '. |
'AND gmr_id_valeur = 1 '. |
'AND gmr_id_menu_01 = gm_id_menu '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
if ($ligne && ($ligne->compte > 0)) { |
return ADME_LG_ERREUR_EXISTE_SOUS_MENU; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour de l'ordre des menus |
$ligne_menu_supr_relation = GEN_lireInfoMenuRelation($db, $id_menu_a_supprimer, '1'); // 1 = relation "avoir père" |
$requete = 'SELECT GMR01.gmr_id_menu_01, GMR01.gmr_ordre '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = '.$adme_id_site.' '.// le site du menu! |
'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique" |
'AND GMR01.gmr_id_menu_02 = '.$ligne_menu_supr_relation->gmr_id_menu_02.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre > '.$ligne_menu_supr_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre ASC'; |
$resultat = $db->query($requete); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
// Mise à jour des relations hiérarchiques du menu courant |
$requete_maj = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.($ligne->gmr_ordre - 1).' '. |
'WHERE gmr_id_menu_01 = '.$ligne->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_maj = $db->query($requete_maj); |
(DB::isError($resultat_maj)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_maj->getMessage(), $requete_maj)) : ''; |
} |
$resultat->free(); |
//---------------------------------------------------------------------------- |
// S'il n'y a plus de sous niveau, on supprime le menu |
$requete = 'DELETE FROM gen_menu '. |
'WHERE gm_id_menu = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Suppression du contenu !!!! |
$requete = 'DELETE FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu= '.$id_menu_a_supprimer.' '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_supprimerMenuClassiqueTraduction() - Supprime une traduction de menu classique. |
* |
* Supprime de la base de données de Papyrus toutes les traces du menu classiques |
* passé en paramètre. |
* Ancien nom : deleteMenu() |
* |
* @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_supprimerMenuClassiqueTraduction($db, $adme_id_site, $id_menu_a_supprimer) |
{ |
$code_menu = GEN_lireInfoMenu($db, $id_menu_a_supprimer, DB_FETCHMODE_ASSOC); |
if ($code_menu === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU.'<br />'. |
'Idenitifiant du menu n° : '. $id_menu_a_supprimer .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$requete = 'DELETE FROM gen_menu '. |
'WHERE gm_id_menu = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_02 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Suppression du contenu !!!! |
$requete = 'DELETE FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$id_menu_a_supprimer.' '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
function ADME_verifier_traduction_possible($db, $url, $adme_site_id, $adme_menu_id) { |
$aso_valeurs = GEN_lireInfoMenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC); |
if ($aso_valeurs === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU.'<br />'. |
'Idenitifiant du menu n° : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
// Recherche liste des menu deja traduits |
$requete = 'SELECT distinct gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_01 = ' . $adme_menu_id .' '. |
'AND gm_id_menu = gmr_id_menu_02 '. |
'AND gmr_id_valeur = 2 '; // 2 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$not_in_langue=''; |
if ( $resultat->numRows() == 0 ) { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
else { |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$not_in_langue="'".$ligne->gm_ce_i18n."'".",".$not_in_langue; |
$end="'".$ligne->gm_ce_i18n."'"; |
} |
if ($not_in_langue) { |
$not_in_langue="'".$aso_valeurs['gm_ce_i18n']."'".",".$not_in_langue; |
$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')'; |
} |
else { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
} |
$requete = "SELECT * FROM gen_i18n where ".$not_in_langue; |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$retour = $resultat->numRows(); |
$resultat->free(); |
$message=''; |
if ($retour == 0) { |
$message = '<p class="pap_erreur">Plus de traduction possible pour ce menu </p>'; |
} |
return $message; |
} |
/** Fonction ADME_selectionnerMenuClassiqueTraduction()() Selection un menu classique comme traduction par defaut |
* |
* |
* @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_selectionnerMenuClassiqueTraduction($db, $adme_id_site, $id_menu) |
{ |
// 1 : Rechercher traduction parente : si presente on est dans une traduc. si absente on |
// est dans un menu en version originale |
$requete_origine_traduction = 'SELECT gmr_id_menu_01 '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = ' . $id_menu .' '. |
'AND gmr_id_valeur = 2 '; // 2 = "avoir traduction" |
$resultat_origine_traduction = $db->query($requete_origine_traduction) ; |
if (DB::isError($resultat_origine_traduction)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete_origine_traduction) ); |
} |
if ($resultat_origine_traduction->numRows() > 0) { |
$ligne_origine_traduction = $resultat_origine_traduction->fetchRow(DB_FETCHMODE_OBJECT); |
$id_menu_origine=$ligne_origine_traduction->gmr_id_menu_01; |
} |
else { |
$id_menu_origine=$id_menu; |
} |
$requete_suppression = 'DELETE from gen_menu_relation '. |
'WHERE gmr_id_menu_01 = ' . $id_menu_origine . ' ' . |
'AND gmr_id_valeur=105 '; // 105 Traduction par defaut |
$resultat_suppression = $db->query($requete_suppression); |
(DB::isError($resultat_suppression)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_suppression->getMessage(), $requete_suppression)) : ''; |
$requete_insertion = 'INSERT into gen_menu_relation '. |
' SET gmr_id_menu_01 = ' . $id_menu_origine . ', ' . |
' gmr_id_menu_02 = ' . $id_menu . ', ' . |
' gmr_id_valeur = 105' ; |
$resultat_insertion = $db->query($requete_insertion); |
(DB::isError($resultat_insertion)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_insertion->getMessage(), $requete_insertion)) : ''; |
} |
/** 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 | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.41 2007-10-24 14:43:02 ddelon |
* Gestion des menus reservés à une langue |
* |
* 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 |
* |
* Revision 1.38 2007-06-26 14:18:53 florian |
* amélioration des formulaires des différentes applis de l'interface d'administration afin de les simplifier |
* |
* Revision 1.37 2006/10/16 15:49:07 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.36 2006/10/06 13:38:45 florian |
* ergonomie amélioree |
* |
* Revision 1.35 2006/09/07 13:45:56 jp_milcent |
* Trie par ordre alphabétique des appli. |
* |
* Revision 1.34 2006/06/29 23:04:01 ddelon |
* Bug defaut traduction sur menu commun |
* |
* Revision 1.33 2006/06/29 18:58:57 ddelon |
* Multilinguisme : menu par defaut pour les menu commun |
* |
* Revision 1.32 2006/06/28 12:53:34 ddelon |
* Multilinguisme : menu par defaut |
* |
* Revision 1.31 2006/04/12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.30 2006/03/27 14:33:04 ddelon |
* Gestion suppression de contenu menu afficheur |
* |
* Revision 1.29 2006/03/23 20:24:59 ddelon |
* *** empty log message *** |
* |
* Revision 1.28 2006/03/15 09:30:50 florian |
* suppression des echos, qui entrainaient des problemes d'affichages |
* |
* Revision 1.27 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.26 2006/03/10 11:02:36 alexandre_tb |
* remplacement de l'image "Traduire" par un texte "traduire" vu qu'on a pas d'image pour la notion de traduire... |
* |
* Revision 1.25 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.24.2.1 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.24 2005/09/23 13:58:07 ddelon |
* Php5, Projet et Redirection |
* |
* Revision 1.23 2005/09/20 17:01:22 ddelon |
* php5 et bugs divers |
* |
* Revision 1.22 2005/07/08 21:13:15 ddelon |
* Gestion indentation menu |
* |
* Revision 1.21 2005/05/26 16:13:08 jpm |
* Correction taille éditeur: passage en text |
* |
* Revision 1.19 2005/05/26 15:34:46 jpm |
* Ajout d'un espace. |
* |
* Revision 1.18 2005/05/26 08:54:20 jpm |
* Ajout info admin ayant fait la dernière modif. |
* |
* Revision 1.17 2005/04/19 16:47:16 jpm |
* Gestion des dates de fin de validité des menus. |
* |
* Revision 1.16 2005/03/29 15:49:12 jpm |
* Ajout de la date de création dans le formulaire des menus. |
* |
* Revision 1.15 2005/02/28 11:05:06 jpm |
* Modification des auteurs. |
* |
* Revision 1.14 2004/12/01 16:47:28 jpm |
* Ajout d'une boite javascript de confirmation de suppression d'un menu. |
* |
* Revision 1.13 2004/11/29 18:34:51 jpm |
* Correction bogue checkbox. |
* |
* Revision 1.12 2004/11/15 16:51:12 jpm |
* Correction bogue de mise à jour de l'ordre des menus. |
* |
* Revision 1.11 2004/11/10 19:41:14 jpm |
* Correction bogue. |
* |
* Revision 1.10 2004/11/10 17:26:07 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.9 2004/11/09 17:53:00 jpm |
* Changement des noms des actions sur les menus classiques. |
* |
* Revision 1.8 2004/11/09 17:48:35 jpm |
* Gestion de différentes interfaces d'administration. |
* |
* Revision 1.7 2004/11/09 12:37:34 jpm |
* Fin de gestion des menus et mise en conformité avec la convention de codage. |
* |
* Revision 1.6 2004/11/08 17:40:07 jpm |
* Gestion correcte de l'ouverture et fermeture des menus. |
* Utilisation des sessions. |
* |
* Revision 1.5 2004/11/04 19:11:38 jpm |
* Mise en conformité vis à vis de la convention de codage. |
* Amélioration de la récursivité de la gestion de l'affichage des menus. |
* |
* Revision 1.4 2004/10/25 16:27:42 jpm |
* Correction d'un bogue dans la gestion du déplacement des menus. |
* |
* Revision 1.3 2004/09/23 17:45:13 jpm |
* Amélioration de la gestion des liens annuler et du selecteur de sites. |
* |
* Revision 1.2 2004/07/06 17:07:37 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 15:04:32 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.27 2004/05/10 12:13:03 jpm |
* Modification des formulaires. |
* |
* Revision 1.26 2004/05/07 16:31:20 jpm |
* Amélioration du formulaire d'un menu classique. |
* |
* Revision 1.25 2004/05/07 07:23:53 jpm |
* Amélioration du code, des commentaires et correction de bogues. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/bibliotheque/adme_menu_commun.fonct.php |
---|
New file |
0,0 → 1,1646 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | 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.28 2007-10-24 14:43:02 ddelon Exp $ |
/** |
* Application de gestion des menus communs |
* |
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus communs. |
* Par menus communs, nous entendons tous les menus devant paraitre sur l'ensemble des pages de plusieurs site, |
* comme le lien vers le plan du site, le lien vers la charte d'accessibilité, le flux rss... |
* |
*@package Admin_menu |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author David Delon <david.delon@clapas.net> |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.28 $ $Date: 2007-10-24 14:43:02 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction ADME_afficherListeMenuCommun () - Affiche un arbre de menu en xhtml |
* |
* Elle forme l'arbre des menus communs à administrer. |
* Ancien nom : deployer_menu(). |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du menu à administrer. |
* @param integer l'identifiant du menu sur lequel on agit. |
* @param string le nom de l'action courante. |
* @param integer l'identifiant du menu en cours de déploiement. |
* @param boolean true indique que l'on a à faire au premier appel de cette fonction récursive. |
* @return string le code XHTML constituant l'arbre des menus à administrer. |
*/ |
function ADME_afficherListeMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $adme_action, $id_menu_a_deployer, $bln_premier_appel = true) |
{ |
// Initialisation des variables : |
$retour = ''; |
// Est-ce que ces menus comporte des sous-menus ? |
$requete_sous_menu = 'SELECT gm_id_menu '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$id_menu_a_deployer.' '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu '. |
//'AND gm_ce_site = '.$adme_site_id.' '. |
'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 GMR02.gmr_id_valeur = 102 '.// 102 = type "menu commun" |
'ORDER BY GMR01.gmr_ordre ASC'; |
$resultat_sous_menu = $db->query($requete_sous_menu) ; |
if (DB::isError($resultat_sous_menu)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_sous_menu->getMessage(), $requete_sous_menu)); |
} |
// Gestion du stockage ou déstockage des menus ouverts |
if (($adme_action == ADME_LG_ACTION_DEPLIER || $adme_action == ADME_LG_ACTION_COMMUN_AJOUTER) && $id_menu_a_deployer != 0) { |
$_SESSION['adme_menus_communs_ouverts'][$adme_menu_id] = $adme_menu_id; |
} |
if ($adme_action == ADME_LG_ACTION_PLIER && $id_menu_a_deployer != 0) { |
unset($_SESSION['adme_menus_communs_ouverts'][$adme_menu_id]); |
foreach ($_SESSION['adme_menus_communs_ouverts'] as $val) { |
if (GEN_etreAncetre($adme_menu_id, $val)) { |
unset($_SESSION['adme_menus_communs_ouverts'][$val]); |
} |
} |
} |
// Gestion affichage des menus |
if ($resultat_sous_menu->numRows() > 0) { |
// Ici, on sait qu'un menu a des sous menus, on commence par l'afficher: |
if ($bln_premier_appel == false) { |
$retour .= '<li>'."\n"; |
if (GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_DEPLIER) || |
isset($_SESSION['adme_menus_communs_ouverts'][$id_menu_a_deployer]) |
){ |
// Affiche un - |
$retour .= ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $id_menu_a_deployer, 1); |
} else if ( !GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_PLIER) || |
!isset($_SESSION['adme_menus_communs_ouverts'][$id_menu_a_deployer]) |
){ |
// Affiche un + |
$retour .= ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $id_menu_a_deployer, 2); |
} |
} |
if ($bln_premier_appel == true || GEN_etreAncetre($id_menu_a_deployer, $adme_menu_id) || |
($id_menu_a_deployer == $adme_menu_id && $adme_action == ADME_LG_ACTION_DEPLIER) || |
isset($_SESSION['adme_menus_communs_ouverts'][$id_menu_a_deployer]) |
){ |
$retour .= '<ul class="menu_commun">'."\n"; |
while ($ligne_sous_menu = $resultat_sous_menu->fetchRow(DB_FETCHMODE_OBJECT)) { |
$retour .= ADME_afficherListeMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $adme_action, $ligne_sous_menu->gm_id_menu, false); |
} |
$retour .= '</ul>'."\n"; |
} |
if ($bln_premier_appel == false) { |
$retour .= '</li>'."\n"; |
} |
} else if ($resultat_sous_menu->numRows() == 0 && $bln_premier_appel == false) { |
$retour .= '<li>'."\n"; |
$retour .= ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $id_menu_a_deployer, 0); |
$retour .= '</li>'."\n"; |
} |
return $retour; |
} |
/** Fonction ADME_retournerXhtmlMenuCommun() - Effectue une sortie d'un menu en XHTML |
* |
* Retourne le XHTML d'une ligne de l'arbre des menus communs permettant de l'administer. |
* Ancien nom : menu_toHtml(). |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @param integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +. |
* @return string une ligne de liste XHTML |
*/ |
function ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $int_deplier,$est_traduction=false,$menu_traduction_defaut=0) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération des infos concernant l'administrateur d'un menu |
$requete = 'SELECT gen_menu.*, ga_prenom '. |
'FROM gen_menu, gen_annuaire '. |
'WHERE gm_id_menu = '.$adme_menu_id.' '. |
'AND gm_ce_admin = ga_id_administrateur'; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
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); |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML image plier-déplier |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
$xhtml_pd = ''; |
if ($int_deplier != 0) { |
if ($int_deplier == 1) { |
// Afficher un - |
$image_plier_deplier = ADME_IMAGE_MOINS; |
$alt = ADME_LG_ACTION_PLIER_ALT; |
$url->addQueryString('adme_action', ADME_LG_ACTION_PLIER); |
$url_plier_deplier = $url->getURL(); |
} else if ($int_deplier == 2) { |
// Afficher un + |
$image_plier_deplier = ADME_IMAGE_PLUS; |
$alt = ADME_LG_ACTION_DEPLIER_ALT; |
$url->addQueryString('adme_action', ADME_LG_ACTION_DEPLIER); |
$url_plier_deplier = $url->getURL(); |
} |
$xhtml_pd = '<a href="'.$url_plier_deplier.'" title="'.$alt.'">'. |
'<img class="'.ADME_CLASS_IMG_PD.'" src="'.$image_plier_deplier.'" alt="'.$alt.'" />'. |
'</a>'.' '."\n"; |
} |
$xhtml_info=''; |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML du nom du menu et de ses infos |
$xhtml_info .= htmlentities(empty($ligne->gm_nom) ? ADME_LG_PARENTHESE_OUVRANTE.$ligne->gm_nom.ADME_LG_PARENTHESE_FERMANTE : $ligne->gm_nom); |
$xhtml_info .= ' '; |
$xhtml_info .= ADME_LG_PARENTHESE_OUVRANTE.$ligne_app->gap_nom.' '.ADME_LG_SLASH.' '.$ligne->ga_prenom.ADME_LG_PARENTHESE_FERMANTE; |
$xhtml_info .= ' '."\n"; |
//------------------------------------------------------------------------------------------------------------------- |
// XHTML actions |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_MODIFIER); |
$xhtml_action = '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_MODIFIER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_VOIR.'" alt="'.ADME_LG_ACTION_COMMUN_MODIFIER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_MONTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_MONTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_HAUT.'" alt="'.ADME_LG_ACTION_COMMUN_MONTER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_DESCENDRE); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_DESCENDRE_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_BAS.'" alt="'.ADME_LG_ACTION_COMMUN_DESCENDRE_ALT.'" />'. |
'</a> '."\n"; |
$url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_DIMINUER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_DIMINUER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_GAUCHE.'" alt="'.ADME_LG_ACTION_COMMUN_DIMINUER_ALT.'" />'. |
'</a> '."\n"; |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_AUGMENTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_AUGMENTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_FLECHE_DROITE.'" alt="'.ADME_LG_ACTION_COMMUN_AUGMENTER_ALT.'" />'. |
'</a> '."\n"; |
} |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_SUPPRIMER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_SUPPRIMER_TITLE.'" onclick="javascript:return confirm(\''.ADME_LG_ACTION_SUPPRIMER_CONFIRMATION.'\');">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_SUPPRIMER.'" alt="'.ADME_LG_ACTION_COMMUN_SUPPRIMER_ALT.'" />'. |
'</a> '."\n"; |
} |
else { |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_TITLE.'" onclick="javascript:return confirm(\''.ADME_LG_ACTION_SUPPRIMER_CONFIRMATION.'\');">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_SUPPRIMER.'" alt="'.ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_ALT.'" />'. |
'</a> '."\n"; |
} |
$url->removeQueryString('adme_action'); |
if (!$est_traduction) { |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_AJOUTER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_AJOUTER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_NOUVEAU.'" alt="'.ADME_LG_ACTION_COMMUN_AJOUTER_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
$url->removeQueryString('adme_action'); |
// Si l'application liée est "texte simple", on ajoute un icone avec un lien vers |
// l'administration de cette application. |
if ($ligne_app->gap_id_application != 0 && GEN_verifierPresenceInterfaceAdmin($db, $ligne_app->gap_id_application)) { // l'appli afficheur a pour id 3 |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_ADMINISTRER); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_ADMINISTRER_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TEXTE.'" alt="'.ADME_LG_ACTION_ADMINISTRER_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
if (!$est_traduction) { |
$url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_TRADUIRE); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE.'">'. |
ADME_LG_ACTION_COMMUN_TRADUIRE_ALT. |
'</a> '."\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.'" />'. |
' '."\n"; |
} |
else { |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
} |
$xhtml_traduction=''; |
// $id_langue = $GLOBALS['_GEN_commun']['i18n']; |
$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)) |
: ''; |
if ($resultat_traduction->numRows() > 0 ) { |
$requete_traduction_defaut = 'SELECT gmr_id_menu_02 '. |
'FROM gen_menu_relation '. |
'WHERE '.$adme_menu_id.' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 traduction par defaut |
$resultat_traduction_defaut = $db->query($requete_traduction_defaut); |
(DB::isError($resultat_traduction_defaut)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction_defaut)) |
: ''; |
if ($resultat_traduction_defaut->numRows() == 0 ) { |
$menu_traduction_defaut=0; |
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'. |
' '."\n"; |
} |
else { |
$ligne_traduction_defaut = $resultat_traduction_defaut->fetchRow(DB_FETCHMODE_OBJECT); |
$menu_traduction_defaut=$ligne_traduction_defaut->gmr_id_menu_02; |
if ($menu_traduction_defaut!=$adme_menu_id) { |
$url->removeQueryString('adme_action'); |
$url->addQueryString('adme_action', ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT); |
$xhtml_action .= '<a href="'.$url->getURL().'" title="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE.'">'. |
'<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'. |
'</a>'.' '."\n"; |
} |
else { |
$xhtml_action .= '<img class="'.ADME_CLASS_IMG_ICONE.'" src="'.ADME_IMAGE_TRADUCTION_DEFAUT_AFFICHAGE.'" alt="'.ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT.'" />'. |
' '."\n"; |
} |
} |
while ($ligne_resultat = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) { |
$xhtml_traduction.="<br><em>".$ligne_resultat->gm_ce_i18n.": ".ADME_retournerXhtmlMenuCommun($db, $url, $adme_site_id, $ligne_resultat->gmr_id_menu_02, 0,true,$menu_traduction_defaut)."</em>"; |
} |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Envoi du menu. |
$retour = $xhtml_pd.$xhtml_info.$xhtml_action.$xhtml_traduction; |
return $retour; |
} |
/** Fonction ADME_ajouterMenuCommun() - Ajoute un sous menu commun au menu commun courant |
* |
* Fonction ajoutant un menu commun à Papyrus. |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'authentification. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @return void les changement sont fait dans la base de données. |
*/ |
function ADME_ajouterMenuCommun($db, $auth, $adme_site_id, $adme_menu_id) |
{ |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur le nouveau menu |
$objet_site = GEN_lireInfoSitePrincipal($db, $adme_site_id); |
if ($objet_site == false) { |
die('ERREUR Génésia Administrateur de Menus : '.ADME_LG_ERREUR_INFO_SITE.'<br />'. |
'ID du site : '.$adme_site_id.'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$nouveau_id_menu = SQL_obtenirNouveauId($db, 'gen_menu', 'gm_id_menu'); |
$auteur = $auth->getAuthData('ga_prenom').' '.$auth->getAuthData('ga_nom'); |
//---------------------------------------------------------------------------- |
// Ajout du nouveau menu |
$requete = 'INSERT INTO gen_menu '. |
'SET gm_id_menu = '.$nouveau_id_menu.', '. |
'gm_ce_site = 0, '. |
'gm_ce_i18n = "'.$objet_site->gs_ce_i18n.'", '. |
'gm_ce_application = 0, '. |
'gm_code_num = '.$nouveau_id_menu.', '. |
'gm_code_alpha = "menu_commun_'.$nouveau_id_menu.'", '. |
'gm_nom = "menu_commun_'.$nouveau_id_menu.'", '. |
'gm_titre = "menu_commun_'.$nouveau_id_menu.'", '. |
'gm_description_resume = "menu_commun_'.$nouveau_id_menu.'", '. |
'gm_auteur = "'.$auteur.'", '. |
'gm_date_creation = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_soumission = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_acceptation = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_publication = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_debut_validite = "'.date('Y-m-d H:i:s').'", '. |
'gm_date_fin_validite = "0000-00-00 00:00:00", '. |
'gm_date_copyright = "'.date('Y-00-00 00:00:00').'", '. |
'gm_categorie = "menu", '. |
'gm_ce_admin = '.$auth->getAuthData('ga_id_administrateur').' ' |
; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation "père" |
if (!isset($adme_menu_id) && empty($adme_menu_id)) { |
$adme_menu_id = 0 ;// Identifiant du père |
} |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$adme_menu_id.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
if ($resultat->numRows()>0) { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu = $ligne->gmr_ordre + 1; |
} |
else { |
$nouveau_ordre_menu=1; |
} |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_02 = '.$adme_menu_id.', '. |
'gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 1, '. |
'gmr_ordre = '.$nouveau_ordre_menu; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation-type "commun" |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT * '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = gmr_id_menu_01 '. |
'AND gmr_id_valeur = 102 '.// 102 = type "commun" |
'AND gmr_id_menu_01 = gm_id_menu '. |
'AND gm_ce_site = 0 '.// un menu commun n'a pas de site lié! |
'ORDER BY gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
if ($resultat->numRows()>0) { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_commun = $ligne->gmr_ordre + 1; |
} |
else { |
$nouveau_ordre_commun = 0; |
} |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 102, '. |
'gmr_ordre = '.$nouveau_ordre_commun; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_afficherFormMenuCommun() - Affiche le formulaire pour un menu commun. |
* |
* Utilise HTML_QuickForm pour générer le formulaire. |
* Ancien nom : showUpper(). |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'url de base. |
* @param integer l'identifiant du site à administrer. |
* @param integer l'identifiant du menu à administrer. |
* @param array le tableau associatif des valeurs à afficher dans le formulaire. |
* @return string le formulaire XHTML. |
*/ |
function ADME_afficherFormMenuCommun($db, $url, $adme_site_id, $adme_menu_id, $aso_valeurs,$traduction=FALSE) |
{ |
// Initialisation de variable |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
// Récupération des informations du menu concerné. |
if (!isset($aso_valeurs[ADME_LG_ACTION_COMMUN_VERIFIER]) && !isset($aso_valeurs[ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION])) { |
$aso_valeurs = GEN_lireInfoMenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC); |
if ($aso_valeurs === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU.'<br />'. |
'Idenitifiant du menu n° : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
} |
// Titre de la page |
if ($traduction) { |
$retour = '<h1>'.ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL_TRADUCTION.'</h1>'."\n"; |
} |
else { |
$retour = '<h1>'.ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL.'</h1>'."\n"; |
} |
$retour .= '<p class="adme_menu_id" >'.ADME_LG_FORM_MENU_ID.'<span id="adme_menu_id">'.$aso_valeurs['gm_id_menu'].'</span></p>'."\n"; |
// Création du formulaire |
// Notes : Quickform semble remplacer les & des & à nouveau par des & solution utiliser str_replace()... |
$form =& new HTML_QuickForm('form_menu_commun', 'post', str_replace('&', '&', $url->getUrl())); |
$tab_index = 1000; |
$squelette =& $form->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form{attributes}>'."\n"."\n".'{content}'."\n"."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<li>'."\n". |
'{label}'."\n". |
'{element}'."\n". |
'<!-- BEGIN required --><span class="symbole_obligatoire">'.ADME_LG_FORM_SYMBOLE_CHP_OBLIGATOIRE.'</span><!-- END required -->'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</li>'."\n"); |
$squelette->setRequiredNoteTemplate("\n".'<p><span class="symbole_obligatoire">'.ADME_LG_FORM_SYMBOLE_CHP_OBLIGATOIRE.'</span> {requiredNote}</p>'."\n"); |
$partie_menu_debut = '<fieldset>'."\n".'<legend>'.ADME_LG_FORM_MENU_COMMUN_TITRE_CONFIG.'</legend>'."\n".'<ul>'."\n"; |
$form->addElement('html', $partie_menu_debut); |
$id = 'gm_code_num'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 5, 'maxlength' => 5); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CODE_NUM.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_CODE_NUM, 'required', '', 'client'); |
$id = 'gm_code_alpha'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 50, 'maxlength' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CODE_ALPHA.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_CODE_ALPHA, 'required', '', 'client'); |
$id = 'gm_nom'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 50, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_NOM.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_NOM, 'required', '', 'client'); |
$form->applyFilter($id, 'trim'); |
$id = 'gm_raccourci_clavier'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 1, 'maxlength' => 1); |
$label = '<label for="'.$id.'">'.'Raccourci clavier'.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_fichier_squelette'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 50, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_FICHIER_SQUELETTE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_description_resume'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 2, 'cols' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_INFO_BULLE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$form->addRule($id, ADME_LG_FORM_MENU_REGLE_INFO_BULLE, 'required', '', 'client'); |
// Requête sur les applications |
$requete = 'SELECT gap_id_application, gap_nom '. |
'FROM gen_application '. |
'WHERE gap_bool_applette = 0 '. |
'ORDER BY gap_nom ASC';// Pour éviter d'afficher les applettes. |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$aso_options[$ligne->gap_id_application] = $ligne->gap_nom; |
} |
$resultat->free(); |
$id = 'gm_ce_application'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_APPLI.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
if ($traduction) { |
// Recherche liste des menu deja traduits |
$requete = 'SELECT distinct gm_ce_i18n '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_01 = ' . $adme_menu_id .' '. |
'AND gm_id_menu = gmr_id_menu_02 '. |
'AND gmr_id_valeur = 2 '; // 2 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$not_in_langue=''; |
if ( $resultat->numRows() == 0 ) { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
else { |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$not_in_langue="'".$ligne->gm_ce_i18n."'".",".$not_in_langue; |
$end="'".$ligne->gm_ce_i18n."'"; |
} |
if ($not_in_langue) { |
$not_in_langue="'".$aso_valeurs['gm_ce_i18n']."'".",".$not_in_langue; |
$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')'; |
} |
else { |
$not_in_langue="gi_id_i18n not in('".$aso_valeurs['gm_ce_i18n']."')"; |
} |
} |
$resultat->free(); |
$requete = "SELECT * FROM gen_i18n where ".$not_in_langue; |
/*$requete = 'SELECT * '. |
'FROM gen_i18n ';*/ |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
$aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n; |
} |
$resultat->free(); |
$id = 'gs_ce_i18n'; |
$aso_attributs = array('id' => $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Langue : '.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
} |
$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>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$partie_menu_fin = '</ul>'."\n".'</fieldset>'."\n"; |
$form->addElement('html', $partie_menu_fin); |
$partie_entete_debut = '<fieldset>'."\n".'<legend>'.ADME_LG_FORM_MENU_COMMUN_TITRE_ENTETE.'</legend>'."\n".'<ul>'."\n"; |
$form->addElement('html', $partie_entete_debut); |
$id = 'gm_robot'; |
$aso_options = array( 'index,follow' => ADME_LG_FORM_MENU_INDEX_FOLLOW, |
'index' => ADME_LG_FORM_MENU_INDEX, |
'noindex' => ADME_LG_FORM_MENU_NOINDEX, |
'noindex,nofollow' => ADME_LG_FORM_MENU_NOINDEX_NOFOLLOW, |
'' => ADME_LG_FORM_MENU_INDEX_VIDE); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ROBOT.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_titre'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TITRE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_titre_alternatif'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TITRE_ALTERNATIF.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_mots_cles'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 50); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_MOT_CLE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_description_libre'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DESCRIPTION.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_description_table_matieres'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TABLE_MATIERE.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_source'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_SOURCE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_auteur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_AUTEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_contributeur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 2, 'cols' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CONTRIBUTEUR.'</label>'; |
$form->addElement('textarea', $id, $label, $aso_attributs); |
$id = 'gm_editeur'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 65000); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_EDITEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_creation'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_CREATION.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_debut_validite'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_VALIDITE_DEBUT.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_fin_validite'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_VALIDITE_FIN.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_date_copyright'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 19, 'maxlength' => 19); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_DATE_COPYRIGHT.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_licence'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_URL_LICENCE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_categorie'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_CATEGORIE.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_public'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_PUBLIC.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_public_niveau'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 25, 'maxlength' => 45); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_PUBLIC_NIVEAU.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_ce_type_portee_spatiale'; |
$aso_options = array( '' => ADME_LG_FORM_MENU_ZG_VIDE, |
'iso3166' => ADME_LG_FORM_MENU_ZG_ISO, |
'Point' => ADME_LG_FORM_MENU_ZG_POINT, |
'Box' => ADME_LG_FORM_MENU_ZG_DC, |
'TGN' => ADME_LG_FORM_MENU_ZG_GTGN); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ZG_TYPE.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_portee_spatiale'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_ZG_VALEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$id = 'gm_ce_type_portee_temporelle'; |
$aso_options = array( '' => ADME_LG_FORM_MENU_TMP_VIDE, |
'W3CDTF' => ADME_LG_FORM_MENU_TMP_W3C, |
'Period' => ADME_LG_FORM_MENU_TMP_DC); |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TMP_TYPE.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gm_portee_temporelle'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 100); |
$label = '<label for="'.$id.'">'.ADME_LG_FORM_MENU_TMP_VALEUR.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$partie_entete_fin = '</ul>'."\n".'</fieldset>'."\n"; |
$form->addElement('html', $partie_entete_fin); |
if (!isset($aso_valeurs[ADME_LG_ACTION_COMMUN_VERIFIER]) && !isset($aso_valeurs[ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION])) { |
// Requete pour connaitre les informations sur l'administrateur ayant fait la dernière modif |
$requete_admin = 'SELECT * '. |
'FROM gen_annuaire '. |
'WHERE ga_id_administrateur = '.$aso_valeurs['gm_ce_admin']; |
$resultat_admin = $db->query($requete_admin); |
if (DB::isError($resultat_admin)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_admin->getMessage(), $requete_admin)); |
} |
$ligne_admin = $resultat_admin->fetchRow(DB_FETCHMODE_OBJECT); |
$info_admin = '<p class="info">Dernière modification par '.$ligne_admin->ga_prenom.' '.$ligne_admin->ga_nom.'</p>'; |
$form->addElement('html', $info_admin); |
} |
$liste_bouton_debut = '<ul class="liste_bouton">'."\n"; |
$form->addElement('html', $liste_bouton_debut); |
if ($traduction) { |
$form->addElement('submit', ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION, ADME_LG_FORM_MENU_VALIDER); |
$form->addElement('hidden', 'adme_site_id', $adme_site_id); |
} |
else { |
$form->addElement('submit', ADME_LG_ACTION_COMMUN_VERIFIER, ADME_LG_FORM_MENU_VALIDER); |
} |
$bouton_annuler = '<li><a class="bouton" href="'.$url->getURL().'" title="'.ADME_LG_FORM_MENU_ANNULER.'" >'.ADME_LG_FORM_MENU_ANNULER.'</a>'.'</li>'."\n"; |
$form->addElement('html', $bouton_annuler); |
$liste_bouton_fin = '</ul>'."\n"; |
$form->addElement('html', $liste_bouton_fin); |
$form->addElement('hidden', 'gm_id_menu', $aso_valeurs['gm_id_menu']); |
$form->setDefaults($aso_valeurs); |
// Note de fin de formulaire |
$form->setRequiredNote(ADME_LG_FORM_TXT_CHP_OBLIGATOIRE); |
$retour .= $form->toHTML()."\n"; |
return $retour; |
} |
/** Fonction ADME_validerFormAjouterMenuCommun() - Valide les données issues du formulaire pour gen_menu. |
* |
* Cette fonction valide les données à ajouter dans la table gen_menu. |
* |
* @param PEAR:DB l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADME_validerFormAjouterMenuCommun($db, $aso_valeurs) |
{ |
$message = ''; |
if ($aso_valeurs['gm_code_alpha'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_ALPHA.'</p>'; |
} |
if ($aso_valeurs['gm_code_num'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_NUM.'</p>'; |
} |
if ($aso_valeurs['gm_nom'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_NOM.'</p>'; |
} |
if ($aso_valeurs['gm_description_resume'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_INFO_BULLE.'</p>'; |
} |
return $message; |
} |
/** Fonction ADME_validerFormTraduireMenuCommun() - Valide les données issues du formulaire de traduction de menu |
* |
* Cette fonction valide les données à ajouter dans la table gen_menu. |
* |
* @param PEAR::DB l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADME_validerFormTraduireMenuCommun($db, $aso_valeurs) |
{ |
$message = ''; |
if ($aso_valeurs['gm_code_alpha'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_ALPHA.'</p>'; |
} |
if ($aso_valeurs['gm_code_num'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_CODE_NUM.'</p>'; |
} |
if ($aso_valeurs['gm_nom'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_NOM.'</p>'; |
} |
if ($aso_valeurs['gm_description_resume'] == '') { |
$message .= '<p class="pap_erreur">'.ADME_LG_FORM_MENU_REGLE_INFO_BULLE.'</p>'; |
} |
return $message; |
} |
/** Fonction ADME_modifierMenuCommun() - Met à jour les infos d'un menu commun |
* |
* Fonction modifiant un menu commun à Papyrus. |
* |
* @param object objet Pear de connection à la base de données. |
* @param object objet Pear représentant l'authentification. |
* @param integer l'identifiant du menu à administrer. |
* @param array le tableau des valeurs à modifier. |
* @return void les changement sont fait dans la base de données. |
*/ |
function ADME_modifierMenuCommun($db, $auth, $adme_menu_id, $aso_valeurs) |
{ |
$requete = 'UPDATE gen_menu SET '. |
'gm_ce_application = '.$aso_valeurs['gm_ce_application'].', '. |
'gm_application_arguments = "'.$aso_valeurs['gm_application_arguments'].'", '. |
'gm_fichier_squelette = "'.$aso_valeurs['gm_fichier_squelette'].'", '. |
'gm_code_num = '.$aso_valeurs['gm_code_num'].', '. |
'gm_code_alpha = "'.$aso_valeurs['gm_code_alpha'].'", '. |
'gm_nom = "'.$aso_valeurs['gm_nom'].'", '. |
'gm_raccourci_clavier = "'.$aso_valeurs['gm_raccourci_clavier'].'", '. |
'gm_robot = "'.$aso_valeurs['gm_robot'].'", '. |
'gm_titre = "'.$aso_valeurs['gm_titre'].'", '. |
'gm_titre_alternatif = "'.$aso_valeurs['gm_titre_alternatif'].'", '. |
'gm_mots_cles = "'.$aso_valeurs['gm_mots_cles'].'", '. |
'gm_description_libre = "'.$aso_valeurs['gm_description_libre'].'", '. |
'gm_description_resume = "'.$aso_valeurs['gm_description_resume'].'", '. |
'gm_description_table_matieres = "'.$aso_valeurs['gm_description_table_matieres'].'", '. |
'gm_source = "'.$aso_valeurs['gm_source'].'", '. |
'gm_auteur = "'.$aso_valeurs['gm_auteur'].'", '. |
'gm_contributeur = "'.$aso_valeurs['gm_contributeur'].'", '. |
'gm_editeur = "'.$aso_valeurs['gm_editeur'].'", '. |
'gm_date_creation = "'.$aso_valeurs['gm_date_creation'].'", '. |
'gm_date_debut_validite = "'.$aso_valeurs['gm_date_debut_validite'].'", '. |
'gm_date_fin_validite = "'.$aso_valeurs['gm_date_fin_validite'].'", '. |
'gm_date_copyright = "'.$aso_valeurs['gm_date_copyright'].'", '. |
'gm_licence = "'.$aso_valeurs['gm_licence'].'", '. |
'gm_categorie = "'.$aso_valeurs['gm_categorie'].'", '. |
'gm_public = "'.$aso_valeurs['gm_public'].'", '. |
'gm_public_niveau = "'.$aso_valeurs['gm_public_niveau'].'", '. |
'gm_portee_spatiale = "'.$aso_valeurs['gm_portee_spatiale'].'", '. |
'gm_portee_temporelle = "'.$aso_valeurs['gm_portee_temporelle'].'", '. |
'gm_ce_admin = "'.$auth->getAuthData('ga_id_administrateur').'" '. |
'WHERE gm_id_menu = '.$adme_menu_id; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_deplacerMenuCommun() - Permet de déplacer un menu dans la hiérarchie. |
* |
* Permet de déplacer un menu dans la hiérarchie des menus communs. |
* Ancien nom : moveUpper() |
* |
* @param PEAR::DB objet Pear DB de connexion à la base de données. |
* @param integer identifiant du site administré. |
* @param integer identifiant du menu à déplacer. |
* @param boolean indique si on veut monter le menu (true) ou le descendre (false). |
* @return void modifie la base de données. |
*/ |
function ADME_deplacerMenuCommun($db, $adme_site_id, $adme_menu_id, $bln_monter) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'informations sur les relations du menu courant. |
$ligne_menu_courant_relation = GEN_lireInfoMenuRelation($db, $adme_menu_id, '1'); // 1 = relation "avoir père" |
if ($ligne_menu_courant_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$id_pere = GEN_lireIdentifiantMenuPere($adme_menu_id); |
if ($id_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Recherche d'information hiérarchiques sur le menu précédent ou suivant le menu courant |
$requete = 'SELECT GMR01.gmr_ordre AS nouvel_ordre, GMR01.gmr_id_menu_01 AS id_menu_remplace '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = 0 '.// les menus communs ne sont pas liés à un site! |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'AND GMR01.gmr_id_menu_02 = '.$id_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 ';// 1 = relation menu "père" |
if ($bln_monter) { |
$requete .= 'AND GMR01.gmr_ordre < '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
} else { |
$requete .= 'AND GMR01.gmr_ordre > '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre ASC'; |
} |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
return null; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour des relations hiérarchiques du menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.$ligne_menu->nouvel_ordre.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour des relations hiérarchiques du menu précédent ou suivant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu->id_menu_remplace.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_traduireMenuCommun() - Permet de traduire un menu commin |
* |
* Permet de traduire un menu commun |
* |
* @param mixed objet Pear DB de connexion à la base de données. |
* @param integer identifiant du site administré. |
* @param integer identifiant du menu à déplacer. |
* @return void modifie la base de données. |
*/ |
function ADME_traduireMenuCommun($db, $auth, $adme_menu_id, $aso_valeurs) { |
// Récupération d'infos sur le site principal. |
$objet_site = GEN_lireInfoSitePrincipal($db, $aso_valeurs['adme_site_id']); |
if ($objet_site == false) { |
die('ERREUR Génésia Administrateur de Menus : impossible de lire les infos du site.<br />'. |
'ID du site : '.$aso_valeurs['adme_site_id'].'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$nouveau_id_menu = SQL_obtenirNouveauId($db, 'gen_menu', 'gm_id_menu'); |
$auteur = $auth->getAuthData('ga_prenom').' '.$auth->getAuthData('ga_nom'); |
$requete = 'INSERT INTO gen_menu '. |
'SET gm_id_menu = '.$nouveau_id_menu.', '. |
'gm_ce_site = '.$aso_valeurs['adme_site_id'].', '. |
'gm_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '. |
'gm_ce_application = '.$aso_valeurs['gm_ce_application'].', '. |
'gm_application_arguments = "'.$aso_valeurs['gm_application_arguments'].'", '. |
'gm_fichier_squelette = "'.$aso_valeurs['gm_fichier_squelette'].'", '. |
'gm_code_num = '.$aso_valeurs['gm_code_num'].', '. |
'gm_code_alpha = "'.$aso_valeurs['gm_code_alpha'].'", '. |
'gm_nom = "'.$aso_valeurs['gm_nom'].'", '. |
'gm_raccourci_clavier = "'.$aso_valeurs['gm_raccourci_clavier'].'", '. |
'gm_robot = "'.$aso_valeurs['gm_robot'].'", '. |
'gm_titre = "'.$aso_valeurs['gm_titre'].'", '. |
'gm_titre_alternatif = "'.$aso_valeurs['gm_titre_alternatif'].'", '. |
'gm_mots_cles = "'.$aso_valeurs['gm_mots_cles'].'", '. |
'gm_description_libre = "'.$aso_valeurs['gm_description_libre'].'", '. |
'gm_description_resume = "'.$aso_valeurs['gm_description_resume'].'", '. |
'gm_description_table_matieres = "'.$aso_valeurs['gm_description_table_matieres'].'", '. |
'gm_source = "'.$aso_valeurs['gm_source'].'", '. |
'gm_auteur = "'.$aso_valeurs['gm_auteur'].'", '. |
'gm_contributeur = "'.$aso_valeurs['gm_contributeur'].'", '. |
'gm_editeur = "'.$aso_valeurs['gm_editeur'].'", '. |
'gm_date_creation = "'.$aso_valeurs['gm_date_creation'].'", '. |
'gm_date_debut_validite = "'.$aso_valeurs['gm_date_debut_validite'].'", '. |
'gm_date_fin_validite = "'.$aso_valeurs['gm_date_fin_validite'].'", '. |
'gm_date_copyright = "'.$aso_valeurs['gm_date_copyright'].'", '. |
'gm_licence = "'.$aso_valeurs['gm_licence'].'", '. |
'gm_categorie = "'.$aso_valeurs['gm_categorie'].'", '. |
'gm_public = "'.$aso_valeurs['gm_public'].'", '. |
'gm_public_niveau = "'.$aso_valeurs['gm_public_niveau'].'", '. |
'gm_ce_type_portee_spatiale = "'.$aso_valeurs['gm_ce_type_portee_spatiale'].'", '. |
'gm_portee_spatiale = "'.$aso_valeurs['gm_portee_spatiale'].'", '. |
'gm_ce_type_portee_temporelle = "'.$aso_valeurs['gm_ce_type_portee_temporelle'].'", '. |
'gm_portee_temporelle = "'.$aso_valeurs['gm_portee_temporelle'].'", '. |
'gm_ce_admin = "'.$auth->getAuthData('ga_id_administrateur').'" '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation traduction |
if (!isset($adme_menu_id) && empty($adme_menu_id)) { |
$adme_menu_id = 0 ;// Identifiant du père |
} |
//---------------------------------------------------------------------------- |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$adme_menu_id.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu = $ligne->gmr_ordre + 1; |
$resultat->free(); |
// Traduction : |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$adme_menu_id.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 2, '. // Avoir traduction |
'gmr_ordre = '.$nouveau_ordre_menu; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Ajout de la relation-type "menu commun" |
// Récupération d'infos sur la hierarchie du menu |
$requete = 'SELECT * '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = gmr_id_menu_01 '. |
'AND gmr_id_valeur = 102 '.// 102 = type menu "commun" |
'AND gmr_id_menu_01 = gm_id_menu '. |
'AND gm_ce_site = '.$aso_valeurs['adme_site_id'].' '. |
'ORDER BY gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouveau_ordre_menu_commun = $ligne->gmr_ordre + 1; |
$resultat->free(); |
$requete = 'INSERT INTO gen_menu_relation '. |
'SET gmr_id_menu_01 = '.$nouveau_id_menu.', '. |
'gmr_id_menu_02 = '.$nouveau_id_menu.', '. |
'gmr_id_valeur = 102, '. |
'gmr_ordre = '.$nouveau_ordre_menu_commun; |
$result = $db->query($requete); |
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : ''; |
} |
function ADME_indenterMenuCommun($db, $adme_site_id, $adme_menu_id, $bln_diminuer) { |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'information sur le site de ce menu. |
$objet_site = GEN_lireInfoSitePrincipal($db, $adme_site_id); |
if ($objet_site == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_SITE.'<br />'. |
'Id du site : '. $adme_site_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération d'informations sur les relations du menu courant. |
$ligne_menu_courant_relation = GEN_lireInfoMenuRelation($db, $adme_menu_id, '1'); |
if ($ligne_menu_courant_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération de l'identifiant du menu pére |
$id_pere = GEN_lireIdentifiantMenuPere($adme_menu_id); |
if ($id_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
if ($bln_diminuer) { |
// Diminution d'un niveau |
if ($id_pere) { |
// Récupération de l'identifiant du menu grand pére, sera le nouveau pere |
$id_grand_pere = GEN_lireIdentifiantMenuPere($id_pere); |
if ($id_grand_pere === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_ID_MENU_PERE.'<br />'. |
'Identifiant menu fils : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
// Récupération d'informations sur les relations du menu pere |
$ligne_menu_pere_relation = GEN_lireInfoMenuRelation($db, $id_pere, '1'); |
if ($ligne_menu_pere_relation == false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU_RELATION.'<br />'. |
'Identifiant menu : '. $adme_menu_id .'<br />'. |
'Identifiant valeur relation : 1 <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Recherche d'information sur le menu suivant le menu pere |
//------------------------------------------------------------------------------------------------------------------- |
$requete = 'SELECT GMR01.gmr_ordre AS nouvel_ordre, GMR01.gmr_id_menu_01 AS id_menu_remplace '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = 0 '.// les menus communs ne sont pas liés à un site! |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun"" |
'AND GMR01.gmr_id_menu_02 = '.$id_grand_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre > '.$ligne_menu_pere_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
$no=$ligne_menu_pere_relation->gmr_ordre+1; |
} |
else { |
$no=$ligne_menu->nouvel_ordre+1; |
} |
// Mise à jour pere menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_id_menu_02 = '.$id_grand_pere.' ,'. |
'gmr_ordre = '.$no.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
} |
} |
else { |
$requete = 'SELECT GMR01.gmr_id_menu_01 '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = 0 '.// les menus communs ne sont pas liés à un site! |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'AND GMR01.gmr_id_menu_02 = '.$id_pere.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre < '.$ligne_menu_courant_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat_menu = $db->query($requete); |
(DB::isError($resultat_menu)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete)) : ''; |
$ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT); |
$resultat_menu->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// Si la requete ne retourne rien nous ne faisons rien. |
if (! $ligne_menu) { |
return null; |
} |
//---------------------------------------------------------------------------- |
// Recherche dernier fils |
$requete = 'SELECT GMR01.gmr_ordre '. |
'FROM gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR01.gmr_id_menu_02 = '.$ligne_menu->gmr_id_menu_01.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = avoir "père" |
'AND GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR02.gmr_id_menu_01 = GMR02.gmr_id_menu_02 '. |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'ORDER BY GMR01.gmr_ordre DESC'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$no = $ligne->gmr_ordre + 1; |
$resultat->free(); |
// Mise à jour pere menu courant |
$requete = 'UPDATE gen_menu_relation SET '. |
'gmr_id_menu_02 = '.$ligne_menu->gmr_id_menu_01.' ,'. |
'gmr_ordre = '.$no.' '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu_courant_relation->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_update = $db->query($requete); |
(DB::isError($resultat_update)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_update->getMessage(), $requete)) : ''; |
} |
} |
/** Fonction ADME_supprimerMenuCommun() - Supprime un menu commun. |
* |
* Supprime de la base de données de Génésia toutes les traces du menu commun |
* passé en paramètre. |
* Ancien nom : deleteUpper() |
* |
* @param PEAR::DB l'objet Pear DB de connexion à la base de données. |
* @param integer l'identifiant du menu à supprimer |
* @return void le menu commun est supprimé de la base de données. |
*/ |
function ADME_supprimerMenuCommun($db, $id_menu_a_supprimer) |
{ |
$code_menu = GEN_lireInfoMenu($db, $id_menu_a_supprimer, DB_FETCHMODE_ASSOC); |
//------------------------------------------------------------------------------------------------------------------- |
// Y a t'il des sous_menus ? |
$requete = 'SELECT COUNT(gm_id_menu) AS compte '. |
'FROM gen_menu, gen_menu_relation '. |
'WHERE gmr_id_menu_02 = '.$id_menu_a_supprimer.' '. |
'AND gmr_id_valeur = 1 '. |
'AND gmr_id_menu_01 = gm_id_menu '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
if ($ligne && ($ligne->compte > 0)) { |
return ADME_LG_ERREUR_EXISTE_SOUS_MENU; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour de l'ordre des menus |
$ligne_menu_supr_relation = GEN_lireInfoMenuRelation($db, $id_menu_a_supprimer, '1'); // 1 = relation "avoir père" |
$requete = 'SELECT GMR01.gmr_id_menu_01, GMR01.gmr_ordre '. |
'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '. |
'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '. |
'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU |
'AND gm_ce_site = 0 '.// les menus communs ne sont pas liés à un site! |
'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun" |
'AND GMR01.gmr_id_menu_02 = '.$ligne_menu_supr_relation->gmr_id_menu_02.' '. |
'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père" |
'AND GMR01.gmr_ordre > '.$ligne_menu_supr_relation->gmr_ordre.' '. |
'ORDER BY GMR01.gmr_ordre ASC'; |
$resultat = $db->query($requete); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
// Mise à jour des relations hiérarchiques du menu courant |
$requete_maj = 'UPDATE gen_menu_relation SET '. |
'gmr_ordre = '.($ligne->gmr_ordre - 1).' '. |
'WHERE gmr_id_menu_01 = '.$ligne->gmr_id_menu_01.' '. |
'AND gmr_id_valeur = 1';// 1 = relation menu "père" |
$resultat_maj = $db->query($requete_maj); |
(DB::isError($resultat_maj)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_maj->getMessage(), $requete_maj)) : ''; |
} |
$resultat->free(); |
//------------------------------------------------------------------------------------------------------------------- |
// S'il n'y a plus de sous niveau, on supprime le menu |
$requete = 'DELETE FROM gen_menu '. |
'WHERE gm_id_menu = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//------------------------------------------------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Suppression du contenu !!!! |
$requete = 'DELETE FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$id_menu_a_supprimer.' '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_supprimerMenuCommunTraduction() - Supprime une traduction de menu commun. |
* |
* Supprime de la base de données de Papyrus toutes les traces du menu commun |
* passé en paramètre. |
* Ancien nom : deleteMenu() |
* |
* @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 commun est supprimé de la base de données. |
*/ |
function ADME_supprimerMenuCommunTraduction($db, $adme_id_site, $id_menu_a_supprimer) |
{ |
$code_menu = GEN_lireInfoMenu($db, $id_menu_a_supprimer, DB_FETCHMODE_ASSOC); |
if ($code_menu === false) { |
die('ERREUR Papyrus Administrateur de Menus : '.ADME_LG_ERREUR_INFO_MENU.'<br />'. |
'Idenitifiant du menu n° : '. $id_menu_a_supprimer .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
$requete = 'DELETE FROM gen_menu '. |
'WHERE gm_id_menu = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
//---------------------------------------------------------------------------- |
// Puis on supprime les relations de ce menu |
$requete = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_02 = '.$id_menu_a_supprimer; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Suppression du contenu !!!! |
$requete = 'DELETE FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$id_menu_a_supprimer.' '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
/** Fonction ADME_selectionnerMenuCommunTraduction()() Selection un menu classique comme traduction par defaut |
* |
* |
* @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_selectionnerMenuCommunTraduction($db, $adme_id_site, $id_menu) |
{ |
// 1 : Rechercher traduction parente : si presente on est dans une traduc. si absente on |
// est dans un menu traduit. |
$requete_origine_traduction = 'SELECT gmr_id_menu_01 '. |
'FROM gen_menu_relation, gen_menu '. |
'WHERE gmr_id_menu_02 = ' . $id_menu .' '. |
'AND gmr_id_valeur = 2 '; // 2 = "avoir traduction" |
$resultat_origine_traduction = $db->query($requete_origine_traduction) ; |
if (DB::isError($resultat_origine_traduction)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_origine_traduction->getMessage(), $requete_origine_traduction) ); |
} |
if ($resultat_origine_traduction->numRows() > 0) { |
$ligne_origine_traduction = $resultat_origine_traduction->fetchRow(DB_FETCHMODE_OBJECT); |
$id_menu_origine=$ligne_origine_traduction->gmr_id_menu_01; |
} |
else { |
$id_menu_origine=$id_menu; |
} |
$requete_suppression = 'DELETE from gen_menu_relation '. |
'WHERE gmr_id_menu_01 = ' . $id_menu_origine . ' ' . |
'AND gmr_id_valeur=105 '; // 105 Traduction par defaut |
$resultat_suppression = $db->query($requete_suppression); |
(DB::isError($resultat_suppression)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_suppression->getMessage(), $requete_suppression)) : ''; |
$requete_insertion = 'INSERT into gen_menu_relation '. |
' SET gmr_id_menu_01 = ' . $id_menu_origine . ', ' . |
' gmr_id_menu_02 = ' . $id_menu . ', ' . |
' gmr_id_valeur = 105' ; |
$resultat_insertion = $db->query($requete_insertion); |
(DB::isError($resultat_insertion)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_insertion->getMessage(), $requete_insertion)) : ''; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--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 |
* |
* Revision 1.25 2006/09/20 12:09:16 ddelon |
* bug suppression contenu du menu commun |
* |
* Revision 1.24 2006/09/07 13:45:56 jp_milcent |
* Trie par ordre alphabétique des appli. |
* |
* Revision 1.23 2006/06/29 23:04:01 ddelon |
* Bug defaut traduction sur menu commun |
* |
* Revision 1.22 2006/06/29 19:13:26 ddelon |
* Bug defaut traduction sur menu commun |
* |
* Revision 1.21 2006/06/29 18:58:57 ddelon |
* Multilinguisme : menu par defaut pour les menu commun |
* |
* Revision 1.20 2006/04/12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.19 2005/09/27 08:42:49 ddelon |
* Menu et Squelette |
* |
* Revision 1.18 2005/07/18 16:14:32 ddelon |
* css admin + menu communs |
* |
* Revision 1.17 2005/07/08 22:01:25 ddelon |
* Copyright |
* |
* Revision 1.16 2005/05/26 16:13:08 jpm |
* Correction taille éditeur: passage en text |
* |
* Revision 1.14 2005/05/26 15:34:46 jpm |
* Ajout d'un espace. |
* |
* Revision 1.13 2005/05/26 08:54:20 jpm |
* Ajout info admin ayant fait la dernière modif. |
* |
* Revision 1.12 2005/04/19 16:47:16 jpm |
* Gestion des dates de fin de validité des menus. |
* |
* Revision 1.11 2005/03/29 15:49:12 jpm |
* Ajout de la date de création dans le formulaire des menus. |
* |
* Revision 1.10 2005/02/28 11:05:06 jpm |
* Modification des auteurs. |
* |
* Revision 1.9 2005/01/24 11:28:09 jpm |
* Correction bogue. |
* Ajout d'un troisième = pour comparer le type. |
* |
* Revision 1.8 2004/12/01 16:47:28 jpm |
* Ajout d'une boite javascript de confirmation de suppression d'un menu. |
* |
* Revision 1.7 2004/11/15 16:51:12 jpm |
* Correction bogue de mise à jour de l'ordre des menus. |
* |
* Revision 1.6 2004/11/10 17:26:07 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.5 2004/11/09 17:48:35 jpm |
* Gestion de différentes interfaces d'administration. |
* |
* Revision 1.3 2004/09/23 17:45:13 jpm |
* Amélioration de la gestion des liens annuler et du selecteur de sites. |
* |
* Revision 1.2 2004/07/06 17:07:37 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 15:04:32 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.10 2004/05/10 12:13:03 jpm |
* Modification des formulaires. |
* |
* Revision 1.9 2004/05/07 16:31:40 jpm |
* Amélioration du formulaire d'un menu commun. |
* |
* Revision 1.8 2004/05/07 09:56:52 jpm |
* Correction des noms de constantes d'images. |
* |
* Revision 1.7 2004/05/07 07:23:54 jpm |
* Amélioration du code, des commentaires et correction de bogues. |
* |
* Revision 1.6 2004/05/04 16:27:55 jpm |
* Amélioration gestion du déplacement des menus. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/langues/adme_langue_en.inc.php |
---|
New file |
0,0 → 1,299 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_langue_en.inc.php,v 1.3 2007-10-25 14:26:56 ddelon Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADME. |
* |
*@package Admin_menu |
*@subpackage Langues |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.3 $ $Date: 2007-10-25 14:26:56 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Le formulaire de sélection du site dont les menus doivent être administrer : |
define('ADME_LG_FORM_SITE_TITRE', 'List of the websites'); |
define('ADME_LG_FORM_SITE_CHOIX', 'Choice the site to administrate : '); |
define('ADME_LG_FORM_SITE_VALIDER', 'OK'); |
// Les titres de l'arborescence des menus à administrer: |
define('ADME_LG_MENU_TITRE', 'Configuration of the menus of the website:'); |
define('ADME_LG_MENU_CLASSIQUE_RACINE', 'Add a classical menu'); |
define('ADME_LG_MENU_COMMUN_RACINE', 'Add a common menu'); |
// Les actions des menus classiques: |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER', 'classical_menu_modify'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ALT', 'Modify'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_TITLE', 'Modify this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ACTION', 'classical_menu_modify_action'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER', 'menu_classique_go_up'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_ALT', 'UP'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_TITLE', 'Go up this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE', 'classical_menu_down'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_ALT', 'Down'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_TITLE', 'Down this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER', 'menu_classical_decrease'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_ALT', 'Decrease'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_TITLE', 'Decrease of one level this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER', 'menu_classical_increase'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_ALT', 'Increase'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_TITLE', 'Increase of one level this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE', 'menu_classical_translate'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ACTION', 'menu_classical_translate_action'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ALT', 'Translate'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_TITLE', 'Translate this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER', 'classical_menu_remove'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_ALT', 'Remove'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TITLE', 'Remove this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION', 'classical_menu_remove_translation'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_ALT', 'Remove'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_TITLE', 'Remove this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER', 'classical_menu_add'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_ALT', 'Add'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_TITLE', 'Add this menu'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER', 'classical_menu_check'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION', 'classical_menu_check_translation'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT', 'classical_menu_translation_default'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT', 'Chose this menu as default translation'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_TITLE', 'Chose this menu as default translation'); |
define ('ADME_LG_ACTION_CLASSIQUE_LIMITER', 'classical_menu_limit'); |
define ('ADME_LG_ACTION_CLASSIQUE_OUVRIR', 'menu_classique_open'); |
define ('ADME_LG_ACTION_CLASSIQUE_LIMITER_TITLE', 'Restrict menu to this lang'); |
define ('ADME_LG_ACTION_CLASSIQUE_OUVRIR_TITLE', 'Always show this menu'); |
// Les actions des menus communs: |
define('ADME_LG_ACTION_COMMUN_MODIFIER', 'common_menu_modify'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ALT', 'Modify'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_TITLE', 'Modify this menu'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ACTION', 'common_menu_modify_action'); |
define('ADME_LG_ACTION_COMMUN_MONTER', 'common_menu_up'); |
define('ADME_LG_ACTION_COMMUN_MONTER_ALT', 'UP'); |
define('ADME_LG_ACTION_COMMUN_MONTER_TITLE', 'Up this menu'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE', 'common_menu_down'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_ALT', 'Down'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_TITLE', 'Down this menu'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER', 'common_menu_decrease'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_ALT', 'Decrease'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_TITLE', 'Decrease of one level this menu'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER', 'common_menu_increase'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_ALT', 'Increase'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_TITLE', 'Increase of one level this'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE', 'commun_menu_translate'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ACTION', 'commun_menu_translate_action'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ALT', 'Translate'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE', 'Translate thid menu'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER', 'common_menu_remove'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_ALT', 'Remove'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TITLE', 'Remove this menu'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION', 'common_menu_remove_translation'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_ALT', 'Remove'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_TITLE', 'Remove this menu'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER', 'common_menu_add'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_ALT', 'Add'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_TITLE', 'Add this menu'); |
define('ADME_LG_ACTION_COMMUN_VERIFIER', 'common_menu_check'); |
define('ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION', 'common_menu_check_translation'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT', 'common_menu_translation_default'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT', 'Chose this menu as default translation'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE', 'Chose this menu as default translation'); |
// Les actions générales: |
define('ADME_LG_ACTION_ADMINISTRER', 'Manage'); |
define('ADME_LG_ACTION_ADMINISTRER_ALT', 'Manage'); |
define('ADME_LG_ACTION_ADMINISTRER_TITLE', 'Manage the application of this menu'); |
define('ADME_LG_ACTION_PLIER', 'adme_menu_close'); |
define('ADME_LG_ACTION_PLIER_ALT', 'Fold'); |
define('ADME_LG_ACTION_DEPLIER', 'adme_menu_open'); |
define('ADME_LG_ACTION_DEPLIER_ALT', 'Unfold'); |
define('ADME_LG_ACTION_SUPPRIMER_CONFIRMATION', 'Are you sure to want to remove this menu?'); |
// Les erreurs: |
define('ADME_LG_ERREUR_INFO_MENU', 'impossible to read the informations of the menu.'); |
define('ADME_LG_ERREUR_INFO_SITE', 'impossible to read the informations of the website.'); |
define('ADME_LG_ERREUR_INFO_MENU_RELATION', 'impossible to read the informations about the relations of the menu.'); |
define('ADME_LG_ERREUR_ID_MENU_PERE', 'impossible to read identifying of the menu father.'); |
define('ADME_LG_ERREUR_CODE_NUM', "The value %s for the \"code nuérique\" yet exists"); |
define('ADME_LG_ERREUR_CODE_ALPHA', "The value %s for the \"Code alphanumérique\" yet exist"); |
define('ADME_LG_ERREUR_EXISTE_SOUS_MENU', 'This menu includes under-menues. Please, begin to remove them.'); |
// Le formulaire de modification d'un menu : |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL', 'Mofify menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL', 'Modify common menu'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_CONFIG', 'Menu config'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_CONFIG', 'Common menu confgig'); |
define('ADME_LG_FORM_MENU_ID', 'Identifier of this menu : '); |
define('ADME_LG_FORM_MENU_CODE_NUM', 'Numeric code of this menu'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_NUM', ' a numeric digital code is necessary for the menu !'); |
define('ADME_LG_FORM_MENU_CODE_ALPHA', 'Code alphanumérique of the menu'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_ALPHA', 'An alphanumeric code is necessary for the menu!'); |
define('ADME_LG_FORM_MENU_NOM', 'Name of the menu'); |
define('ADME_LG_FORM_MENU_REGLE_NOM', 'a name is necessary for the menu !'); |
define('ADME_LG_FORM_MENU_RACCOURCI', ' Shortened clavier'); |
define('ADME_LG_FORM_MENU_DEFAUT', 'Making the menu by défaut'); |
define('ADME_LG_FORM_MENU_FICHIER_SQUELETTE', ' File squelette'); |
define('ADME_LG_FORM_MENU_INFO_BULLE', ' Contained information-bulle'); |
define('ADME_LG_FORM_MENU_REGLE_INFO_BULLE', ' a short description for the information-bubble is necessary for this menu!'); |
define('ADME_LG_FORM_MENU_APPLI', 'Application'); |
define('ADME_LG_FORM_MENU_APPLI_ARGUMENT', 'Application arguments'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_ENTETE', ' Heading of the pages of the menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_ENTETE', ' Heading of the pages of the common menu'); |
define('ADME_LG_FORM_MENU_ROBOT', ' Indexing by robots'); |
define('ADME_LG_FORM_MENU_INDEX_FOLLOW', 'Indexeing this page and next'); |
define('ADME_LG_FORM_MENU_INDEX', 'Indexing only this page'); |
define('ADME_LG_FORM_MENU_NOINDEX_NOFOLLOW', 'Do notindexing this page and next pages'); |
define('ADME_LG_FORM_MENU_NOINDEX', 'Do not indexing this page'); |
define('ADME_LG_FORM_MENU_INDEX_VIDE', 'None'); |
define('ADME_LG_FORM_MENU_TITRE', 'Title of the page'); |
define('ADME_LG_FORM_MENU_TITRE_ALTERNATIF', 'Alternative tittle for the page'); |
define('ADME_LG_FORM_MENU_MOT_CLE', 'key-words'); |
define('ADME_LG_FORM_MENU_DESCRIPTION', ' Description of the content'); |
define('ADME_LG_FORM_MENU_TABLE_MATIERE', 'Contents'); |
define('ADME_LG_FORM_MENU_SOURCE', 'Source'); |
define('ADME_LG_FORM_MENU_AUTEUR', 'Author'); |
define('ADME_LG_FORM_MENU_CONTRIBUTEUR', 'Contributor'); |
define('ADME_LG_FORM_MENU_EDITEUR', 'Éditor'); |
define('ADME_LG_FORM_MENU_DATE_CREATION', 'Creation date'); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_DEBUT', 'Go back to beginning of validity'); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_FIN', 'Completion date of validity'); |
define('ADME_LG_FORM_MENU_DATE_COPYRIGHT', 'Year for the copyright'); |
define('ADME_LG_FORM_MENU_URL_LICENCE', 'URL of the licence'); |
define('ADME_LG_FORM_MENU_CATEGORIE', 'Catégory'); |
define('ADME_LG_FORM_MENU_PUBLIC', 'Public for the page'); |
define('ADME_LG_FORM_MENU_PUBLIC_NIVEAU', 'level of public for this page'); |
define('ADME_LG_FORM_MENU_ZG_TYPE', 'Type of space range'); |
define('ADME_LG_FORM_MENU_ZG_VALEUR', 'Space range of the page'); |
define('ADME_LG_FORM_MENU_ZG_VIDE', 'None'); |
define('ADME_LG_FORM_MENU_ZG_ISO', 'Code of the country on two letters(iso3166)'); |
define('ADME_LG_FORM_MENU_ZG_DC', ' Representation of the geographical areas of Dublin Core'); |
define('ADME_LG_FORM_MENU_ZG_POINT', 'Géographique point'); |
define('ADME_LG_FORM_MENU_ZG_GTGN', 'Noms issus du Getty Thesaurus of Geographic Names'); |
define('ADME_LG_FORM_MENU_TMP_TYPE', ' Standard of range temporal'); |
define('ADME_LG_FORM_MENU_TMP_VALEUR', ' Temporal dimension of the page'); |
define('ADME_LG_FORM_MENU_TMP_VIDE', 'None'); |
define('ADME_LG_FORM_MENU_TMP_W3C', ' Coding of the dates and hours of the W3C'); |
define('ADME_LG_FORM_MENU_TMP_DC', ' Representation of the intervals of time of Dublin Core'); |
define('ADME_LG_FORM_MENU_VALIDER', 'Record'); |
define('ADME_LG_FORM_MENU_ANNULER', 'Cancel'); |
define('ADME_LG_FORM_TXT_CHP_OBLIGATOIRE', ' Indicates the fields obligatoires'); |
define('ADME_LG_FORM_SYMBOLE_CHP_OBLIGATOIRE', '*'); |
// Charactère spéciaux: |
define('ADME_LG_PARENTHESE_OUVRANTE', '('); |
define('ADME_LG_PARENTHESE_FERMANTE', ')'); |
define('ADME_LG_SLASH', '/'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2007-10-23 14:10:00 ddelon |
* Ajout traductions manquantes pour l'anglais |
* |
* Revision 1.1 2006-04-12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.7 2005/07/18 16:14:32 ddelon |
* css admin + menu communs |
* |
* Revision 1.6 2005/07/08 21:13:15 ddelon |
* Gestion indentation menu |
* |
* Revision 1.5 2005/05/26 15:45:09 jpm |
* Ajout d'une majuscule accentuée. |
* |
* Revision 1.4 2005/03/29 15:49:31 jpm |
* Ajout de la constante pour la date de création dans le formulaire des menus. |
* |
* Revision 1.3 2004/12/01 16:47:07 jpm |
* Ajout d'un texte pour la boite javascript de confirmation de suppression de menu. |
* |
* Revision 1.2 2004/11/10 17:26:12 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.1 2004/11/10 11:58:31 jpm |
* Début de la traduction de l'appli. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/langues/adme_langue_es.inc.php |
---|
New file |
0,0 → 1,291 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_langue_es.inc.php,v 1.3 2006-09-27 10:02:08 alexandre_tb Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADME. |
* |
*@package Admin_menú |
*@subpackage Langues |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.3 $ $Date: 2006-09-27 10:02:08 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Le formulaire de sélection du site dont les menús doivent être administrer : |
define('ADME_LG_FORM_SITE_TITRE', 'Lista de los Web site'); |
define('ADME_LG_FORM_SITE_CHOIX', 'Opcióna el sitio a administrar: '); |
define('ADME_LG_FORM_SITE_VALIDER', 'OK'); |
// Les titres de l'arborescence des menús à administrer: |
define('ADME_LG_MENU_TITRE', 'Configuración de los menús del Web site:'); |
define('ADME_LG_MENU_CLASSIQUE_RACINE', 'agregue un menú clásico '); |
define('ADME_LG_MENU_COMMUN_RACINE', 'agregue un menú comuno'); |
// Les actions des menús classiques: |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER', 'classico_menú_modicar'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ALT', 'Modificar'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_TITLE', 'Modificar estemenú'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ACTION', 'menu_classique_modifier_action'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER', 'menú_classico_subir'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_ALT', 'Subir'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_TITLE', 'Subir este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE', 'classico_menú_bajar'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_ALT', 'Bajar'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_TITLE', 'Najar este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER', 'menú_classico_disminuir'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_ALT', 'Disminuir'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_TITLE', 'Disminuir de un nivel este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER', 'menú_classico_aumentar'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_ALT', 'Aumentar'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_TITLE', 'Aumentar de un nivel este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE', 'menu_classique_traduire'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ACTION', 'menu_classique_traduire_action'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ALT', 'Traduire'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_TITLE', 'Traduire ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER', 'classico_menú_quite'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_ALT', 'Quite'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TITLE', 'Quite este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION', 'menu_classique_supprimer_traduction'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER', 'classico_menú_agrege'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_ALT', 'Agrege'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_TITLE', 'Agrege este menú'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER', 'classico_menú_verificar'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION', 'menu_classique_verifier_traduction'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT', 'menu_classique_traduction_defaut'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT', 'Choisir ce menu comme traduction par défaut'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_TITLE', 'Choisir ce menu comme traduction par défaut'); |
// Les actions des menús communs: |
define('ADME_LG_ACTION_COMMUN_MODIFIER', 'común_menú_modificar'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ALT', 'Modificar'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_TITLE', 'Modificar este menú'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ACTION', 'menu_commun_modifier_action'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT', 'menu_classique_traduction_defaut'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT', 'Choisir ce menu comme traduction par défaut'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE', 'Choisir ce menu comme traduction par défaut'); |
define('ADME_LG_ACTION_COMMUN_MONTER', 'común_menú_subir'); |
define('ADME_LG_ACTION_COMMUN_MONTER_ALT', 'Subir'); |
define('ADME_LG_ACTION_COMMUN_MONTER_TITLE', 'Subir este menú'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE', 'común_menú_bajar'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_ALT', 'Bajar'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_TITLE', 'Bajar este menú'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER', 'común_menú_disminuir'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_ALT', 'Disminuir'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_TITLE', 'Disminuir de un nivel este menú'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER', 'común_menú_aumentar'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_ALT', 'Aumentar'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_TITLE', 'Aumentar de un nivel este menú'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE', 'menu_commun_traduire'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ACTION', 'menu_commun_traduire_action'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ALT', 'Traduire'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE', 'Traduire ce menu'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER', 'común_menú_suprimir'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_ALT', 'Suprimir'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TITLE', 'Suprimir este menú'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION', 'menu_commun_supprimer_traduction'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER', 'común_menú_añadir'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_ALT', 'añadir'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_TITLE', 'añadir este menú'); |
define('ADME_LG_ACTION_COMMUN_VERIFIER', 'común_menú_verificar'); |
define ('ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION','menu_commun_verifier_traduction'); |
// Les actions générales: |
define('ADME_LG_ACTION_ADMINISTRER', 'Administrar'); |
define('ADME_LG_ACTION_ADMINISTRER_ALT', 'Administrar'); |
define('ADME_LG_ACTION_ADMINISTRER_TITLE', 'Administrar la aplicacion de este menú'); |
define('ADME_LG_ACTION_PLIER', 'adme_menú_doblar'); |
define('ADME_LG_ACTION_PLIER_ALT', 'doblar'); |
define('ADME_LG_ACTION_DEPLIER', 'adme_menú_abrir'); |
define('ADME_LG_ACTION_DEPLIER_ALT', ' brir'); |
define('ADME_LG_ACTION_SUPPRIMER_CONFIRMATION', 'es usted seguro desear quitar este menú?'); |
// Les erreurs: |
define('ADME_LG_ERREUR_INFO_menú', 'imposible leer las informaciones del menú.'); |
define('ADME_LG_ERREUR_INFO_SITE', 'imposible leer las informaciones del website'); |
define('ADME_LG_ERREUR_INFO_menú_RELATION', 'imposible leer las informaciones sobre las relaciones del menú.'); |
define('ADME_LG_ERREUR_ID_menú_PERE', ' imposible leer identificar del padre del menú.'); |
define('ADME_LG_ERREUR_CODE_NUM', "El valor %s por el \"code nuérique\" ja exista&"); |
define('ADME_LG_ERREUR_CODE_ALPHA', "El valor %s por el \"Code alphanumérique\" ja exista"); |
define('ADME_LG_ERREUR_EXISTE_SOUS_menú', 'Este menú incluye debajo de -menúes. Por favor, comience a quitarlos.'); |
// Le formulaire de modification d'un menú : |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL', 'Moficar menú'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL', 'Modicar común menú'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_CONFIG', 'menú config'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_CONFIG', 'común menú configurar'); |
define('ADME_LG_FORM_MENU_ID', 'Identificador de este menú: '); |
define('ADME_LG_FORM_MENU_CODE_NUM', 'Codico Numerico de este menú'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_NUM', 'un código digital numérico es necesario para el menú!'); |
define('ADME_LG_FORM_MENU_CODE_ALPHA', 'Codico alphanumérique del menú'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_ALPHA', 'un código alfanumérico es necesario para el menú!'); |
define('ADME_LG_FORM_MENU_NOM', 'Nombre de el menú'); |
define('ADME_LG_FORM_MENU_REGLE_NOM', 'un nombre esta necesario por el menú !'); |
define('ADME_LG_FORM_MENU_RACCOURCI', 'clavier acortada '); |
define('ADME_LG_FORM_MENU_DEFAUT', 'haciendo el menú por el défaut '); |
define('ADME_LG_FORM_MENU_FICHIER_SQUELETTE', ' squelette del archivo '); |
define('ADME_LG_FORM_MENU_INFO_BULLE', 'informacion-bulle contenida '); |
define('ADME_LG_FORM_MENU_REGLE_INFO_BULLE', ' una descripción corta para la informacion-burbuja es necesaria para este menú!'); |
define('ADME_LG_FORM_MENU_APPLI', 'Applicacion'); |
define('ADME_LG_FORM_MENU_APPLI_ARGUMENT', 'Application argumentes'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_ENTETE', ' título de las páginas del menú '); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_ENTETE', ' título de las páginas del menú comun '); |
define('ADME_LG_FORM_MENU_ROBOT', ' Indesar los robotes') ; |
define('ADME_LG_FORM_MENU_INDEX_FOLLOW', ' poniendo en un índice esta página y después '); |
define('ADME_LG_FORM_MENU_INDEX', ' poniendo en un índice solo en esta página '); |
define('ADME_LG_FORM_MENU_NOINDEX_NOFOLLOW', ' No poner en un índice esta página y después '); |
define('ADME_LG_FORM_MENU_NOINDEX', 'No poner en un índice esta página '); |
define('ADME_LG_FORM_MENU_INDEX_VIDE', 'vide'); |
define('ADME_LG_FORM_MENU_TITRE', ' título de la página '); |
define('ADME_LG_FORM_MENU_TITRE_ALTERNATIF', ' título alternativo de la página '); |
define('ADME_LG_FORM_MENU_MOT_CLE', 'palabras lavves'); |
define('ADME_LG_FORM_MENU_DESCRIPTION', ' Descripción del contenido '); |
define('ADME_LG_FORM_MENU_TABLE_MATIERE', ' contenido'); |
define('ADME_LG_FORM_MENU_SOURCE', ' fuente '); |
define('ADME_LG_FORM_MENU_AUTEUR', 'Autor'); |
define('ADME_LG_FORM_MENU_CONTRIBUTEUR', 'Contributor'); |
define('ADME_LG_FORM_MENU_EDITEUR', 'Éditor'); |
define('ADME_LG_FORM_MENU_DATE_CREATION', ' fecha de creación '); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_DEBUT', ' vaya de nuevo al principio de la validez '); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_FIN', ' fecha de la terminación de la validez '); |
define('ADME_LG_FORM_MENU_DATE_COPYRIGHT', 'año del copyright'); |
define('ADME_LG_FORM_MENU_URL_LICENCE', ' URL de la licencia '); |
define('ADME_LG_FORM_MENU_CATEGORIE', 'Catégoria'); |
define('ADME_LG_FORM_MENU_PUBLIC', 'Publico por esta pagina'); |
define('ADME_LG_FORM_MENU_PUBLIC_NIVEAU', ' nivel del público para esta página '); |
define('ADME_LG_FORM_MENU_ZG_TYPE', ' tipo de gama del espacio '); |
define('ADME_LG_FORM_MENU_ZG_VALEUR', ' espacie la gama de la página '); |
define('ADME_LG_FORM_MENU_ZG_VIDE', ' ningunos '); |
define('ADME_LG_FORM_MENU_ZG_ISO', ' código del país en dos letras(iso3166)'); |
define('ADME_LG_FORM_MENU_ZG_DC', ' Representación de las áreas geográficas de Dublin Core'); |
define('ADME_LG_FORM_MENU_ZG_POINT', 'Punto géografico'); |
define('ADME_LG_FORM_MENU_ZG_GTGN', ' nombra el issus du Getty Thesaurus de los nombres geográficos'); |
define('ADME_LG_FORM_MENU_TMP_TYPE', ' Estándar de la gama temporal '); |
define('ADME_LG_FORM_MENU_TMP_VALEUR', ' dimensión temporal de la página '); |
define('ADME_LG_FORM_MENU_TMP_VIDE', 'Ningunos'); |
define('ADME_LG_FORM_MENU_TMP_W3C', ' Codificación de las fechas y de las horas del W3C'); |
define('ADME_LG_FORM_MENU_TMP_DC', ' Representación de los intervalos de la época de la base de Dublín'); |
define('ADME_LG_FORM_MENU_VALIDER', 'Registrar'); |
define('ADME_LG_FORM_MENU_ANNULER', ' cancelación '); |
define('ADME_LG_FORM_TXT_CHP_OBLIGATOIRE', ' indica los obligatories de los campos'); |
define('ADME_LG_FORM_SYMBOLE_CHP_OBLIGATOIRE', '*'); |
// Charactère spéciaux: |
define('ADME_LG_PARENTHESE_OUVRANTE', '('); |
define('ADME_LG_PARENTHESE_FERMANTE', ')'); |
define('ADME_LG_SLASH', '/'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/09/27 09:20:28 alexandre_tb |
* Ajout de constante de traduction |
* |
* Revision 1.1 2006/04/12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.7 2005/07/18 16:14:32 ddelon |
* css admin + menú communs |
* |
* Revision 1.6 2005/07/08 21:13:15 ddelon |
* Gestion indentation menú |
* |
* Revision 1.5 2005/05/26 15:45:09 jpm |
* Ajout d'une majuscule accentuée. |
* |
* Revision 1.4 2005/03/29 15:49:31 jpm |
* Ajout de la constante pour la date de création dans le formulaire des menús. |
* |
* Revision 1.3 2004/12/01 16:47:07 jpm |
* Ajout d'un texte pour la boite javascript de confirmation de suppression de menú. |
* |
* Revision 1.2 2004/11/10 17:26:12 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.1 2004/11/10 11:58:31 jpm |
* Début de la traduction de l'appli. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/langues/adme_langue_fr.inc.php |
---|
New file |
0,0 → 1,337 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: adme_langue_fr.inc.php,v 1.19 2007-10-25 14:26:56 ddelon Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADME. |
* |
*@package Admin_menu |
*@subpackage Langues |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.19 $ $Date: 2007-10-25 14:26:56 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
define ('ADME_IDENTIFIEZ_VOUS','Veuillez vous identifier pour accèder à ce menu.'); |
// Le formulaire de sélection du site dont les menus doivent être administrer : |
define('ADME_LG_FORM_SITE_TITRE', 'Listes des sites'); |
define('ADME_LG_FORM_SITE_CHOIX', 'Choix du site à administrer : '); |
define('ADME_LG_FORM_SITE_VALIDER', 'OK'); |
// Les titres de l'arborescence des menus à administrer: |
define('ADME_LG_MENU_TITRE', 'Configuration des menus du site : '); |
define('ADME_LG_MENU_CLASSIQUE_RACINE', 'Ajouter un menu classique'); |
define('ADME_LG_MENU_COMMUN_RACINE', 'Ajouter un menu commun'); |
// Les actions des menus classiques: |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER', 'menu_classique_modifier'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ACTION', 'menu_classique_modifier_action'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_ALT', 'Modifier'); |
define('ADME_LG_ACTION_CLASSIQUE_MODIFIER_TITLE', 'Modifier ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER', 'menu_classique_monter'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_ALT', 'Monter'); |
define('ADME_LG_ACTION_CLASSIQUE_MONTER_TITLE', 'Monter ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE', 'menu_classique_descendre'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_ALT', 'Descendre'); |
define('ADME_LG_ACTION_CLASSIQUE_DESCENDRE_TITLE', 'Descendre ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER', 'menu_classique_diminuer'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_ALT', 'Diminuer'); |
define('ADME_LG_ACTION_CLASSIQUE_DIMINUER_TITLE', 'Diminuer d\'un niveau ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER', 'menu_classique_augmenter'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_ALT', 'Augmenter'); |
define('ADME_LG_ACTION_CLASSIQUE_AUGMENTER_TITLE', 'Augmenter d\'un niveau ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE', 'menu_classique_traduire'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ACTION', 'menu_classique_traduire_action'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ALT', 'Traduire'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUIRE_TITLE', 'Traduire ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER', 'menu_classique_supprimer'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION', 'menu_classique_supprimer_traduction'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER', 'menu_classique_ajouter'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_ALT', 'Ajouter'); |
define('ADME_LG_ACTION_CLASSIQUE_AJOUTER_TITLE', 'Ajouter ce menu'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER', 'menu_classique_verifier'); |
define('ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION', 'menu_classique_verifier_traduction'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT', 'menu_classique_traduction_defaut'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_ALT', 'Choisir ce menu comme traduction par défaut'); |
define('ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT_TITLE', 'Choisir ce menu comme traduction par défaut'); |
define ('ADME_LG_ACTION_CLASSIQUE_LIMITER', 'menu_classique_limiter'); |
define ('ADME_LG_ACTION_CLASSIQUE_LIMITER_TITLE', 'Restreindre le menu à cette langue'); |
define ('ADME_LG_ACTION_CLASSIQUE_OUVRIR', 'menu_classique_ouvrir'); |
define ('ADME_LG_ACTION_CLASSIQUE_OUVRIR_TITLE', 'Faire apparaitre ce menu dans toutes les langues'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT', 'menu_classique_traduction_defaut'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_ALT', 'Choisir ce menu comme traduction par défaut'); |
define('ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT_TITLE', 'Choisir ce menu comme traduction par défaut'); |
// Les actions des menus communs: |
define('ADME_LG_ACTION_COMMUN_MODIFIER', 'menu_commun_modifier'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ALT', 'Modifier'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_ACTION', 'menu_commun_modifier_action'); |
define('ADME_LG_ACTION_COMMUN_MODIFIER_TITLE', 'Modifier ce menu'); |
define('ADME_LG_ACTION_COMMUN_MONTER', 'menu_commun_monter'); |
define('ADME_LG_ACTION_COMMUN_MONTER_ALT', 'Monter'); |
define('ADME_LG_ACTION_COMMUN_MONTER_TITLE', 'Monter ce menu'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE', 'menu_commun_descendre'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_ALT', 'Descendre'); |
define('ADME_LG_ACTION_COMMUN_DESCENDRE_TITLE', 'Descendre ce menu'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER', 'menu_commun_diminuer'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_ALT', 'Diminuer'); |
define('ADME_LG_ACTION_COMMUN_DIMINUER_TITLE', 'Diminuer d\'un niveau ce menu'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER', 'menu_commun_augmenter'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_ALT', 'Augmenter'); |
define('ADME_LG_ACTION_COMMUN_AUGMENTER_TITLE', 'Augmenter d\'un niveau ce menu'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE', 'menu_commun_traduire'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ACTION', 'menu_commun_traduire_action'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_ALT', 'Traduire'); |
define('ADME_LG_ACTION_COMMUN_TRADUIRE_TITLE', 'Traduire ce menu'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER', 'menu_commun_supprimer'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION', 'menu_commun_supprimer_traduction'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_ALT', 'Supprimer'); |
define('ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION_TITLE', 'Supprimer ce menu'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER', 'menu_commun_ajouter'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_ALT', 'Ajouter'); |
define('ADME_LG_ACTION_COMMUN_AJOUTER_TITLE', 'Ajouter ce menu'); |
define('ADME_LG_ACTION_COMMUN_VERIFIER', 'menu_commun_verifier'); |
define ('ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION','menu_commun_verifier_traduction'); |
// Les actions générales: |
define('ADME_LG_ACTION_ADMINISTRER', 'administrer'); |
define('ADME_LG_ACTION_ADMINISTRER_ALT', 'Administrer'); |
define('ADME_LG_ACTION_ADMINISTRER_TITLE', 'Administrer l\'application de ce menu'); |
define('ADME_LG_ACTION_PLIER', 'adme_menu_fermer'); |
define('ADME_LG_ACTION_PLIER_ALT', 'Plier'); |
define('ADME_LG_ACTION_DEPLIER', 'adme_menu_ouvrir'); |
define('ADME_LG_ACTION_DEPLIER_ALT', 'Déplier'); |
define('ADME_LG_ACTION_SUPPRIMER_CONFIRMATION', 'Êtes vous sûr de vouloir supprimer ce menu?'); |
// Les erreurs: |
define('ADME_LG_ERREUR_INFO_MENU', 'impossible de lire les infos du menu.'); |
define('ADME_LG_ERREUR_INFO_SITE', 'impossible de lire les infos du site.'); |
define('ADME_LG_ERREUR_INFO_MENU_RELATION', 'impossible de lire les infos sur les relations du menu.'); |
define('ADME_LG_ERREUR_ID_MENU_PERE', 'impossible de lire identifiant du menu père.'); |
define('ADME_LG_ERREUR_CODE_NUM', "La valeur %s pour le champ \"Code numérique\" existe déjà."); |
define('ADME_LG_ERREUR_CODE_ALPHA', "La valeur %s pour le champ \"Code alphanumérique\" existe déjà."); |
define('ADME_LG_ERREUR_EXISTE_SOUS_MENU', 'Ce menu contient encore des sous menus. Veuillez commencez par supprimer ces sous menus.'); |
// Le formulaire de modification d'un menu : |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL', 'Modification menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL', 'Modification menu commun'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_GENERAL_TRADUCTION', 'Traduction menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_GENERAL_TRADUCTION', 'Traduction menu commun'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_CONFIG', 'Configuration du menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_CONFIG', 'Configuration du menu commun'); |
define('ADME_LG_FORM_MENU_ID', 'Identifiant de ce menu : '); |
define('ADME_LG_FORM_MENU_CODE_NUM', 'Code numérique du menu'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_NUM', 'Un code numérique est requis pour le menu !'); |
define('ADME_LG_FORM_MENU_CODE_ALPHA', 'Code alphanumérique du menu'); |
define('ADME_LG_FORM_MENU_REGLE_CODE_ALPHA', 'Un code alphanumérique est requis pour le menu !'); |
define('ADME_LG_FORM_MENU_NOM', 'Nom du menu'); |
define('ADME_LG_FORM_MENU_REGLE_NOM', 'Un nom est requis pour le menu !'); |
define('ADME_LG_FORM_MENU_RACCOURCI', 'Raccourci clavier'); |
define('ADME_LG_FORM_MENU_DEFAUT', 'En faire le menu par défaut'); |
define('ADME_LG_FORM_MENU_FICHIER_SQUELETTE', 'Fichier squelette'); |
define('ADME_LG_FORM_MENU_INFO_BULLE', 'Contenu info-bulle'); |
define('ADME_LG_FORM_MENU_REGLE_INFO_BULLE', 'Une description courte pour l\'info-bulle est requise pour ce menu !'); |
define('ADME_LG_FORM_MENU_APPLI', 'Application'); |
define('ADME_LG_FORM_MENU_APPLI_ARGUMENT', 'Arguments de l\'application'); |
define('ADME_LG_FORM_MENU_CLASSIQUE_TITRE_ENTETE', 'Entête des pages du menu'); |
define('ADME_LG_FORM_MENU_COMMUN_TITRE_ENTETE', 'Entête des pages du menu commun'); |
define('ADME_LG_FORM_MENU_ROBOT', 'Indexation par robots'); |
define('ADME_LG_FORM_MENU_INDEX_FOLLOW', 'Indexer cette page et les suivantes'); |
define('ADME_LG_FORM_MENU_INDEX', 'Indexer seulement cette page'); |
define('ADME_LG_FORM_MENU_NOINDEX_NOFOLLOW', 'Ne pas indexer cette page et les suivantes'); |
define('ADME_LG_FORM_MENU_NOINDEX', 'Ne pas indexer cette page'); |
define('ADME_LG_FORM_MENU_INDEX_VIDE', 'Aucune'); |
define('ADME_LG_FORM_MENU_TITRE', 'Titre de la page'); |
define('ADME_LG_FORM_MENU_TITRE_ALTERNATIF', 'Titre alternatif de la page'); |
define('ADME_LG_FORM_MENU_MOT_CLE', 'Mots-clés'); |
define('ADME_LG_FORM_MENU_DESCRIPTION', 'Description du contenu'); |
define('ADME_LG_FORM_MENU_TABLE_MATIERE', 'Table des matières'); |
define('ADME_LG_FORM_MENU_SOURCE', 'Source'); |
define('ADME_LG_FORM_MENU_AUTEUR', 'Auteur'); |
define('ADME_LG_FORM_MENU_CONTRIBUTEUR', 'Contributeur'); |
define('ADME_LG_FORM_MENU_EDITEUR', 'Éditeur'); |
define('ADME_LG_FORM_MENU_DATE_CREATION', 'Date de création'); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_DEBUT', 'Date de début de validité'); |
define('ADME_LG_FORM_MENU_DATE_VALIDITE_FIN', 'Date de fin de validité'); |
define('ADME_LG_FORM_MENU_DATE_COPYRIGHT', 'Année pour le copyright'); |
define('ADME_LG_FORM_MENU_URL_LICENCE', 'URL de la licence'); |
define('ADME_LG_FORM_MENU_CATEGORIE', 'Catégorie'); |
define('ADME_LG_FORM_MENU_PUBLIC', 'Public pour la page'); |
define('ADME_LG_FORM_MENU_PUBLIC_NIVEAU', 'Niveau du public pour la page'); |
define('ADME_LG_FORM_MENU_ZG_TYPE', 'Type de portée spatiale'); |
define('ADME_LG_FORM_MENU_ZG_VALEUR', 'Portée spatiale de la page'); |
define('ADME_LG_FORM_MENU_ZG_VIDE', 'Aucun'); |
define('ADME_LG_FORM_MENU_ZG_ISO', 'Code de pays sur deux lettres (iso3166)'); |
define('ADME_LG_FORM_MENU_ZG_DC', 'Représentation des régions géographiques du Dublin Core'); |
define('ADME_LG_FORM_MENU_ZG_POINT', 'Point géographique'); |
define('ADME_LG_FORM_MENU_ZG_GTGN', 'Noms issus du Getty Thesaurus of Geographic Names'); |
define('ADME_LG_FORM_MENU_TMP_TYPE', 'Type de portée temporelle'); |
define('ADME_LG_FORM_MENU_TMP_VALEUR', 'Portée temporelle de la page'); |
define('ADME_LG_FORM_MENU_TMP_VIDE', 'Aucun'); |
define('ADME_LG_FORM_MENU_TMP_W3C', 'Codage des dates et heures du W3C'); |
define('ADME_LG_FORM_MENU_TMP_DC', 'Représentation des intervalles de temps du Dublin Core'); |
define('ADME_LG_FORM_MENU_VALIDER', 'Enregistrer'); |
define('ADME_LG_FORM_MENU_ANNULER', 'Annuler'); |
define('ADME_LG_FORM_TXT_CHP_OBLIGATOIRE', 'Indique les champs obligatoires'); |
define('ADME_LG_FORM_SYMBOLE_CHP_OBLIGATOIRE', '*'); |
define ('ADME_VOIR_CONFIG_AVANCEE', 'Afficher/Cacher la configuration avancée'); |
define ('ADME_CONFIG_AVANCEE', 'Configuration avancée'); |
// Charactère spéciaux: |
define('ADME_LG_PARENTHESE_OUVRANTE', '('); |
define('ADME_LG_PARENTHESE_FERMANTE', ')'); |
define('ADME_LG_SLASH', '/'); |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.18 2007-10-25 10:08:55 alexandre_tb |
* nouvelle constante multilinguisme |
* |
* Revision 1.17 2007-06-26 14:18:53 florian |
* amélioration des formulaires des différentes applis de l'interface d'administration afin de les simplifier |
* |
* Revision 1.16 2006/10/06 10:40:51 florian |
* harmonisation des messages d'erreur de l'authentification |
* |
* Revision 1.15 2006/06/29 18:58:57 ddelon |
* Multilinguisme : menu par defaut pour les menu commun |
* |
* Revision 1.14 2006/06/28 12:53:34 ddelon |
* Multilinguisme : menu par defaut |
* |
* Revision 1.13 2006/05/10 16:02:49 ddelon |
* Finition multilinguise et schizo flo |
* |
* Revision 1.12 2006/05/10 15:01:57 florian |
* ajout de constantes, pour éviter les warnings |
* |
* Revision 1.11 2006/04/12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.10 2006/03/23 20:24:58 ddelon |
* *** empty log message *** |
* |
* Revision 1.9 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.8 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.7.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.7 2005/07/18 16:14:32 ddelon |
* css admin + menu communs |
* |
* Revision 1.6 2005/07/08 21:13:15 ddelon |
* Gestion indentation menu |
* |
* Revision 1.5 2005/05/26 15:45:09 jpm |
* Ajout d'une majuscule accentuée. |
* |
* Revision 1.4 2005/03/29 15:49:31 jpm |
* Ajout de la constante pour la date de création dans le formulaire des menus. |
* |
* Revision 1.3 2004/12/01 16:47:07 jpm |
* Ajout d'un texte pour la boite javascript de confirmation de suppression de menu. |
* |
* Revision 1.2 2004/11/10 17:26:12 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.1 2004/11/10 11:58:31 jpm |
* Début de la traduction de l'appli. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/styles/adme_standard.css |
---|
New file |
0,0 → 1,68 |
/* vim: set expandtab tabstop=4 shiftwidth=4: */ |
/* ======================================================================================================== |
| Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) | |
+---------------------------------------------------------------------------------------------------------+ |
| This file is part of Papyrus - Admin Menus. | |
| | |
| Foobar is free software; you can redistribute it and/or modify it under the terms of the GNU General | |
| Public License as published by the Free Software Foundation; either version 2 of the License, or | |
| (at your option) any later version. | |
| | |
| Foobar is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the | |
| implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public | |
| License for more details. | |
| | |
| You should have received a copy of the GNU General Public License 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_standard.css,v 1.3 2006-10-06 13:38:45 florian Exp $ |
=========================================================================================================== |
DESCRIPTION : Fichier contenant les styles css de l'application ADME de Papyrus. |
=========================================================================================================== |
Auteur original : jean-Pascal MILCENT <jpm[at]tela-botanica[point]org> |
Autres auteurs : aucun |
=========================================================================================================== |
AUTEUR : $Author: florian $ |
VERSION : $Revision: 1.3 $ $Date: 2006-10-06 13:38:45 $ |
======================================================================================================= */ |
/* +----------------------------------------------------------------------------------------------------+ |
| STRUCTURE | |
+----------------------------------------------------------------------------------------------------+*/ |
/* +----------------------------------------------------------------------------------------------------+ |
| DESIGN | |
+----------------------------------------------------------------------------------------------------+*/ |
.adme_img_icone { |
border: 0px; |
width: 16px; |
height: 16px; |
} |
.adme_img_plier_deplier { |
border: 0px; |
width: 9px; |
height: 9px; |
} |
.menu_classique, .menu_commun { |
list-style-type: none; |
} |
/* +--Fin des CSS ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2005/02/28 11:05:55 jpm |
* Modification de la licence. |
* |
* Revision 1.1 2004/11/09 12:51:43 jpm |
* Ajout de styles pour les icônes. |
* |
* |
* +-- Fin des CSS ----------------------------------------------------------------------------------------+ |
*/ |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_ouvrir.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_ouvrir.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_supprimer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_supprimer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_augmenter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_augmenter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_radio_off.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_radio_off.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_ajouter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_ajouter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_radio_on.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_radio_on.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_descendre.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_descendre.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_diminuer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_diminuer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_modifier.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_modifier.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_fermer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_fermer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_administrer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_administrer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_monter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/admin_menu/presentations/images/interface/adme_monter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/admin_menu/admin_menu.php |
---|
New file |
0,0 → 1,618 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) |
// |
// Ce logiciel est un programme informatique servant à gérer du contenu et des |
// applications web. |
// Ce logiciel est régi par la licence CeCILL soumise au droit français et |
// respectant les principes de diffusion des logiciels libres. Vous pouvez |
// utiliser, modifier et/ou redistribuer ce programme sous les conditions |
// de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA |
// sur le site "http://www.cecill.info". |
// En contrepartie de l'accessibilité au code source et des droits de copie, |
// de modification et de redistribution accordés par cette licence, il n'est |
// offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, |
// seule une responsabilité restreinte pèse sur l'auteur du programme, le |
// titulaire des droits patrimoniaux et les concédants successifs. |
// A cet égard l'attention de l'utilisateur est attirée sur les risques |
// associés au chargement, à l'utilisation, à la modification et/ou au |
// développement et à la reproduction du logiciel par l'utilisateur étant |
// donné sa spécificité de logiciel libre, qui peut le rendre complexe à |
// manipuler et qui le réserve donc à des développeurs et des professionnels |
// avertis possédant des connaissances informatiques approfondies. Les |
// utilisateurs sont donc invités à charger et tester l'adéquation du |
// logiciel à leurs besoins dans des conditions permettant d'assurer la |
// sécurité de leurs systèmes et ou de leurs données et, plus généralement, |
// à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. |
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: admin_menu.php,v 1.29 2007-10-25 10:10:23 alexandre_tb Exp $ |
/** |
* Application gérant les menus de Papyrus |
* |
* Cette application permet de gérer les menus classiques, les menus communs |
* et les liaison d'une application à un menu. |
* |
*@package Admin_menu |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.29 $ $Date: 2007-10-25 10:10:23 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications/admin_menu/configuration/adme_configuration.inc.php'; |
//Utilisation de la bibliotheque PEAR NET_URL |
/** Inclusion de la bibliotheque PEAR de conception de formulaire.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm.php'; |
require_once ADME_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm/select.php'; |
/** Inclusion de l'API de fonctions gerant les erreurs sql.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_API.'debogage/BOG_sql.fonct.php'; |
/** Inclusion des fonctions de manipulation du sql. |
* Permet la recuperation d'un nouvel identifiant d'une table.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_API.'sql/SQL_manipulation.fonct.php'; |
/** <BR> Inclusion de la bibliotheque de fonctions concernant les tables "gen_site..." de Papyrus.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_GEN.'pap_site.fonct.php'; |
/** <BR> Inclusion de la bibliotheque de fonctions concernant les tables "gen_menu..." de Papyrus.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_GEN.'pap_menu.fonct.php'; |
/** <BR> Inclusion de la bibliotheque de fonctions concernant les tables "gen_applications..." de Papyrus.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_GEN.'pap_application.fonct.php'; |
/** <BR> Inclusion de la bibliotheque de fonctions concernant l'affichage commun.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_ADME.'adme_general.fonct.php';//ok |
/** <BR> Inclusion de la bibliotheque de fonctions concernant la gestion des menus classiques.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_ADME.'adme_menu_classique.fonct.php';//ok |
/** <BR> Inclusion de la bibliotheque de fonctions concernant la gestion des menus communs.*/ |
require_once ADME_CHEMIN_BIBLIOTHEQUE_ADME.'adme_menu_commun.fonct.php';//ok |
/** <BR> Inclusion de la bibliotheque de fonctions concernant la gestion de la redaction de contenu.*/ |
//require_once ADME_CHEMIN_BIBLIOTHEQUE_ADME.'adme_contenu.fonct.php';//ok |
// Inclusion des fichiers de traduction de l'appli ADME dePapyrus |
if (file_exists(ADME_CHEMIN_LANGUE.'adme_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite a la transaction avec le navigateur.*/ |
require_once ADME_CHEMIN_LANGUE.'adme_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par defaut.*/ |
require_once ADME_CHEMIN_LANGUE.'adme_langue_'.ADME_I18N_DEFAUT.'.inc.php'; |
} |
// Stockage des styles de l'application |
GEN_stockerStyleExterne('adme_standard', ADME_CHEMIN_STYLE.'adme_standard.css'); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
function afficherContenuCorps() |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Initialisation des variables |
$sortie_xhtml = ''; |
$objet_pear_auth = $GLOBALS['_GEN_commun']['pear_auth']; |
$objet_pear_db = $GLOBALS['_GEN_commun']['pear_db']; |
$objet_pear_url = $GLOBALS['_GEN_commun']['url']; |
$copie_objet_pear_url = (PHP_VERSION < 5) ? $objet_pear_url : clone($objet_pear_url); |
$url_site = $GLOBALS['_GEN_commun']['url_site']; |
if (isset($GLOBALS['_GEN_commun']['url_menu'])) { |
$url_menu = $GLOBALS['_GEN_commun']['url_menu']; |
} |
if (isset($_POST['adme_site_id'])) { |
$_GET['adme_site_id'] = $_POST['adme_site_id']; |
} else { |
$_GET['adme_site_id'] = (!isset($_GET['adme_site_id'])) ? 1 : $_GET['adme_site_id']; |
} |
$_GET['adme_menu_id'] = (!isset($_GET['adme_menu_id'])) ? 0 : $_GET['adme_menu_id']; |
$_GET['adme_action'] = (!isset($_GET['adme_action'])) ? '' : $_GET['adme_action']; |
//------------------------------------------------------------------------------------------------------------------- |
// Authentification |
if ($objet_pear_auth->getAuth()) { |
//--------------------------------------------------------------------------------------------------------------- |
// GESTION DES MENUS CLASSIQUES |
// Ajouter un menu classique |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_AJOUTER) { |
$message = ADME_ajouterMenuClassique($objet_pear_db, $objet_pear_auth, $_GET['adme_site_id'], $_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// Formulaire de mise à jour du menu |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_MODIFIER) { |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
$copie_objet_pear_url->addQueryString('adme_menu_id',$_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_MODIFIER_ACTION); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_MODIFIER_ACTION) { |
$sortie_xhtml .= ADME_afficherFormMenuClassique($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} |
//var_dump($_POST); |
if (isset($_POST['form_boutons'][ADME_LG_ACTION_CLASSIQUE_VERIFIER])) { |
// Nous cherchons a enregistrer une modification de menu |
$message = ADME_validerFormAjouterMenuClassique($objet_pear_db, $_POST); |
if (!empty($message)) { |
// Les donnees ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormMenuClassique($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} else { |
// Les donnees sont valide. Nous les enregistrons et retournons au formulaire de depart. |
$message = ADME_modifierMenuClassique($objet_pear_db, $objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
} |
} |
// Deplacer le menu vers le haut |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_MONTER) { |
ADME_deplacerMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], true); |
} |
// Deplacer le menu vers le bas |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_DESCENDRE) { |
ADME_deplacerMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], false); |
} |
// Deplacer le menu vers la gauche (diminuer d'un niveau) |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_DIMINUER) { |
ADME_indenterMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], true); |
} |
// Deplacer le menu vers la droite (augmenter d'un niveau) |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_AUGMENTER) { |
ADME_indenterMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], false); |
} |
// Traduire le menu |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_TRADUIRE) { |
$message=''; |
$message = ADME_verifier_traduction_possible($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
if ((!empty($message))) { |
// Pas de traduction possible ! |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
return $sortie_xhtml; |
} |
else { |
// Les données sont valide. Nous affichons le formulaire de traduction |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
$copie_objet_pear_url->addQueryString('adme_menu_id',$_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_action',ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ACTION); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
} |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_TRADUIRE_ACTION) { |
$sortie_xhtml .= ADME_afficherFormMenuClassique($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST,TRUE); |
return $sortie_xhtml; |
} |
if (isset($_POST['form_boutons'][ADME_LG_ACTION_CLASSIQUE_VERIFIER_TRADUCTION])) { |
// Nous cherchons a enregistrer une traduction de menu |
$message = ADME_validerFormTraduireMenuClassique($objet_pear_db, $_POST); |
if (!empty($message)) { |
// Les donnees ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormMenuClassique($objet_pear_db, $objet_pear_url, $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} else { |
// Les donnees sont valide. Nous les enregistrons et retournons au formulaire de depart. |
$message = ADME_traduireMenuClassique($objet_pear_db, $objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
} |
} |
// Supprimer le menu |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_SUPPRIMER) { |
// Recuperation du menu de remplacement pour eviter de fermer l'arborescence |
if (GEN_donnerDernierFreres($_GET['adme_menu_id']) == false) { |
$adme_menu_id_remplacement = GEN_lireIdentifiantMenuPere($_GET['adme_menu_id']);; |
} else { |
$adme_menu_id_remplacement = GEN_donnerDernierFreres($_GET['adme_menu_id']); |
} |
// Suppression du menu classique |
$message = ADME_supprimerMenuClassique($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id']); |
// Remplacement de l'id du menu courant par le remplacant. |
$_GET['adme_menu_id'] = $adme_menu_id_remplacement; |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// Supprimer le menu traduit |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_SUPPRIMER_TRADUCTION) { |
// Suppression du menu classique |
$message = ADME_supprimerMenuClassiqueTraduction($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('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// Selectionner le menu comme traduction par defaut : |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_CLASSIQUE_TRADUCTION_DEFAUT) { |
$message = ADME_selectionnerMenuClassiqueTraduction($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('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// 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('&', '&', $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('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
//--------------------------------------------------------------------------------------------------------------- |
// GESTION DES MENUS COMMUNS |
// Ajout un menu commun |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_AJOUTER) { |
$message = ADME_ajouterMenuCommun($objet_pear_db, $objet_pear_auth, $_GET['adme_site_id'], $_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// Formulaire de mise a jour du menu commun. |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_MODIFIER) { |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
$copie_objet_pear_url->addQueryString('adme_menu_id',$_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_MODIFIER_ACTION); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_MODIFIER_ACTION) { |
$sortie_xhtml .= ADME_afficherFormMenuClassique($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} |
if (isset($_POST[ADME_LG_ACTION_COMMUN_VERIFIER])) { |
// Nous cherchons a enregistrer une modification de menu |
$message = ADME_validerFormAjouterMenuCommun($objet_pear_db, $_POST); |
if (!empty($message)) { |
// Les donnees ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormMenuCommun($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} else { |
// Les donnees sont valide. Nous les enregistrons et retournons au formulaire de depart. |
$message = ADME_modifierMenuCommun($objet_pear_db, $objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
} |
} |
// Deplace vers le haut de la hierarchie un menu commun |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_MONTER) { |
ADME_deplacerMenuCommun($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], true); |
} |
// Deplace vers le bas de la hierarchie un menu commun |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_DESCENDRE) { |
ADME_deplacerMenuCommun($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], false); |
} |
// Deplacer le menu vers la gauche (diminuer d'un niveau) |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_DIMINUER) { |
ADME_indenterMenuCommun($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], true); |
} |
// Deplacer le menu vers la droite (augmenter d'un niveau) |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_AUGMENTER) { |
ADME_indenterMenuCommun($objet_pear_db, $_GET['adme_site_id'], $_GET['adme_menu_id'], false); |
} |
// Traduire le menu |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_TRADUIRE) { |
$message=''; |
$message = ADME_verifier_traduction_possible($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST); |
if ((!empty($message))) { |
// Pas de traduction possible ! |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
return $sortie_xhtml; |
} |
else { |
// Les données sont valide. Nous affichons le formulaire de traduction |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
$copie_objet_pear_url->addQueryString('adme_menu_id',$_GET['adme_menu_id']); |
$copie_objet_pear_url->addQueryString('adme_action',ADME_LG_ACTION_COMMUN_TRADUIRE_ACTION); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
} |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_TRADUIRE_ACTION) { |
$sortie_xhtml .= ADME_afficherFormMenuCommun($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_POST,TRUE); |
return $sortie_xhtml; |
} |
if (isset($_POST[ADME_LG_ACTION_COMMUN_VERIFIER_TRADUCTION])) { |
// Nous cherchons à enregistrer une traduction de menu |
$message = ADME_validerFormTraduireMenuCommun($objet_pear_db, $_POST); |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= $message; |
$sortie_xhtml .= ADME_afficherFormMenuCommun($objet_pear_db, $objet_pear_url, $_GET['adme_menu_id'], $_POST); |
return $sortie_xhtml; |
} else { |
// Les données sont valide. Nous les enregistrons et retournons au formulaire de départ. |
$message = ADME_traduireMenuCommun($objet_pear_db, $objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
} |
} |
// Supprime définitivement un menu commun |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_SUPPRIMER) { |
// Récupération du menu de remplacement pour éviter de fermer l'arborescence |
if (GEN_donnerDernierFreres($_GET['adme_menu_id']) == false) { |
$adme_menu_id_remplacement = GEN_lireIdentifiantMenuPere($_GET['adme_menu_id']);; |
} else { |
$adme_menu_id_remplacement = GEN_donnerDernierFreres($_GET['adme_menu_id']); |
} |
// Suppression du menu commun |
ADME_supprimerMenuCommun($objet_pear_db, $_GET['adme_menu_id']); |
// Remplacement de l'id du menu courant par le remplaçant. |
$_GET['adme_menu_id'] = $adme_menu_id_remplacement; |
$copie_objet_pear_url->addQueryString('adme_site_id',$_GET['adme_site_id']); |
header("Location: ".str_replace('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
// Supprimer le menu traduit |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_SUPPRIMER_TRADUCTION) { |
// Suppression du menu commun |
$message = ADME_supprimerMenuCommunTraduction($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('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_COMMUN_TRADUCTION_DEFAUT) { |
$message = ADME_selectionnerMenuCommunTraduction($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('&', '&', $copie_objet_pear_url->getUrl())); |
exit; |
} |
//--------------------------------------------------------------------------------------------------------------- |
// GESTION DES INTERFACES D'ADMINISTRATION |
// Appel de l'application d'administration |
if (isset($_GET['adme_action']) && $_GET['adme_action'] == ADME_LG_ACTION_ADMINISTRER) { |
$id_appli = GEN_retournerIdAppliMenu($objet_pear_db, $_GET['adme_menu_id']); |
$chemin_admin = GEN_retournerCheminInterfaceAdmin($objet_pear_db, $id_appli); |
$nom_admin = GEN_retournerNomInterfaceAdmin($objet_pear_db, $id_appli); |
if ($chemin_admin !== false) { |
include_once $chemin_admin; |
$objet_admin = new $nom_admin; |
if (method_exists($objet_admin, 'afficherContenuCorps')) { |
$retour_admin = $objet_admin->afficherContenuCorps(); |
} |
if ($retour_admin !== false) { |
return $retour_admin; |
} |
} |
} |
//--------------------------------------------------------------------------------------------------------------- |
// Affichage des messages si nécessaire |
if (! empty($message)) { |
$sortie_xhtml .= "\n".'<p class="pap_erreur">'.$message.'</p>'; |
} |
//--------------------------------------------------------------------------------------------------------------- |
// Affichage formulaire principal et retour du XHTML! |
$sortie_xhtml .= ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
return $sortie_xhtml; |
// Fin de l'authentification |
} else { |
// Pas d'authentification nous affichons un message! |
$res=''; |
$res .= '<p class="zone_alert">'.ADME_IDENTIFIEZ_VOUS.'</p>'."\n" ; |
$res .= '<form id="form_connexion" style="clear:both;" class="form_identification" action="' ; |
$res .= $objet_pear_url->getURL(); |
$res .= '" method="post"> |
<fieldset> |
<legend>Identifiez vous</legend> |
<label for="username">Courriel : </label> |
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="courriel" /> |
<label for="password">Mot de passe : </label> |
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" /> |
<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" /> |
</fieldset> |
</form>'; |
return $res ; |
} |
}// Fin de la fonction afficherContenuCorps() |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.28 2007-10-24 14:43:01 ddelon |
* Gestion des menus reservés à une langue |
* |
* 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 |
* |
* Revision 1.25 2006/10/06 10:40:51 florian |
* harmonisation des messages d'erreur de l'authentification |
* |
* Revision 1.24 2006/06/29 19:13:26 ddelon |
* Bug defaut traduction sur menu commun |
* |
* Revision 1.23 2006/06/29 18:58:57 ddelon |
* Multilinguisme : menu par defaut pour les menu commun |
* |
* Revision 1.22 2006/06/28 12:53:34 ddelon |
* Multilinguisme : menu par defaut |
* |
* Revision 1.21 2006/04/12 21:11:54 ddelon |
* Multilinguisme menus communs |
* |
* Revision 1.20 2006/03/23 20:24:58 ddelon |
* *** empty log message *** |
* |
* Revision 1.19 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.18.2.2 2006/02/28 14:02:08 ddelon |
* Finition multilinguisme |
* |
* Revision 1.18.2.1 2005/12/27 15:56:00 ddelon |
* Fusion Head vers multilinguisme (wikini double clic) |
* |
* Revision 1.18 2005/09/23 15:27:17 florian |
* correction de bugs |
* |
* Revision 1.17 2005/07/18 16:14:32 ddelon |
* css admin + menu communs |
* |
* Revision 1.16 2005/07/08 21:13:15 ddelon |
* Gestion indentation menu |
* |
* Revision 1.15 2005/02/28 11:04:25 jpm |
* Modification des auteurs. |
* |
* Revision 1.14 2005/02/28 10:31:41 jpm |
* Changement de nom de dossier. |
* |
* Revision 1.13 2004/11/16 13:01:41 jpm |
* Ajout d'un commentaire. |
* |
* Revision 1.12 2004/11/15 16:51:08 jpm |
* Correction bogue de mise à jour de l'ordre des menus. |
* |
* Revision 1.11 2004/11/10 17:26:18 jpm |
* Fin gestion de la traduction. |
* |
* Revision 1.10 2004/11/10 11:58:58 jpm |
* Mise en place des constantes de traduction de l'appli. |
* |
* Revision 1.9 2004/11/09 17:53:03 jpm |
* Changement des noms des actions sur les menus classiques. |
* |
* Revision 1.8 2004/11/09 17:49:11 jpm |
* Mise en conformité et gestion de différentes interfaces d'administration. |
* |
* Revision 1.7 2004/10/25 16:28:02 jpm |
* Correction convention de codage. |
* |
* Revision 1.6 2004/09/23 17:45:19 jpm |
* Amélioration de la gestion des liens annuler et du selecteur de sites. |
* |
* Revision 1.5 2004/09/23 16:49:24 jpm |
* Correction d'une erreur dans l'url de l'ajout de menu commun. |
* |
* Revision 1.4 2004/07/06 17:24:54 jpm |
* Suppression d'inclusions de fichiers inutiles. |
* |
* Revision 1.3 2004/07/06 17:07:28 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.2 2004/06/16 15:06:30 jpm |
* Suppression fichier inutile. |
* |
* Revision 1.1 2004/06/16 15:04:39 jpm |
* Changement de nom de Papyrus en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.26 2004/05/10 14:32:21 jpm |
* Changement du titre. |
* |
* Revision 1.25 2004/05/10 12:13:23 jpm |
* Ajout de la sélection des sites. |
* |
* Revision 1.24 2004/05/07 16:33:05 jpm |
* Intégration de constantes. |
* |
* Revision 1.23 2004/05/07 07:23:53 jpm |
* Amélioration du code, des commentaires et correction de bogues. |
* |
* Revision 1.22 2004/05/05 06:45:44 jpm |
* Suppression de l'appel de la fonction générant le "vous êtes ici" dans la fonction affichant l'entête de l'application. |
* |
* Revision 1.21 2004/05/04 16:27:33 jpm |
* Réduction de code pour la fonction afficherContenuTete(). |
* |
* Revision 1.20 2004/05/03 11:23:26 jpm |
* Début mise en conformité des commentaires. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_site/bibliotheque/adsi_affichage.fonct.php |
---|
New file |
0,0 → 1,107 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: adsi_affichage.fonct.php,v 1.5 2005-02-28 11:07:00 jpm Exp $ |
/** |
* Bibliothèque de fonctions de construction du xhtml de l'application Administrateur de Sites. |
* |
* Contient un ensemble de fonctions permettant à l'application Administrateur de Sites de généré son xhtml. |
* |
*@package Admin_site |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Date: 2005-02-28 11:07:00 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction ADMIN_contruirePage()- Génére le xhtml d'une page de l'application administrateur. |
* |
* Cette fonction formate de la même façon toutes les pages de l'application Administrateur |
* avant de les renvoyer. |
* |
* @param string le titre du contenu de la page. |
* @param string le corps du contenu de la page. |
* @param string un message important à destination de l'utilisateur. |
* return string le code XHTML à retourner. |
*/ |
function ADMIN_contruirePage($titre, $texte, $message = '') |
{ |
// Page. |
$sortie = ''; |
$sortie .= "\n"; |
$sortie .= '<!-- Application page -->'."\n"; |
$sortie .= str_repeat(' ', 12).'<h1>'.$titre.'</h1>'."\n"; |
if (! empty ($message)) { |
$sortie .= $message; |
} |
$sortie .= $texte."\n"; |
return $sortie; |
} |
// +- Fin du code source --------------------------------------------------------------------------------+ |
/* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2005/02/28 10:59:07 jpm |
* Modification des commentaires et copyright. |
* |
* Revision 1.3 2005/02/28 10:40:49 jpm |
* Suppression d'une fonction inutile. |
* |
* Revision 1.2 2004/07/06 17:08:01 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 14:23:01 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.6 2004/05/07 16:33:39 jpm |
* Modification de commentaires. |
* |
* Revision 1.5 2004/04/30 16:22:53 jpm |
* Poursuite de l'administration des sites. |
* |
* Revision 1.4 2004/04/02 16:36:35 jpm |
* Ajout d'une fonction générant des boutons pour les formulaires. |
* |
* Revision 1.3 2004/04/01 11:21:41 jpm |
* Ajout et modification de commentaires pour PhpDocumentor. |
* |
* Revision 1.2 2004/03/24 20:02:25 jpm |
* Modification de l'indentation du xhtml renvoyé. |
* |
* Revision 1.1 2004/03/24 10:01:33 jpm |
* Changement de nom de la bibliothèque de fonction d'affichage du xhtml. |
* |
* Revision 1.1 2004/03/24 10:00:11 jpm |
* Transfert de la fonction de contruction du xhtml de l'application dans ce fichier. |
* |
* |
*/ |
/branches/livraison_aha/papyrus/applications/admin_site/bibliotheque/adsi_site.fonct.php |
---|
New file |
0,0 → 1,2041 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: adsi_site.fonct.php,v 1.42 2007-10-23 13:31:22 ddelon Exp $ |
/** |
* Bibliotheque de fonctions d'admininistration des projets |
* |
* Contient un ensemble de fonctions permettant a l'application Administrateur de Papyrus, de modifier des informations |
* sur les projets (=sites geres par Papyrus). |
* |
*@package Admin_site |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.42 $ $Date: 2007-10-23 13:31:22 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
if (GEN_FTP_UTILISE) { |
/** Inclusion bibliotheque de PEAR gerant le FTP.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction ADMIN_afficherListeSites()- Genere le xhtml permettant de choisir un site parmis une liste. |
* |
* Cette fonction fournie une liste des sites principaux geres par papyrus. |
* |
* @param string l'objet Pear DB. |
* @param string l'url de la page à laquelle renvoyer le formulaire. |
* @param string un message important à destination de l'utilisateur. |
* return string le code XHTML a retourner. |
*/ |
function ADMIN_afficherFormListeSites(&$db, $url, $message = '') |
{ |
$id_langue = $GLOBALS['_GEN_commun']['i18n']; //identifiant de la langue choisie |
// Langue en cours : langue choisie ou langue par defaut (principale) |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
// Liste des sites principaux : |
// Recherche de tous les sites langue en cours |
$requete = 'SELECT * '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = gs_id_site '. |
'AND gsr_id_valeur IN (102, 103) '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
'ORDER BY gsr_ordre'; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ; |
$liste_site=array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
if ($langue_test == GEN_I18N_ID_DEFAUT) { |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
$liste_site[]=$ligne; |
} |
} |
else { |
$liste_site[]=$ligne; |
} |
} |
$resultat->free(); |
// Si la langue en cours n'est pas la langue par defaut, recherche des sites ayant comme langue |
// la langue par defaut, non traduits dans la langue en cours et n'etant pas des traductions |
if ($langue_test != GEN_I18N_ID_DEFAUT) { |
$requete = 'SELECT * '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur IN (102, 103) '. |
'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '. |
'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe" |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Recherche de tous les sites de la langue principale qui ne sont pas traduits dans la langue en cours |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$requete_est_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' . |
'AND gsr_id_site_01 <> gsr_id_site_02 ' . |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_est_traduction = $db->query($requete_est_traduction); |
(DB::isError($resultat_est_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction)) |
: ''; |
if ( $resultat_est_traduction->numRows() == 0 ) { |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
$requete_traduction = 'SELECT gsr_id_site_01 '. |
'FROM gen_site_relation, gen_site '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' . |
'AND gsr_id_site_02 = gs_id_site '. |
'AND gs_ce_i18n = "'.$langue_test.'" '. |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_traduction = $db->query($requete_traduction); |
(DB::isError($resultat_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
if ( $resultat_traduction->numRows() == 0 ) { |
$liste_site []=$ligne; |
} |
$resultat_traduction->free(); |
} |
$resultat_est_traduction->free(); |
} |
$resultat->free(); |
} |
//---------------------------------------------------------------------------- |
// Création du formulaire |
$form =& new HTML_QuickForm('form_sites', 'post', str_replace('&', '&', $url)); |
$tab_index = 1000; |
$squelette =& $form->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<li>'."\n".'{label}'."\n".'{element}'."\n". |
'<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</li>'."\n"); |
$squelette->setRequiredNoteTemplate("\n".'<p>'."\n".'<span class="symbole_obligatoire">*</span> {requiredNote}'."\n".'</p>'."\n"); |
$partie_site_debut = '<fieldset>'."\n". |
'<legend>Listes des sites</legend>'."\n". |
'<ul>'."\n"; |
$form->addElement('html', $partie_site_debut); |
$aso_options = array(); |
foreach ($liste_site as $ligne ) { |
$aso_options[$ligne->gs_id_site] = htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')'); |
// Affichage des traductions |
$requete_traduction = 'SELECT * '. |
'FROM gen_site_relation, gen_site '. |
'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' . |
'AND gsr_id_site_02 <> gsr_id_site_01 '. |
'AND gsr_id_site_02 = gs_id_site '. |
'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction" |
$resultat_traduction = $db->query($requete_traduction); |
(DB::isError($resultat_traduction)) |
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction)) |
: ''; |
while ($ligne_traduction = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) { |
$aso_options[$ligne_traduction->gs_id_site] = ' '.$ligne_traduction->gs_ce_i18n.": ".htmlentities($ligne_traduction->gs_nom.' ('.$ligne_traduction->gs_code_alpha.')'); |
} |
$resultat_traduction->free(); |
} |
$id = 'form_sites_id_site'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Listes des sites : '.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$partie_site_fin = '</ul>'."\n". |
'</fieldset>'."\n"; |
$form->addElement('html', $partie_site_fin); |
$liste_bouton_debut = '<ul class="liste_bouton">'."\n"; |
$form->addElement('html', $liste_bouton_debut); |
$id = 'form_sites_ajouter'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = 'Ajouter'; |
$form->addElement('submit', $id, $label, $aso_attributs); |
$id = 'form_sites_modifier'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = 'Modifier'; |
$form->addElement('submit', $id, $label, $aso_attributs); |
$id = 'form_sites_traduire'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = 'Traduire'; |
$form->addElement('submit', $id, $label, $aso_attributs); |
$id = 'form_sites_supprimer'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'onclick' => 'javascript:return confirm(\''.'êtes vous sûr de vouloir supprimer ce site ?'.'\');'); |
$label = 'Supprimer'; |
$form->addElement('submit', $id, $label, $aso_attributs); |
$liste_bouton_fin = '</ul>'."\n"; |
$form->addElement('html', $liste_bouton_fin); |
$sortie = $form->toHTML()."\n"; |
// Titre de la page: |
$titre = 'Configuration des sites'; |
// Construction de la page. |
return ADMIN_contruirePage($titre, $sortie, $message); |
} |
/** Fonction ADMIN_validerFormListesSites() - Valide les données issues du formulaire de liste de sites. |
* |
* Cette fonction valide les données du formulaire de liste de site. |
* |
* @param string l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADMIN_validerFormListesSites(&$db, $aso_valeurs) |
{ |
$message = ''; |
// Validation des donnees du formulaire |
if (empty($aso_valeurs['form_sites_id_site'])) { |
$message .= '<p class="pap_erreur">Vous devez d\'abord sélectionner un site.</p>'; |
} |
return $message; |
} |
/** Fonction ADMIN_afficherFormSite()- Génère un formulaire pour gen_site. |
* |
* Cette fonction retourne un formulaire pour modification ou pour ajout. |
* |
* @param string l'objet pear de connexion a la base de donnees. |
* @param string l'url a laquelle renvoyer le formulaire. |
* @param string le tableau contenant les valeurs du formulaire. |
* @param string un message a destination de l'utilisateur. |
* return string le code XHTML a retourner. |
*/ |
function ADMIN_afficherFormSite(&$db, $url, $aso_valeurs = array(), $message = '') |
{ |
// Initialisation des valeurs |
$sortie = ''; |
$aso_valeurs['modification'] = false; |
$aso_valeurs['traduction'] = false; |
$aso_valeurs['defaut'] = false; |
$aso_valeurs['type_site_externe'] = 0; |
// Nous cherchons a savoir si nous somme en modification |
if ((isset($aso_valeurs['form_sites_modifier'])) || (isset($aso_valeurs['form_sites_traduire']))) { |
if ((isset($aso_valeurs['form_sites_modifier']))) { |
$as_val['modification'] = true; |
$as_val['traduction'] = false; |
} |
else { |
$as_val['traduction'] = true; |
$as_val['modification'] = false; |
} |
if ($as_val['traduction']) { |
// Traduction d'un site principal uniquement : |
$requete = 'SELECT * '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_02 = '.$aso_valeurs['form_sites_id_site'].' '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
if ( $resultat->numRows() == 0 ) { |
$site_id = $aso_valeurs['form_sites_id_site']; |
} |
else { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$site_id = $ligne->gsr_id_site_01; |
} |
$resultat->free(); |
} |
else { |
$site_id = $aso_valeurs['form_sites_id_site']; |
} |
// Requete pour recuperer les informations sur le site a modifier |
$requete = 'SELECT * '. |
'FROM gen_site '. |
'WHERE gs_id_site = '.$site_id; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$aso_valeurs = $resultat->fetchRow(DB_FETCHMODE_ASSOC); |
$site_ligne = $aso_valeurs; |
$resultat->free(); |
// Requete pour recuperer les informations issues des relations du site a modifier |
$requete = 'SELECT * '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = '.$site_id.' '. |
'AND gsr_id_site_01 = gsr_id_site_02'; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$tab_type = GEN_retournerTableauTypeSiteExterne($db); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
if ($ligne->gsr_id_valeur == 101) {// 101 = site par defaut |
$aso_valeurs['defaut'] = true; |
} |
foreach ($tab_type as $cle => $val) { |
if ($ligne->gsr_id_valeur == $val['id']) {// 20x = type de site externe a Papyrus |
$aso_valeurs['type_site_externe'] = $val['id']; |
} |
} |
} |
$resultat->free(); |
if (($as_val['modification'])) { |
$aso_valeurs['modification'] = true; |
$aso_valeurs['traduction'] = false; |
} |
else { |
$aso_valeurs['traduction'] = true; |
$aso_valeurs['modification'] = false; |
}; |
} else if (isset($aso_valeurs['gs_id_site'])) { |
$aso_valeurs['modification'] = true; |
} |
// Debogage : |
//$GLOBALS['_DEBOGAGE_'] .= '<pre>'.print_r($aso_valeurs, true).'</pre>'; |
//------------------------------------------------------------------------------------------------------------------- |
// Information precedent le formulaire (en modification) |
if ((isset($aso_valeurs['modification'])||isset($aso_valeurs['traduction']))&&isset($aso_valeurs['gs_id_site'])) { |
$sortie .= '<p>'.'Identifiant de ce site : '.'<span id="adsi_site_id">'.$aso_valeurs['gs_id_site'].'</span></p>'."\n"; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Création du formulaire |
$form =& new HTML_QuickForm('site', 'post', str_replace('&', '&', $url)); |
$tab_index = 1000; |
$squelette =& $form->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<p class="formulaire_element"><span class="form_label">'."\n". |
'{label}'."\n". |
'<!-- BEGIN required --><span style="color:red; width:5px; margin:0; padding:0;">*</span><!-- END required -->'."\n". |
'</span>'."\n".'{element}'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</p>'."\n"); |
$squelette->setGroupElementTemplate('<p style="display:inline">{element}</p>', 'form_boutons'); |
$squelette->setRequiredNoteTemplate("\n".'<p class="symbole_obligatoire">* : {requiredNote}</p>'."\n"); |
//Note pour les erreurs javascript |
$form->setJsWarnings('Erreur de saisie', 'Veuillez verifier vos informations saisies'); |
// Note de fin de formulaire |
$form->setRequiredNote('Indique les champs obligatoires'); |
// $squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
// $squelette->setElementTemplate( '<li>'."\n". |
// '{label}'."\n". |
// '{element}'."\n". |
// '<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n". |
// '<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
// '</li>'."\n"); |
// $squelette->setGroupElementTemplate('{label}'."\n". |
// '{element}'."\n". |
// '<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n". |
// ' '."\n" |
// , 'double'); |
// $squelette->setRequiredNoteTemplate("\n".'<p><span class="symbole_obligatoire">*</span> {requiredNote}</p>'."\n"); |
// |
$partie_site_debut = '<fieldset>'."\n".'<legend>Configuration du site</legend>'."\n"; |
$form->addElement('html', $partie_site_debut); |
if ($aso_valeurs['modification'] || $aso_valeurs['traduction']) { |
$form->addElement('hidden', 'gs_id_site'); |
$form->addElement('hidden', 'modification'); |
$form->addElement('hidden', 'traduction'); |
} |
$id = 'gs_nom'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100, 'value' => 'nom du site'); |
$label = '<label for="'.$id.'">'.'Nom du site : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule($id, 'Un nom est requis pour le site !', 'required', '', 'client'); |
$id = 'gs_code_alpha'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 20, 'maxlength' => 20, 'value' => 'site_01'); |
$label = '<label for="'.$id.'">'.'Code alphanumérique : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule('gs_code_alpha', 'Un code alphanumérique est requis pour le site !', 'required', '', 'client'); |
$id = 'gs_code_num'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 20, 'maxlength' => 20, 'value' => 1); |
$label = '<label for="'.$id.'">'.'Code numérique : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule('gs_code_num', 'Un code numérique est requis pour le site !', 'required', '', 'client'); |
$id = 'gs_raccourci_clavier'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 1, 'maxlength' => 1, 'value' => 'Z'); |
$label = '<label for="'.$id.'">'.'Raccourci clavier : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
// Requete pour connaitre les identifications dispo |
$requete = 'SELECT * '. |
'FROM gen_site_auth '. |
'WHERE gsa_id_auth != 0'; |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
// Test pour connaître le type d'authentification. |
$type = ''; |
if ($ligne->gsa_ce_type_auth == '1' ) { |
$type = 'Base de données'; |
} else if ($ligne->gsa_ce_type_auth == '2' ) { |
$type = 'LDAP'; |
} |
$aso_options[$ligne->gsa_id_auth] = $ligne->gsa_nom.' ('.$type.')'; |
} |
$resultat->free(); |
$id = 'gs_ce_auth'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Identification : '.'</label>'; |
if (isset($aso_valeurs['gs_ce_auth'])) { |
$s = &$form->createElement('select', $id , $label, "", $aso_attributs); |
$s->loadArray($aso_options,$aso_valeurs['gs_ce_auth']); |
$form->addElement($s); |
} |
else { |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
} |
// En modification nous affichons la liste des squelettes disponibles dans |
// le dossier du site. |
if ($aso_valeurs['modification'] || $aso_valeurs['traduction']) { |
$aso_options = array(); |
if (!GEN_FTP_UTILISE) { |
$chemin_squelettes = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP; |
$dossier = opendir($chemin_squelettes); |
while(($fichier = readdir($dossier)) !== false) { |
if ($fichier != '.' && $fichier != '..') { |
$chemin_type = $chemin_squelettes.GEN_SEP.$fichier; |
if (filetype($chemin_type) != 'dir') { |
$aso_options[$fichier] = $fichier; |
} |
} |
} |
} else { |
// ouverture des squelettes present dans le dossier du site |
// creation de l'objet pear ftp |
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// creation de la connexion |
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// identification |
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE); |
// Gestion des erreurs ftp |
if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) { |
return ('ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'. |
'Serveur : '. GEN_FTP_SERVEUR .'<br />'. |
'Utilisateur : '. GEN_FTP_UTILISATEUR .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
//'Message erreur de connection : '.$ftp_conn->getMessage().'<br />'. |
//'Message erreur de login : '.$ftp_login_result->getMessage()); |
} |
$chemin_squelettes = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP; |
$tab_squelettes = $objet_pear_ftp->ls($chemin_squelettes); |
$aso_options = array(); |
if (PEAR::isError($tab_squelettes)) { |
return ('ERREUR Papyrus admin : impossible d\'accé aux fichiers par ftp.<br />'. |
'Chemin : '. $chemin_squelettes .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'. |
'Message : '. $tab_squelettes->getMessage()); |
} |
for ($i = 0; $i < count($tab_squelettes) ; $i++) { |
if ($tab_squelettes[$i]['is_dir'] == false) { |
$aso_options[$tab_squelettes[$i]['name']] = $tab_squelettes[$i]['name']; |
} |
} |
$objet_pear_ftp->disconnect(); |
} |
// Verification de la presence de squelettes |
if (count($aso_options) == 0) { |
$aso_options['Aucun squelette'] = 'Aucun squelette'; |
} |
$id = 'gs_fichier_squelette'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Squelette : '.'</label>'; |
$s = &$form->createElement('select', $id , $label, "", $aso_attributs); |
$s->loadArray($aso_options,$aso_valeurs['gs_fichier_squelette']); |
$form->addElement($s); |
} |
// Requete pour connaitre les internationalisation dispo |
if (!$aso_valeurs['modification'] && !$aso_valeurs['traduction']) { |
$requete = 'SELECT * '. |
'FROM gen_i18n '; |
} |
else { |
if ($aso_valeurs['traduction']) { |
// Recherche liste des sites deja traduits |
$requete = 'SELECT distinct gs_ce_i18n '. |
'FROM gen_site_relation, gen_site '. |
'WHERE gsr_id_site_01 = ' .$site_ligne['gs_id_site'] .' '. |
'AND gs_id_site = gsr_id_site_02 '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$not_in_langue=''; |
if ( $resultat->numRows() == 0 ) { |
$not_in_langue="gi_id_i18n not in('".$site_ligne['gs_ce_i18n']."')"; |
} |
else { |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$not_in_langue="'".$ligne->gs_ce_i18n."'".",".$not_in_langue; |
$end="'".$ligne->gs_ce_i18n."'"; |
} |
if ($not_in_langue) { |
$not_in_langue="'".$site_ligne['gs_ce_i18n']."'".",".$not_in_langue; |
$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')'; |
} |
else { |
$not_in_langue="gi_id_i18n not in('".$site_ligne['gs_ce_i18n']."')"; |
} |
} |
$resultat->free(); |
$requete = "SELECT * FROM gen_i18n where ".$not_in_langue; |
} |
else |
{ |
$requete = "SELECT * FROM gen_i18n where gi_id_i18n =('".$site_ligne['gs_ce_i18n']."')"; |
} |
} |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$aso_options = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
$aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n; |
} |
$resultat->free(); |
$id = 'gs_ce_i18n'; |
$aso_attributs = array('id' => $id, 'tabindex' => $tab_index++); |
$label = '<label for="'.$id.'">'.'Langue : '.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'defaut'; |
$aso_attributs = array('id' => $id, 'tabindex' => $tab_index++); |
if (isset($aso_valeurs[$id]) && $aso_valeurs[$id] === true) { |
$aso_attributs['checked'] = 'checked'; |
} |
$label = '<label for="'.$id.'">'.'En faire le site par défaut : '.'</label>'; |
$form->addElement('checkbox', $id, $label, null, $aso_attributs); |
// Groupe site externe |
$tab_type = GEN_retournerTableauTypeSiteExterne($db); |
$aso_options = array('0' => 'Aucun'); |
foreach ($tab_type as $cle => $val) { |
$aso_options[$val['id']] = $val['intitule']; |
} |
$id = 'type_site_externe'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++); |
$label = '<label>'.'Type de site externe : '.'</label>'; |
$form->addElement('select', $id, $label, $aso_options, $aso_attributs); |
$id = 'gs_url'; |
$aso_attributs = array('id' => $id, 'tabindex' => $tab_index++,'size' => 35, 'maxlength' => 255, 'value' => 'http://'); |
$label = '<label>'.'URL du site externe : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$partie_site_fin = "\n".'</fieldset>'."\n"; |
$form->addElement('html', $partie_site_fin); |
$partie_entete_debut = '<fieldset>'."\n".'<legend>Entète par défaut des pages du site</legend>'."\n"; |
$form->addElement('html', $partie_entete_debut); |
$id = 'gs_titre'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255, 'value' => ADSI_TITRE_SITE); |
$label = '<label for="'.$id.'">'.ADSI_TITRE_SITE.' : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule('gs_titre', 'Un titre est requis pour le site !', 'required', '', 'client'); |
$id = 'gs_mots_cles'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.'Mots-clés : '.'</label>'; |
$zone_mots_cles = $form->createElement('textarea', $id, $label, $aso_attributs); |
$zone_mots_cles->setValue('mots-clés du site'); |
$form->addElement($zone_mots_cles); |
$form->addRule($id, 'Des mots clés sont requis pour le site !', 'required', '', 'client'); |
$id = 'gs_description'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45); |
$label = '<label for="'.$id.'">'.'Description du contenu : '.'</label>'; |
$zone = $form->createElement('textarea', $id, $label, $aso_attributs); |
$zone->setValue('description du site'); |
$form->addElement($zone); |
$form->addRule($id, 'Une description est requise pour le site !', 'required', '', 'client'); |
$id = 'gs_auteur'; |
$aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255, 'value' => 'auteur du site'); |
$label = '<label for="'.$id.'">'.'Auteur du site : '.'</label>'; |
$form->addElement('text', $id, $label, $aso_attributs); |
$form->addRule('gs_auteur', 'Un auteur est requis pour le site !', 'required', '', 'client'); |
$partie_entete_fin = "\n".'</fieldset>'."\n"; |
$form->addElement('html', $partie_entete_fin); |
if ($aso_valeurs['modification'] || $aso_valeurs['traduction']) { |
// Requete pour connaitre les informations sur l'administrateur ayant fait la dernière modif |
$requete_admin = 'SELECT * '. |
'FROM gen_annuaire '. |
'WHERE ga_id_administrateur = '.$aso_valeurs['gs_ce_admin']; |
$resultat_admin = $db->query($requete_admin); |
if (DB::isError($resultat_admin)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_admin->getMessage(), $requete_admin)); |
} |
$ligne_admin = $resultat_admin->fetchRow(DB_FETCHMODE_OBJECT); |
if (isset($ligne_admin)) { |
$info_admin = '<p class="info">Site créé le '.$aso_valeurs['gs_date_creation'].'. Dernière modification par '. |
$ligne_admin->ga_prenom.' '.$ligne_admin->ga_nom.'.'.'</p>'; |
$form->addElement('html', $info_admin); |
$form->addElement('hidden', 'gs_ce_admin'); |
$form->addElement('hidden', 'gs_date_creation'); |
} |
// Titre de la page: |
if ($aso_valeurs['modification']) { |
$titre = 'Modifier un site'; |
$bouton_validation = '<input type="submit" id="site_modifier" name="site_modifier" value="Enregistrer" />'; |
} |
else { |
$titre = 'Traduire un site'; |
$bouton_validation = '<input type="submit" id="site_traduire" name="site_traduire" value="Enregistrer" />'; |
} |
} else { |
// Titre de la page: |
$titre = 'Ajouter un site'; |
// Bouton validant le formulaire |
$bouton_validation = '<input type="submit" id="site_enregistrer" name="site_enregistrer" value="Enregistrer" />'; |
} |
$bouton_annuler = '<input type="submit" id="form_annuler" name="form_annuler" value="Annuler" />'; |
$bouton_effacer = '<input type="reset" id="effacer" name="effacer" value="Effacer" />'; |
$boutons = '<p>'."\n". |
$bouton_validation."\n". |
$bouton_annuler."\n". |
$bouton_effacer."\n". |
'</p>'."\n"; |
$form->addElement('html', $boutons); |
// Instanciation des valeurs par defaut du formulaire |
$form->setDefaults($aso_valeurs); |
// Javascript pour la validation cote client |
$regles_javascript = $form->getValidationScript(); |
// Note de fin de formulaire |
$form->setRequiredNote('Indique les champs obligatoires'); |
$sortie .= $form->toHTML()."\n"; |
// Construction de la page. |
return ADMIN_contruirePage($titre, $sortie, $message); |
} |
/** Fonction ADMIN_validerFormAjouterSite() - Valide les donnees issues du formulaire pour gen_site. |
* |
* Cette fonction valide les donnees a ajouter dans la table gen_site. |
* |
* @param string l'objet pear de connexion a la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @return string retourne les messages d'erreurs sinon rien. |
*/ |
function ADMIN_validerFormSite(&$db, $aso_valeurs) |
{ |
$message = ''; |
// Validation des donnees du formulaire |
if (empty($aso_valeurs['gs_nom'])) { |
$message .= '<p class="pap_erreur">Le champ "Nom" ne doit pas être vide.</p>'; |
} |
if (empty($aso_valeurs['gs_code_alpha'])) { |
$message .= '<p class="pap_erreur">Le champ "Code alphanumérique" ne doit pas être vide.</p>'; |
} |
if ($aso_valeurs['gs_code_num'] == '') { |
// Note: ne pas utilisez empty() car si on veut saisir 0, cela est considéré comme vide! |
$message .= '<p class="pap_erreur">Le champ "Code numérique" ne doit pas être vide.</p>'; |
} |
if (preg_match('/^[0-9]+$/',$aso_valeurs['gs_code_num']) == 0) { |
$message .= '<p class="pap_erreur">Le champ "Code numérique" doit contenir un nombre.</p>'; |
} |
// Requete pour verifier l'absence du code numerique et alphanumerique de la table gen_site |
// en mode creation uniquement ! |
if (!isset($aso_valeurs['site_modifier'])) $aso_valeurs['site_modifier']=0; |
if (!isset($aso_valeurs['site_traduire'])) $aso_valeurs['site_traduire']=0; |
if (@!$aso_valeurs['site_modifier'] && @!$aso_valeurs['site_traduire'] ) { |
$requete = 'SELECT gs_code_alpha, gs_code_num '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = gs_id_site '. |
'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe" |
$requete .= (isset($aso_valeurs['gs_id_site'])) ? 'AND gs_id_site != '.$aso_valeurs['gs_id_site'] : ''; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) { |
if ($ligne->gs_code_num == $aso_valeurs['gs_code_num']) { |
$message .= '<p class="pap_erreur">La valeur "'.$aso_valeurs['gs_code_num'].'" pour le champ "Code numérique" existe déjà.</p>'; |
} |
if ($ligne->gs_code_alpha == $aso_valeurs['gs_code_alpha']) { |
$message .= '<p class="pap_erreur">La valeur "'.$aso_valeurs['gs_code_alpha'].'" pour le champ "Code alphanumérique" existe déjà.</p>'; |
} |
} |
$resultat->free(); |
} |
else { |
// Refuser si plus de traduction disponible ! |
} |
if (empty($aso_valeurs['gs_titre'])) { |
$message .= '<p class="pap_erreur">Le champ "Titre" ne doit pas être vide.</p>'; |
} |
if (empty($aso_valeurs['gs_mots_cles'])) { |
$message .= '<p class="pap_erreur">Le champ "Mots clés" ne doit pas être vide.</p>'; |
} |
if (empty($aso_valeurs['gs_description'])) { |
$message .= '<p class="pap_erreur">Le champ "Description" ne doit pas être vide.</p>'; |
} |
if (empty($aso_valeurs['gs_auteur'])) { |
$message .= '<p class="pap_erreur">Le champ "Auteur" ne doit pas être vide.</p>'; |
} |
if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 1 && (empty($aso_valeurs['gs_url']) || $aso_valeurs['gs_url'] == 'http://')) { |
$message .= '<p class="pap_erreur">'.'Vous avez désigné ce site comme étant externe. Il est nécessaire de saisir son URL!'.'</p>'; |
} |
if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 0 && (!empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://')) { |
$message .= '<p class="pap_erreur">'.'Vous avez saisie une l\'url : '.$aso_valeurs['gs_url'].'<br />'. |
'Vous conscidérez donc ce site comme étant externe. Il est nécessaire de cocher la case "oui"!'.'</p>'; |
} |
return $message; |
} |
/** Fonction ADMIN_enregistrerSite() - Ajoute un site à Papyrus. |
* |
* Cette fonction ajoute le site à Papyrus, c'est à dire : |
* - 1. Création des répertoire du projet en fonction du nom et des sous-répertoires. |
* - 2. Insertion d'une ligne dans la table "gen_site". |
* - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables liées si nécessaire. |
* |
* @param string l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @param int identifiant de l'administrateur réalisant cette création. |
* @return string retourne un message en cas de succès ou d'échec. |
*/ |
function ADMIN_enregistrerSite(&$db, $aso_valeurs, $id_admin) |
{ |
// Nous verifions si nous avons a faire a un site externe. |
$id_type_site = '102';// par defaut on considère que c'est un site "principal" |
if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') { |
$id_type_site = '103';// c'est un site "externe" |
} |
// Ajout des repertoires des sites "principaux" soit par manipulation de fichier soit par FTP en fonction de la constante definie |
// par l'utilisateur dans le fichier de config avancee. |
$tab_rep_langue = array(GEN_DOSSIER_GENERIQUE, $aso_valeurs['gs_ce_i18n']); |
$tab_rep_site = array( GEN_DOSSIER_IMAGE, |
GEN_DOSSIER_STYLE, |
GEN_DOSSIER_SCRIPT, |
GEN_DOSSIER_SQUELETTE, |
GEN_DOSSIER_DOC); |
if (!GEN_FTP_UTILISE && $id_type_site != '103') { |
foreach ($tab_rep_langue as $nom_rep_langue) { |
foreach ($tab_rep_site as $nom_rep_site) { |
$chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$nom_rep_langue.GEN_SEP.$nom_rep_site; |
$vieux_umask = umask(0); |
$resultat = creerDossier($chemin_repertoire, 0777, GEN_SEP); |
umask($vieux_umask); |
if ($resultat == false) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} |
} |
$chemin_squelette_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$chemin_squelette_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'. |
'Fichier : '. $chemin_squelette_site .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_style_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$chemin_style_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
if (!copy($chemin_style_defaut, $chemin_style_site)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par défaut.<br />'. |
'Fichier : '. $chemin_style_site .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} else if (GEN_FTP_UTILISE && $id_type_site != '103') { // 103 est le type "site externe" |
// Creation d'une connection ftp avec Net_FTP de PEAR |
// voir http://pear.php.net/manual/fr/package.networking.net-ftp.php |
// creation de l'objet pear ftp |
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// creation de la connexion |
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// identification |
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE); |
// Gestion des erreurs ftp |
if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'. |
'Serveur : '. PAP_FTP_SERVEUR .'<br />'. |
'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'. |
'Erreur connexion : '.$ftp_conn->getMessage().'<br />'. |
'Erreur login : '.$ftp_login_result->getMessage().'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /><p>'; |
return $message; |
} |
$resultat = $objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ; |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'. |
'Répertoire : '. PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'] .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Informations de debogage : '.$resultat->getDebugInfo().'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
//$objet_pear_ftp->cd(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ; |
foreach ($tab_rep_langue as $nom_rep_langue) { |
$objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue) ; |
foreach ($tab_rep_site as $nom_rep_site) { |
$chemin_repertoire = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue.GEN_SEP.$nom_rep_site; |
$resultat = $objet_pear_ftp->mkdir($chemin_repertoire) ; |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Informations de debogage : '.$resultat->getDebugInfo().'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} |
} |
$chemin_squelette_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$chemin_squelette_site = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$resultat = $objet_pear_ftp->put($chemin_squelette_defaut, $chemin_squelette_site, true, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le squelette defaut par ftp.<br />'. |
'Fichier origine : '. $chemin_squelette_defaut .'<br />'. |
'Fichier copié : '. $chemin_squelette_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_style_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$chemin_style_site = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$resultat = $objet_pear_ftp->put($chemin_style_defaut, $chemin_style_site, true, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier les styles defaut par ftp.<br />'. |
'Fichier origine : '. $chemin_style_defaut .'<br />'. |
'Fichier copié : '. $chemin_style_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_image_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_IMAGE.GEN_SEP; |
$chemin_image_site = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP; |
$resultat = $objet_pear_ftp->putRecursive($chemin_image_defaut, $chemin_image_site, false, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le dossier images par ftp.<br />'. |
'Fichier origine : '. $chemin_image_defaut .'<br />'. |
'Fichier copié : '. $chemin_image_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$objet_pear_ftp->disconnect(); |
} |
$id_site = SQL_obtenirNouveauId($db, 'gen_site','gs_id_site'); |
if ($id_site == false) { |
$message = '<p class="erreur"> ERREUR papyrus admin : impossible de récupérer un identifiant pour la table gen_site.<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
// Modification de la requete si nous avons a faire a un site externe. |
$requete_complement = ', gs_url = NULL'; |
if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') { |
$requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'"'; |
} |
// Requete d'insertion des infos d'un site dans gen_site |
$requete = 'INSERT INTO gen_site '. |
'SET gs_id_site = '.$id_site.', '. |
'gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '. |
'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '. |
'gs_fichier_squelette = "defaut.html", '. |
'gs_code_num = '.$aso_valeurs['gs_code_num'].', '. |
'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '. |
'gs_nom = "'.$aso_valeurs['gs_nom'].'", '. |
'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '. |
'gs_titre = "'.$aso_valeurs['gs_titre'].'", '. |
'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '. |
'gs_description = "'.$aso_valeurs['gs_description'].'", '. |
'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '. |
'gs_date_creation = "'.date('Y-m-d H:i:s').'", '. |
'gs_ce_admin = '.$id_admin. |
$requete_complement; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
// Recherche du nouveau numero d'ordre de ce site "principal" ou "externe" |
$requete = 'SELECT MAX(gsr_ordre) AS max_ordre '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouvel_ordre = $ligne->max_ordre + 1; |
// Requete d'insertion des relations dans gen_site_relation |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = '.$id_type_site.', '. |
'gsr_ordre = '.$nouvel_ordre; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
// Gestion du site par défaut |
if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) { |
$requete_supr_defaut = 'DELETE FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur = 101 ';// 101 = site par "defaut" |
$resultat_supr_defaut = $db->query($requete_supr_defaut); |
if (DB::isError($resultat_supr_defaut)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut)); |
} |
// Requete d'insertion de la relations site par defaut |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = 101, '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
// Gestion des sites externes |
if ($id_type_site == '103') { |
// Requete d'insertion des relations dans gen_site_relation |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
$message = '<p class="pap_info">'.'Succés de l\'ajout du site.'.'</p>'; |
return $message; |
} |
/** Fonction ADMIN_traduireSite() - Traduire un site papyrus |
* |
* Cette fonction traduit un site a Papyrus, c'est a dire : |
* - 1. Creation des repertoire du projet en fonction du nom et des sous-repertoires. |
* - 2. Insertion d'une ligne dans la table "gen_site". |
* - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables liees si necessaire. |
* |
* @param string l'objet pear de connexion a la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @param int identifiant de l'administrateur realisant cette création. |
* @return string retourne un message en cas de succes ou d'echec. |
*/ |
function ADMIN_traduireSite(&$db, $aso_valeurs, $id_admin) |
{ |
// Nous verifions si nous avons a faire a un site externe. |
$id_type_site = '102';// par defaut on considere que c'est un site "principal" |
if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') { |
$id_type_site = '103';// c'est un site "externe" |
} |
// Ajout des repertoires des sites "principaux" soit par manipulation de fichier soit par FTP en fonction de la constante definie |
// par l'utilisateur dans le fichier de config avancee. |
$tab_rep_langue = array(GEN_DOSSIER_GENERIQUE, $aso_valeurs['gs_ce_i18n']); |
$tab_rep_site = array( GEN_DOSSIER_IMAGE, |
GEN_DOSSIER_STYLE, |
GEN_DOSSIER_SCRIPT, |
GEN_DOSSIER_SQUELETTE, |
GEN_DOSSIER_DOC); |
if (!GEN_FTP_UTILISE && $id_type_site != '103') { |
foreach ($tab_rep_langue as $nom_rep_langue) { |
foreach ($tab_rep_site as $nom_rep_site) { |
$chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$nom_rep_langue.GEN_SEP.$nom_rep_site; |
$vieux_umask = umask(0); |
$resultat = creerDossier($chemin_repertoire, 0777, GEN_SEP); |
umask($vieux_umask); |
if ($resultat == false) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} |
} |
$chemin_squelette_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$chemin_squelette_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'. |
'Fichier : '. $chemin_squelette_site .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_style_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$chemin_style_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
if (!copy($chemin_style_defaut, $chemin_style_site)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par défaut.<br />'. |
'Fichier : '. $chemin_style_site .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_image_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_IMAGE.GEN_SEP; |
$chemin_image_site = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP; |
if (!copy($chemin_image_defaut, $chemin_image_site)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer les fichhiers image par defaut.<br />'. |
'Fichier : '. $chemin_style_site .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} else if (GEN_FTP_UTILISE && $id_type_site != '103') { // 103 est le type "site externe" |
// Création d'une connection ftp avec Net_FTP de PEAR |
// voir http://pear.php.net/manual/fr/package.networking.net-ftp.php |
// création de l'objet pear ftp |
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// création de la connexion |
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// identification |
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE); |
// Gestion des erreurs ftp |
if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'. |
'Serveur : '. PAP_FTP_SERVEUR .'<br />'. |
'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'. |
'Erreur connexion : '.$ftp_conn->getMessage().'<br />'. |
'Erreur login : '.$ftp_login_result->getMessage().'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /><p>'; |
return $message; |
} |
$objet_pear_ftp->mkdir(PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ; |
//$objet_pear_ftp->cd(PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ; |
foreach ($tab_rep_langue as $nom_rep_langue) { |
$objet_pear_ftp->mkdir(PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue) ; |
foreach ($tab_rep_site as $nom_rep_site) { |
$chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue.GEN_SEP.$nom_rep_site; |
$resultat = $objet_pear_ftp->mkdir($chemin_repertoire) ; |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} |
} |
$chemin_squelette_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$chemin_squelette_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE; |
$resultat = $objet_pear_ftp->put($chemin_squelette_defaut, $chemin_squelette_site, true, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le squelette defaut par ftp.<br />'. |
'Fichier origine : '. $chemin_squelette_defaut .'<br />'. |
'Fichier copié : '. $chemin_squelette_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_style_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$chemin_style_site = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE; |
$resultat = $objet_pear_ftp->put($chemin_style_defaut, $chemin_style_site, true, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier les styles defaut par ftp.<br />'. |
'Fichier origine : '. $chemin_style_defaut .'<br />'. |
'Fichier copié : '. $chemin_style_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$chemin_image_defaut = PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP. |
GEN_DOSSIER_IMAGE.GEN_SEP; |
$chemin_image_site = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP. |
$aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP; |
$resultat = $objet_pear_ftp->putRecursive($chemin_image_defaut, $chemin_image_site, false, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le dossier images par ftp.<br />'. |
'Fichier origine : '. $chemin_image_defaut .'<br />'. |
'Fichier copié : '. $chemin_image_site .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
$objet_pear_ftp->disconnect(); |
} |
$id_site = SQL_obtenirNouveauId($db, 'gen_site','gs_id_site'); |
if ($id_site == false) { |
$message = '<p class="erreur"> ERREUR Papyrus admin : impossible de récupérer un identifiant pour la table gen_site.<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
// Modification de la requete si nous avons à faire à un site externe. |
$requete_complement = ', gs_url = NULL'; |
if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') { |
$requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'"'; |
} |
// Requete d'insertion des infos d'un site dans gen_site |
$requete = 'INSERT INTO gen_site '. |
'SET gs_id_site = '.$id_site.', '. |
'gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '. |
'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '. |
'gs_fichier_squelette = "defaut.html", '. |
'gs_code_num = '.$aso_valeurs['gs_code_num'].', '. |
'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '. |
'gs_nom = "'.$aso_valeurs['gs_nom'].'", '. |
'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '. |
'gs_titre = "'.$aso_valeurs['gs_titre'].'", '. |
'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '. |
'gs_description = "'.$aso_valeurs['gs_description'].'", '. |
'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '. |
'gs_date_creation = "'.date('Y-m-d H:i:s').'", '. |
'gs_ce_admin = '.$id_admin. |
$requete_complement; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
// Recherche du nouveau numéro d'ordre de ce site "principal" ou "externe" |
$requete = 'SELECT MAX(gsr_ordre) AS max_ordre '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouvel_ordre = $ligne->max_ordre + 1; |
// Requete d'insertion des relations dans gen_site_relation |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = '.$id_type_site.', '. |
'gsr_ordre = '.$nouvel_ordre; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
// Traduction : Requete d'insertion des relations dans gen_site_relation |
$requete = 'SELECT MAX(gsr_ordre) AS max_ordre '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = ' .$aso_valeurs['gs_id_site'] .' '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
if ( $resultat->numRows() == 0 ) { |
$nouvel_ordre = 1; |
} |
else { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$nouvel_ordre = $ligne->max_ordre + 1; |
} |
// 1 : insertion information traduction pere (si inexistant) |
$requete = 'SELECT * '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = ' .$aso_valeurs['gs_id_site'] .' '. |
'AND gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
if ( $resultat->numRows() == 0 ) { |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '. $aso_valeurs['gs_id_site'].', '. |
'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_valeur = 1, '. // 1 = "avoir traduction" |
'gsr_ordre = 1 '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
$nouvel_ordre = 2; |
} |
// 2 : insertion information traduction site en cours (si inexistant ?) (et la mise a jour, c'est ailleurs |
// dans les mises à jour |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '. $aso_valeurs['gs_id_site'].', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = 1, '. // 1 = "avoir traduction" |
'gsr_ordre = '.$nouvel_ordre; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
// Gestion du site par défaut |
if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) { |
$requete_supr_defaut = 'DELETE FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur = 101 ';// 101 = site par "defaut" |
$resultat_supr_defaut = $db->query($requete_supr_defaut); |
if (DB::isError($resultat_supr_defaut)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut)); |
} |
// Requete d'insertion de la relations site par défaut |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = 101, '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
// Gestion des sites externes |
if ($id_type_site == '103') { |
// Requete d'insertion des relations dans gen_site_relation |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$id_site.', '. |
'gsr_id_site_02 = '.$id_site.', '. |
'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
$message = '<p class="pap_info">'.'Succés de l\'ajout du site.'.'</p>'; |
return $message; |
} |
/** Fonction ADMIN_modifierSite() - Modifie un site de Papyrus. |
* |
* Cette fonction modifie un site géré par Papyrus. |
* Il faudrait aussi pouvoir renomer le dossier du site si le code alpha change. |
* |
* @param string l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @param int identifiant de l'administrateur réalisant cette modification. |
* @return string retourne un message en cas de succès ou d'échec. |
*/ |
function ADMIN_modifierSite(&$db, $aso_valeurs, $id_admin) |
{ |
// Initialisation de variables |
$message_complement = ''; |
// Récupération de l'ancien code alphanumérique |
$requete = 'SELECT gs_code_alpha '. |
'FROM gen_site '. |
'WHERE gs_id_site = '.$aso_valeurs['gs_id_site']; |
$ancien_code_alphnum = $db->getOne($requete); |
if (DB::isError($ancien_code_alphnum)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $ancien_code_alphnum->getMessage(), $requete) ); |
} |
// Nous vérifions si nous avons à faire à un site externe. |
$id_type_site = '102';// par défaut on considère que c'est un site "principal" |
$requete_complement = ', gs_url = NULL '; |
if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') { |
$requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'" '; |
$id_type_site = '103';// c'est un site "externe" |
} |
// Si le code alphanumérique à changé et que nous n'avons pas à faire à un site externe. |
if ($aso_valeurs['gs_code_alpha'] != $ancien_code_alphnum && $id_type_site != 103) { |
if (!GEN_FTP_UTILISE) { |
$chemin_site_ancien = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP; |
$chemin_site_nouveau = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP; |
if (!rename($chemin_site_ancien, $chemin_site_nouveau)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de changer le nom du dossier du site.<br />'. |
'Ancien nom : '. $chemin_site_ancien .'<br />'. |
'Nouveau nom : '. $chemin_site_nouveau .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} else { |
$chemin_site_ancien = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP; |
$chemin_site_nouveau = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP; |
// Création d'une connection ftp avec Net_FTP de PEAR |
// voir http://pear.php.net/manual/fr/package.networking.net-ftp.php |
// création de l'objet pear ftp |
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// création de la connexion |
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// identification |
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE); |
// Gestion des erreurs ftp |
if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'. |
'Serveur : '. PAP_FTP_SERVEUR .'<br />'. |
'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'. |
'Erreur connexion : '.$ftp_conn->getMessage().'<br />'. |
'Erreur login : '.$ftp_login_result->getMessage().'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /><p>'; |
return $message; |
} |
$resultat = $objet_pear_ftp->putRecursive($chemin_site_ancien, $chemin_site_nouveau, false, FTP_BINARY); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier l\'ancien dossier du site.<br />'. |
'Dossier site ancien : '. $chemin_site_ancien .'<br />'. |
'Dossier site nouveau : '. $chemin_site_nouveau .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
// On utilise la racine FTP pour rm |
$chemin_site_ancien = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP; |
// Changement du niveau d'erreur pour éviter les Notices PHP dues à Net_FTP |
error_reporting(E_PARSE); |
$resultat = $objet_pear_ftp->rm($chemin_site_ancien, true); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer l\'ancien dossier du site.<br />'. |
'Dossier site ancien : '. $chemin_site_ancien .'<br />'. |
'Erreur origine : '. $resultat->getMessage() .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
// Retour au niveau d'erreur définit dans le fichier de config de Papyrus |
error_reporting(GEN_DEBOGAGE_NIVEAU); |
$objet_pear_ftp->disconnect(); |
} |
} |
// Requete de mise à jour des infos d'un site dans gen_site |
$requete = 'UPDATE gen_site '. |
'SET gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '. |
'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '. |
'gs_fichier_squelette = "'.$aso_valeurs['gs_fichier_squelette'].'", '. |
'gs_code_num = '.$aso_valeurs['gs_code_num'].', '. |
'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '. |
'gs_nom = "'.$aso_valeurs['gs_nom'].'", '. |
'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '. |
'gs_titre = "'.$aso_valeurs['gs_titre'].'", '. |
'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '. |
'gs_description = "'.$aso_valeurs['gs_description'].'", '. |
'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '. |
'gs_date_creation = "'.$aso_valeurs['gs_date_creation'].'", '. |
'gs_ce_admin = '.$id_admin.' '. |
$requete_complement. |
'WHERE gs_id_site = '.$aso_valeurs['gs_id_site']; |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
// Gestion du site externe |
if ($id_type_site == 103) { |
// Vérification pour voir si nous avons à faire à une transformation d'un site "principal" en site "externe" |
$requete = 'SELECT COUNT(gsr_id_site_01) AS nbre_relation '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '. |
'AND gsr_id_valeur = 102 ';// 102 = site "principal" |
$nbre_relation = $db->getOne($requete); |
if (DB::isError($nbre_relation)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $nbre_relation->getMessage(), $requete) ); |
} |
// Nous supprimons l'ancienne relation si nécessaire |
if ($nbre_relation >= 1) { |
$requete_supr_ext = 'DELETE FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '. |
'AND gsr_id_valeur = 102 ';// 102 = site "principal" |
$resultat_supr_ext = $db->query($requete_supr_ext); |
if (DB::isError($resultat_supr_ext)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_ext->getMessage(), $requete_supr_ext)); |
} |
$message_complement = 'Le site "principal" a été transformé en site "externe". Si nécessaire, veuillez '. |
'supprimer manuellement par FTP, le dossier contenant les fichiers de ce site sur '. |
'le serveur!'; |
} |
// Vérification pour voir si le site est déjà "externe" |
$requete = 'SELECT COUNT(gsr_id_site_01) AS nbre_relation '. |
'FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '. |
'AND gsr_id_valeur = 103 ';// 103 = site "externe" |
$nbre_relation = $db->getOne($requete); |
if (DB::isError($nbre_relation)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $nbre_relation->getMessage(), $requete) ); |
} |
if ($nbre_relation == 0) { |
// Requete d'insertion de la relations site "externe" |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_valeur = '.$id_type_site.', '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
// Ajout du type de site externe |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
// Gestion du site par défaut |
if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) { |
$requete_supr_defaut = 'DELETE FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = gsr_id_site_02 '. |
'AND gsr_id_valeur = 101 ';// 101 = site par "defaut" |
$resultat_supr_defaut = $db->query($requete_supr_defaut); |
if (DB::isError($resultat_supr_defaut)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut)); |
} |
// Requete d'insertion de la relations site par défaut |
$requete = 'INSERT INTO gen_site_relation '. |
'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '. |
'gsr_id_valeur = 101, '. |
'gsr_ordre = NULL '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
} |
$message = '<p class="pap_info">'.'Succès de la modification du site.'.'</p>'; |
$message .= '<p class="pap_info">'.$message_complement.'</p>'; |
return $message; |
} |
/** Fonction ADMIN_supprimerSite() - Ajoute un site à Papyrus. |
* |
* Cette fonction ajoute le site à Papyrus, c'est à dire : |
* - 1. Création des répertoire du projet en fonction du nom et des sous-répertoires. |
* - 2. Insertion d'une ligne dans la table "gen_site". |
* - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables liées si nécessaire. |
* |
* @param string l'objet pear de connexion à la base de données. |
* @param string le tableau contenant les valeurs du formulaire. |
* @param int identifiant de l'administrateur réalisant cette création. |
* @return string retourne un message en cas de succès ou d'échec. |
*/ |
function ADMIN_supprimerSite(&$db, $aso_valeurs) |
{ |
// Recherche du coda alpha du site principal afin de pouvoir détruire ses répertoires |
$requete = 'SELECT gs_code_alpha '. |
'FROM gen_site '. |
'WHERE gs_id_site = '.$aso_valeurs['form_sites_id_site']; |
$code_alpha_site_principal = $db->getOne($requete); |
if (DB::isError($code_alpha_site_principal)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $code_alpha_site_principal->getMessage(), $requete)); |
} |
// Nous vérifions que le site n'a pas le code alphanum correspondant au site par défaut d'administration (admin). |
if ($code_alpha_site_principal == GEN_SITE_DEFAUT) { |
$message = '<p class="pap_erreur">Si vous voulez vraiment supprimer le site d\'administration par défaut de '. |
'Papyrus, veuillez commencer par changer la valeur de son code alphanumérique. Vous pourrez '. |
'ensuite le supprimer via cette interface.</p>'; |
return $message; |
} |
// Recherche des différents sites liés à celui que l'on veut détruire |
// Cela comprend le site à détruire lui même car il possède la relations |
// sur lui meme "site principale". |
$requete = 'SELECT gs_id_site '. |
'FROM gen_site, gen_site_relation '. |
'WHERE gsr_id_site_01 = '.$aso_valeurs['form_sites_id_site'].' '. |
'AND gsr_id_site_02 = gs_id_site '; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)); |
} |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
// Requete de suppression des sites liés dans gen_site |
$requete_supr_site = 'DELETE FROM gen_site '. |
'WHERE gs_id_site = '.$ligne->gs_id_site; |
$resultat_supr_site = $db->query($requete_supr_site); |
if (DB::isError($resultat_supr_site)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_site->getMessage(), $requete_supr_site)); |
} |
// Requete de suppression des relations des sites à détruire |
$requete_supr_site_relation = 'DELETE FROM gen_site_relation '. |
'WHERE gsr_id_site_01 = '.$ligne->gs_id_site; |
$resultat_supr_site_relation = $db->query($requete_supr_site_relation); |
if (DB::isError($resultat_supr_site_relation)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_site_relation->getMessage(), $requete_supr_site_relation)); |
} |
// Recherche des différents menus liés au site à détruire |
$requete_menu = 'SELECT gm_id_menu '. |
'FROM gen_menu '. |
'WHERE gm_ce_site = '.$ligne->gs_id_site; |
$resultat_menu = $db->query($requete_menu) ; |
if (DB::isError($resultat_menu)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete_menu)); |
} |
while ($ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT)) { |
// Requete de suppression des des menus |
$requete_supr_menu = 'DELETE FROM gen_menu '. |
'WHERE gm_id_menu = '.$ligne_menu->gm_id_menu; |
$resultat_supr_menu = $db->query($requete_supr_menu); |
if (DB::isError($resultat_supr_menu)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu->getMessage(), $requete_supr_menu)); |
} |
// Requete de suppression des relations des menus |
$requete_supr_menu_relation = 'DELETE FROM gen_menu_relation '. |
'WHERE gmr_id_menu_01 = '.$ligne_menu->gm_id_menu; |
$resultat_supr_menu_relation = $db->query($requete_supr_menu_relation); |
if (DB::isError($resultat_supr_menu_relation)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_relation->getMessage(), $requete_supr_menu_relation)); |
} |
// Requete de suppression des contenus des menus |
$requete_supr_menu_contenu = 'DELETE FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$ligne_menu->gm_id_menu; |
$resultat_supr_menu_contenu = $db->query($requete_supr_menu_contenu); |
if (DB::isError($resultat_supr_menu_contenu)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_contenu->getMessage(), $requete_supr_menu_contenu)); |
} |
// Requete de suppression des ulr alternatives des menus |
$requete_supr_menu_url_alt = 'DELETE FROM gen_menu_url_alternative '. |
'WHERE gmua_ce_menu = '.$ligne_menu->gm_id_menu; |
$resultat_supr_menu_url_alt = $db->query($requete_supr_menu_url_alt); |
if (DB::isError($resultat_supr_menu_url_alt)) { |
die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_url_alt->getMessage(), $requete_supr_menu_url_alt)); |
} |
} |
$resultat_menu->free(); |
} |
$resultat->free(); |
// Suppression des répertoires du site |
if (!GEN_FTP_UTILISE) { |
$chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal; |
$resultat = supprimerDossier($chemin_repertoire, GEN_SEP); |
if (!$resultat) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire.<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} else { |
// Création d'une connection ftp avec Net_FTP de PEAR |
// voir http://pear.php.net/manual/fr/package.networking.net-ftp.php |
// création de l'objet pear ftp |
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// création de la connexion |
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT); |
// identification |
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE); |
// Gestion des erreurs ftp |
if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'. |
'Erreur connexion : '.$ftp_conn->getMessage().'<br />'. |
'Erreur login : '.$ftp_login_result->getMessage().'<br />'. |
'Serveur : '. PAP_FTP_SERVEUR .'<br />'. |
'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /><p>'; |
return $message; |
} |
// Changement du niveau d'erreur pour éviter les Notices PHP dues à Net_FTP |
error_reporting(E_PARSE); |
$chemin_repertoire = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal.'/'; |
if ($code_alpha_site_principal!='') { |
$resultat = $objet_pear_ftp->rm($chemin_repertoire, true); |
if (PEAR::isError($resultat)) { |
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire par ftp.<br />'. |
'Erreur ftp : '.$resultat->getMessage().'<br />'. |
'Répertoire : '. $chemin_repertoire .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br /></p>'; |
return $message; |
} |
} |
$objet_pear_ftp->disconnect(); |
// Retour au niveau d'erreur définit dans le fichier de config de Papyrus |
error_reporting(GEN_DEBOGAGE_NIVEAU); |
} |
$message = '<p class="pap_info">Succés de la suppression du site.</p>'; |
return $message; |
} |
function ADMIN_verifier_traduction_possible(&$db, $aso_valeurs) { |
// Traduction d'un site principal uniquement : |
$requete = 'SELECT gsr_id_site_01, gs_ce_i18n '. |
'FROM gen_site_relation, gen_site '. |
'WHERE gsr_id_site_02 = '.$aso_valeurs['form_sites_id_site'].' '. |
'AND gs_id_site = gsr_id_site_01 '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
if ( $resultat->numRows() == 0 ) { |
$site_id = $aso_valeurs['form_sites_id_site']; |
} |
else { |
$ligne_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$site_id = $ligne_site->gsr_id_site_01; |
} |
$requete = 'SELECT distinct gs_ce_i18n '. |
'FROM gen_site_relation, gen_site '. |
'WHERE gsr_id_site_01 = ' . $site_id .' '. |
'AND gs_id_site = gsr_id_site_02 '. |
'AND gsr_id_valeur =1 '; // 1 = "avoir traduction" |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$not_in_langue=''; |
if ( $resultat->numRows() == 0 ) { |
$not_in_langue="gi_id_i18n not in('".$ligne_site->gs_ce_i18n."')"; |
} |
else { |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$not_in_langue="'".$ligne->gs_ce_i18n."'".",".$not_in_langue; |
$end="'".$ligne->gs_ce_i18n."'"; |
} |
$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')'; |
} |
$resultat->free(); |
$requete = "SELECT * FROM gen_i18n where ".$not_in_langue; |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ); |
} |
$retour = $resultat->numRows(); |
$resultat->free(); |
$message=''; |
if ($retour == 0) { |
$message = '<p class="pap_erreur">Plus de traduction possible pour ce site </p>'; |
} |
return $message; |
} |
// +- Fin du code source --------------------------------------------------------------------------------+ |
/* |
* $Log: not supported by cvs2svn $ |
* Revision 1.41 2007-10-21 16:44:37 ddelon |
* Pb Pap chemin |
* |
* Revision 1.40 2007-10-04 12:57:37 ddelon |
* retablisssement chemin ftp dans traduction site |
* |
* Revision 1.39 2007-06-26 14:18:53 florian |
* amélioration des formulaires des différentes applis de l'interface d'administration afin de les simplifier |
* |
* Revision 1.38 2007-06-25 12:15:06 alexandre_tb |
* merge from narmer |
* |
* Revision 1.37 2007/04/24 13:27:57 alexandre_tb |
* encodage |
* |
* Revision 1.36 2007/04/20 13:48:31 alexandre_tb |
* nettoyage accent |
* |
* Revision 1.35 2007/04/20 10:42:42 neiluj |
* suite oubli, fix des derniers bugs FTP |
* |
* Revision 1.34 2007/04/20 09:21:41 neiluj |
* correction bug ftp création/suppression/modification de site |
* (changé PAP_FTP_RACINE en PAP_CHEMIN_RACINE) |
* voir compatibilité chroot() du serveur FTP) |
* |
* Revision 1.33 2007/04/19 15:34:35 neiluj |
* préparration release (livraison) "Narmer" - v0.25 |
* |
* Revision 1.32 2006/10/16 15:49:06 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.31 2006/09/12 09:54:02 ddelon |
* Affichage des identifications disponibles lors de la création d'un site. Un bug faisait que l'affichage de l'identification par défaut ne fonctionnait plus en creation. |
* |
* Revision 1.30 2006/07/19 13:57:35 ddelon |
* Bug suppression de site |
* |
* Revision 1.29 2006/03/23 20:24:58 ddelon |
* *** empty log message *** |
* |
* Revision 1.28 2006/03/15 23:44:19 ddelon |
* Gestion site |
* |
* Revision 1.27 2006/03/15 23:35:25 ddelon |
* Gestion site |
* |
* Revision 1.26 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.25.2.2 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.25.2.1 2006/01/19 21:26:20 ddelon |
* Multilinguisme site + bug ftp |
* |
* Revision 1.25 2005/10/17 13:48:59 jp_milcent |
* Ajout d'un espace après le texte "Dernière modification par". |
* |
* Revision 1.24 2005/09/23 14:32:54 florian |
* compatibilité XHTML + correction interface |
* |
* Revision 1.23 2005/09/20 17:01:22 ddelon |
* php5 et bugs divers |
* |
* Revision 1.22 2005/05/27 16:06:16 jpm |
* Gestion des infos sur l'admin modifiant les infos. |
* |
* Revision 1.21 2005/04/08 13:29:04 jpm |
* Utiliation de références. |
* Correction du double & dans les urls du formulaire. |
* |
* Revision 1.20 2005/03/08 11:17:47 jpm |
* Suppression de l'inclusion d'un fichier inutile. |
* |
* Revision 1.19 2005/02/28 11:07:00 jpm |
* Modification des auteurs. |
* |
* Revision 1.18 2005/02/28 10:59:07 jpm |
* Modification des commentaires et copyright. |
* |
* Revision 1.17 2005/02/17 17:51:11 florian |
* Correction bug FTP |
* |
* Revision 1.16 2005/02/17 16:44:55 florian |
* correction du bug sur les sites par défaut |
* |
* Revision 1.15 2005/01/04 19:52:50 alex |
* correction de bug de copie de répertoire récursif de PEAR. |
* |
* Revision 1.14 2004/12/03 19:22:53 jpm |
* Gestion des types de sites externes gérés par Papyrus. |
* |
* Revision 1.13 2004/12/03 16:37:34 jpm |
* Correction d'un bogue qui empêcher la mise à jour des url des sites externes. |
* |
* Revision 1.12 2004/12/01 17:22:58 jpm |
* Ajout d'une confirmation javascript pour la suppression d'un site. |
* |
* Revision 1.11 2004/11/30 16:43:51 jpm |
* Correction de bogues. |
* |
* Revision 1.10 2004/11/29 17:05:28 jpm |
* Correction d'un bogue concernat les cases à cocher. |
* |
* Revision 1.9 2004/11/26 13:13:51 jpm |
* Mise en commentaire de variable passée dans un message d'erreur car elles semblent provoquer un bogue et ne sont pas obligatoire. |
* |
* Revision 1.8 2004/11/03 17:59:59 jpm |
* Corrections bogues erreurs variable inconnue. |
* |
* Revision 1.7 2004/10/26 18:41:28 jpm |
* Gestion des sites externes à Papyrus. |
* |
* Revision 1.6 2004/10/22 17:25:31 jpm |
* Changement du nom de la class CSS d'erreur. |
* |
* Revision 1.5 2004/10/19 15:57:55 jpm |
* Amélioration de la gestion des fichiers sur le serveur. |
* Ajout d'une contrainte pour éviter la suppression par erreur du site par défaut. |
* |
* Revision 1.4 2004/10/18 18:27:41 jpm |
* Correction problèmes FTP et manipulation de fichiers. |
* |
* Revision 1.3 2004/09/23 16:51:27 jpm |
* Ajout d'informations supplémentaires sur les messages d'erreur. |
* |
* Revision 1.2 2004/07/06 17:08:01 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 14:28:46 jpm |
* Changement de nom de Papyrus en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.20 2004/05/10 14:32:14 jpm |
* Changement du titre. |
* |
* Revision 1.19 2004/05/10 12:23:39 jpm |
* Modification formulaire. |
* |
* Revision 1.18 2004/05/07 16:33:53 jpm |
* Amélioration des formulaires. |
* |
* Revision 1.17 2004/05/07 07:22:51 jpm |
* Ajout de la gestion des modification et suppression de site. |
* Amélioration de la création des sites. |
* |
* Revision 1.16 2004/04/30 16:22:53 jpm |
* Poursuite de l'administration des sites. |
* |
* Revision 1.14 2004/04/02 15:58:39 jpm |
* Modification fonction liste des projets. |
* |
* Revision 1.13 2004/04/01 11:21:41 jpm |
* Ajout et modification de commentaires pour PhpDocumentor. |
* |
* Revision 1.12 2004/03/24 20:01:02 jpm |
* Traduction, mise en forme, ajout de commentaire pour les fonctions listProjects() et updateProject(). |
* |
* Revision 1.11 2004/03/24 10:06:01 jpm |
* Ajout des commentaires d'entête. |
* Début mise en conformité avec la convention de codage. |
* Début traitement de la fonction listant les projets. |
* |
* |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_site/langues/adsi_langue_fr.inc.php |
---|
New file |
0,0 → 1,68 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adsi_langue_fr.inc.php,v 1.3 2006-10-06 10:40:51 florian Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADSI |
* |
*@package Admin_auth |
*@subpackage Langues |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.3 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define('ADSI_TITRE_SITE', 'Titre du site'); |
define('ADSI_IDENTIFIEZ_VOUS','Veuillez vous identifier pour accèder à ce menu.'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.2 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.1.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.3 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.2 2004/12/13 18:07:57 alex |
* ajout de labels |
* |
* Revision 1.1 2004/12/06 11:31:37 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_site/langues/adsi_langue_en.inc.php |
---|
New file |
0,0 → 1,65 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adsi_langue_en.inc.php,v 1.2 2006-03-02 10:49:49 ddelon Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADSI |
* |
*@package Admin_auth |
*@subpackage Langues |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.2 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define('ADSI_TITRE_SITE', 'Site title'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1.2.1 2006/02/28 14:02:10 ddelon |
* Finition multilinguisme |
* |
* Revision 1.3 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.2 2004/12/13 18:07:57 alex |
* ajout de labels |
* |
* Revision 1.1 2004/12/06 11:31:37 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_site/admin_site.php |
---|
New file |
0,0 → 1,408 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* Application Administrateur de Papyrus. |
* |
* Application permettant de gérer actulement les projets et la mise en cache des pages. |
* Dans l'avenir la gestion via l'interface d'administration des fichiers CSS et |
* des Squelettes pourrait être envisagée. |
* Cette application peut prendre 1 des 3 arguments ci-dessous lors de son appel par un menu de Papyrus : |
* - site : pour indiquer que l'on veut gérer les sites |
* - cache : pour indiquer que l'on veut gérer le cache |
* Liste des paquetages Pear nécessaire à cette application : |
* - DB |
* - Auth |
* - Net_URL |
* |
*@package Admin_site |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <lc@gsite.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.12 $ $Date: 2006-10-06 10:40:51 $ |
// +------------------------------------------------------------------------------------------------------+ |
// |
// $Id: admin_site.php,v 1.12 2006-10-06 10:40:51 florian Exp $ |
// FICHIER : $RCSfile: admin_site.php,v $ |
// AUTEUR : $Author: florian $ |
// VERSION : $Revision: 1.12 $ |
// DATE : $Date: 2006-10-06 10:40:51 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Note : cette application fait appel à des fonctions présentent dans la bibliotheque de Papyrus. |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_APPLICATION.'admin_site/configuration/adsi_configuration.inc.php'; |
// Inclusion des fichiers de traduction de l'appli ADSI de Papyrus |
if (file_exists(ADSI_CHEMIN_LANGUE.'adsi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
require_once ADSI_CHEMIN_LANGUE.'adsi_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
require_once ADSI_CHEMIN_LANGUE.'adsi_langue_'.ADSI_I18N_DEFAUT.'.inc.php'; |
} |
/** Inclusion de la bibliothèque PEAR de conception de formulaire.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm.php'; |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm/element.php'; |
/** Inclusion de l'API de fonctions gérant les erreurs sql.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_API.'debogage/BOG_sql.fonct.php'; |
/** Inclusion des fonctions de manipulation du sql. |
* Permet la récupération d'un nouvel identifiant d'une table.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_API.'sql/SQL_manipulation.fonct.php'; |
/** Inclusion des fonctions de manipulation de fichiers et dossiers. |
* Permet la suppression d'un dossier et de son contenu.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_API.'fichier/FIC_manipulation.fonct.php'; |
/** Inclusion de la bibliothèque de fonctions concernant les tables "gen_menu..." de Papyrus. |
* Permet d'inclure la fonction d'affichage du "Vous êtes ici".*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_GEN.'pap_menu.fonct.php'; |
/** Inclusion de la bibliothèque de fonctions concernant les tables "gen_site..." de Papyrus.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_GEN.'pap_site.fonct.php'; |
/** Inclusion de la bibliotheque de fonction gérant l'affichage de l'application Administrateur.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_ADSI.'adsi_affichage.fonct.php'; |
/** Inclusion de la bibliotheque de fonction gérant l'administration des sites de Papyrus.*/ |
require_once ADSI_CHEMIN_BIBLIOTHEQUE_ADSI.'adsi_site.fonct.php'; |
///** Inclusion de la bibliotheque de fonction gérant l'administration du cache de Papyrus.*/ |
//require_once ADSI_CHEMIN_BIBLIOTHEQUE_ADSI.'adsi_cache.fonct.php'; |
///** Inclusion de la bibliotheque de fonction gérant l'administration des squelettes des sites de Papyrus.*/ |
//require_once ADSI_CHEMIN_BIBLIOTHEQUE_ADSI.'adsi_squelette.fonct.php'; |
///** Inclusion de la bibliotheque de fonction gérant l'administration des feuilles de styles des sites de Papyrus.*/ |
//require_once ADSI_CHEMIN_BIBLIOTHEQUE_ADSI.'adsi_style.fonct.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherContenuTete() - Fonction appelé par le gestionnaire Papyrus. |
* |
* Elle retourne l'entête de l'application.. |
* |
* @return string du code XHTML correspondant à la zone d'entête de l'application. |
*/ |
function afficherContenuTete() |
{ |
return ''; |
} |
/** Fonction afficherContenuCorps() - Retourne le contenu XHTML à afficherdans la zone contenu corps. |
* |
* Cette fonction retourne le contenu final d'un appel à l'application Administrateur. |
* Cette fonction peut être appelé par Papyrus où depuis n'importe quel autre interface. |
* |
* @return string le contenu xhtml généré par l'application Administrateur et devant être affiché. |
*/ |
function afficherContenuCorps() |
{ |
// +----------------------------------------------------------------------------------------------+ |
// Initialisation des variables |
// +----------------------------------------------------------------------------------------------+ |
// Objet Pear Auth |
$objet_pear_auth =& $GLOBALS['_GEN_commun']['pear_auth']; |
// +----------------------------------------------------------------------------------------------+ |
// Gestion de l'URL pour revenir sur le menu courant. |
$url = $GLOBALS['_GEN_commun']['url']->getUrl(); |
// +----------------------------------------------------------------------------------------------+ |
if ($objet_pear_auth->getAuth()) { |
// +----------------------------------------------------------------------------------------------+ |
// Initialisation des variables. |
$sortie_xhtml = '';// Le XHTML à renvoyer.// Ancien nom : $outputText |
$msg = ''; |
// +----------------------------------------------------------------------------------------------+ |
// Arguments passé par le menu de Papyrus à l'application l'Administrateur de site. |
// Initialisation des variables qui contiendront les arguments |
$id_site_a_administrer = ''; |
$bool_site = false; |
$bool_auth = false; |
$bool_cache = false; |
$bool_squelette = false; |
$bool_style = false; |
// Instantciation des variables arguments |
if (isset($GLOBALS['_GEN_commun']['info_application']->id_site)) { |
$id_site_a_administrer = $GLOBALS['_GEN_commun']['info_application']->id_site; |
} |
if (isset($GLOBALS['_GEN_commun']['info_application']->bool_site) && $GLOBALS['_GEN_commun']['info_application']->bool_site == 'true') { |
// Interface d'administration des sites |
$bool_site = true; |
} |
if (isset($GLOBALS['_GEN_commun']['info_application']->bool_auth) && $GLOBALS['_GEN_commun']['info_application']->bool_auth == 'true') { |
// Interface d'administration du cache d'un site |
$bool_cache = true; |
} |
if (isset($GLOBALS['_GEN_commun']['info_application']->bool_cache) && $GLOBALS['_GEN_commun']['info_application']->bool_cache == 'true') { |
// Interface d'administration du cache d'un site |
$bool_cache = true; |
} |
if (isset($GLOBALS['_GEN_commun']['info_application']->bool_squelette) && $GLOBALS['_GEN_commun']['info_application']->bool_squelette == 'true') { |
// Interface d'administration du fichier squelette d'un site |
$bool_squelette = true; |
} |
if (isset($GLOBALS['_GEN_commun']['info_application']->bool_style) && $GLOBALS['_GEN_commun']['info_application']->bool_style == 'true') { |
// Interface d'administration du fichier de styles d'un site |
$bool_style = true; |
} |
// Si aucun argument transmis on affiche l'interface de gestion des sites |
if ( !($bool_site && $bool_cache && $bool_squelette && $bool_style) ) { |
$bool_site = true; |
} |
// +----------------------------------------------------------------------------------------------+ |
// Gestion des sites... |
if ($bool_site) { |
if (isset($_POST['form_sites_ajouter'])) { |
// Nous voulons le formulaire d'ajout d'un site |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url); |
return $sortie_xhtml; |
} else if (isset($_POST['site_enregistrer'])) { |
// Nous cherchons à enregistrer un site |
$message = ADMIN_validerFormSite($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url, $_POST, $message); |
} else { |
// Les données sont valide. Nous les enregistrons et retournons au formulaire de départ. |
$message = ADMIN_enregistrerSite($GLOBALS['_GEN_commun']['pear_db'], $_POST, $objet_pear_auth->getAuthData('ga_id_administrateur')); |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} |
return $sortie_xhtml; |
} else if (isset($_POST['form_sites_modifier'])) { |
// Nous cherchons à modifier un site |
$message = ADMIN_validerFormListesSites($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} else { |
// Les données sont valide. Nous affichons le formulaire de modification. |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url, $_POST, $message); |
} |
return $sortie_xhtml; |
} else if (isset($_POST['site_modifier'])) { |
// Nous cherchons à enregistrer les modification d'un site |
$message = ADMIN_validerFormSite($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url, $_POST, $message); |
} else { |
// Les données sont valide. Nous les enregistrons et retournons au formulaire de départ. |
$message = ADMIN_modifierSite($GLOBALS['_GEN_commun']['pear_db'], $_POST, $objet_pear_auth->getAuthData('ga_id_administrateur')); |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} |
return $sortie_xhtml; |
} else if (isset($_POST['form_sites_supprimer'])) { |
// Nous cherchons à supprimer un site |
$message = ADMIN_validerFormListesSites($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} else { |
// Les données sont valide. Nous supprimons et retournons au formulaire de départ. |
$message = ADMIN_supprimerSite($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} |
return $sortie_xhtml; |
} else if (isset($_POST['form_sites_traduire'])) { |
// Nous cherchons à traduire un site |
$message = ADMIN_validerFormListesSites($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if ((!empty($message))) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} else { |
$message = ADMIN_verifier_traduction_possible($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
if ((!empty($message))) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} |
else { |
// Les données sont valide. Nous affichons le formulaire de traduction |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url, $_POST, $message); |
} |
} |
return $sortie_xhtml; |
} else if (isset($_POST['site_traduire'])) { |
// Nous cherchons à enregistrer la traduction d'un site |
$message = ADMIN_validerFormSite($GLOBALS['_GEN_commun']['pear_db'], $_POST); |
$message=''; |
if (!empty($message)) { |
// Les données ne sont pas valide. Nous retournons le formulaires avec les messages d'erreurs. |
$sortie_xhtml .= ADMIN_afficherFormSite($GLOBALS['_GEN_commun']['pear_db'], $url, $_POST, $message); |
} else { |
// Les données sont valide. Nous les enregistrons et retournons au formulaire de départ. |
$message = ADMIN_traduireSite($GLOBALS['_GEN_commun']['pear_db'], $_POST, $objet_pear_auth->getAuthData('ga_id_administrateur')); |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url, $message); |
} |
return $sortie_xhtml; |
} else if (isset($_POST['form_annuler'])) { |
// Retour à la liste des sites |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url); |
return $sortie_xhtml; |
} else { |
// Liste des sites |
$sortie_xhtml .= ADMIN_afficherFormListeSites($GLOBALS['_GEN_commun']['pear_db'], $url); |
} |
} |
// +----------------------------------------------------------------------------------------------+ |
// Gestion du cache... A FAIRE |
if ($bool_cache) { |
} |
// +----------------------------------------------------------------------------------------------+ |
// Gestion des squelettes... A FAIRE |
if ($bool_squelette) { |
} |
// +----------------------------------------------------------------------------------------------+ |
// Gestion des styles... A FAIRE |
if ($bool_style) { |
} |
return $sortie_xhtml; |
} else { |
// L'utilisateur n'est pas identifie, nous lui demandons de le faire. |
$res=''; |
$res .= '<p class="zone_alert">'.ADSI_IDENTIFIEZ_VOUS.'</p>'."\n" ; |
$res .= '<form id="form_connexion" style="clear:both;" class="form_identification" action="' ; |
$res .= $url; |
$res .= '" method="post"> |
<fieldset> |
<legend>Identifiez vous</legend> |
<label for="username">Courriel : </label> |
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="courriel" /> |
<label for="password">Mot de passe : </label> |
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" /> |
<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" /> |
</fieldset> |
</form>'; |
return $res ; |
} |
}//Fin de la fonction afficherContenuCorps(). |
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* $Log: not supported by cvs2svn $ |
* Revision 1.11 2006/03/15 23:35:25 ddelon |
* Gestion site |
* |
* Revision 1.10 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.9.2.2 2006/02/28 14:02:09 ddelon |
* Finition multilinguisme |
* |
* Revision 1.9.2.1 2006/01/19 21:26:20 ddelon |
* Multilinguisme site + bug ftp |
* |
* Revision 1.9 2005/04/08 13:28:43 jpm |
* Utiliation de références. |
* |
* Revision 1.8 2005/02/28 13:09:17 jpm |
* Correction bogue : virgule manquante. |
* |
* Revision 1.7 2005/02/28 11:07:05 jpm |
* Modification des auteurs. |
* |
* Revision 1.6 2005/02/28 10:58:38 jpm |
* Suppression de code inutile. |
* |
* Revision 1.5 2005/02/28 10:32:06 jpm |
* Changement de nom de dossier. |
* |
* Revision 1.4 2004/12/03 19:22:57 jpm |
* Gestion des types de sites externes gérés par Papyrus. |
* |
* Revision 1.3 2004/10/18 18:27:37 jpm |
* Correction problèmes FTP et manipulation de fichiers. |
* |
* Revision 1.2 2004/07/06 17:08:14 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 14:20:39 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.23 2004/05/10 12:23:26 jpm |
* Correction mineure. |
* |
* Revision 1.22 2004/05/07 16:33:18 jpm |
* Intégration de constantes. |
* |
* Revision 1.21 2004/05/07 07:23:03 jpm |
* Ajout de la gestion des modification et suppression de site. Amélioration de la création des sites. |
* |
* Revision 1.20 2004/05/05 06:45:36 jpm |
* Suppression de l'appel de la fonction générant le "vous êtes ici" dans la fonction affichant l'entête de l'application. |
* |
* Revision 1.19 2004/05/04 16:28:30 jpm |
* Réduction de code pour la fonction afficherContenuTete(). |
* |
* Revision 1.18 2004/04/30 16:22:59 jpm |
* Poursuite de l'administration des sites. |
* |
* Revision 1.17 2004/04/22 08:33:11 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.16 2004/04/09 16:24:08 jpm |
* Prise en compte des tables i18n. |
* |
* Revision 1.15 2004/04/02 16:37:09 jpm |
* Modification de la gestion des actions d'administration. |
* Ajout de commentaires. |
* |
* Revision 1.14 2004/03/31 16:58:15 jpm |
* Changement des chemins d'accès aux fichiers à inclure. |
* |
* Revision 1.13 2004/03/24 10:07:04 jpm |
* Ajout des commentaires d'entête. |
* Début mise en conformité avec la convention de codage. |
* Déplacement de la fonction d'affichage du xhtml dans la bibliothèque de fonctions. |
* |
* +--Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_site/configuration/adsi_configuration.inc.php |
---|
New file |
0,0 → 1,90 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: adsi_configuration.inc.php,v 1.5 2006-03-22 13:18:00 alexandre_tb Exp $ |
/** |
* Fichier de configuration général de l'application Administrateur de sites. |
* |
* Permet de définir certains paramètres valables pour toutes l'application |
* Administrateur de sites. |
* |
*@package Admin_site |
*@subpackage Configuration |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.5 $ $Date: 2006-03-22 13:18:00 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Chemin des fichiers à inclure. |
/** <br> Chemin vers le dossier de Pear.*/ |
define('ADSI_CHEMIN_BIBLIOTHEQUE_PEAR',''); |
/** <br> Chemin vers le dossier des API.*/ |
define('ADSI_CHEMIN_BIBLIOTHEQUE_API', GEN_CHEMIN_API); |
/** <br> Chemin vers le dossier des bibliothèques de l'appli Papyrus.*/ |
define('ADSI_CHEMIN_BIBLIOTHEQUE_GEN', GEN_CHEMIN_BIBLIO); |
/** <br> Chemin vers le dossier des bibliothèques de l'appli Admin sites.*/ |
define('ADSI_CHEMIN_BIBLIOTHEQUE_ADSI', GEN_CHEMIN_APPLICATION.'admin_site/bibliotheque/'); |
// Chemin vers les dossiers de l'application |
/** Chemin vers l'application Admin Site de Papyrus.*/ |
define('ADSI_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'admin_site/'); |
/** Chemin vers les fichiers de traduction de l'application Admin Auth de Papyrus.*/ |
define('ADSI_CHEMIN_LANGUE', ADSI_CHEMIN_APPLICATION.'langues/'); |
define ('ADSI_I18N_DEFAUT', 'fr'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.3.2.1 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.3 2005/02/28 10:59:38 jpm |
* Modification des commentaires. |
* |
* Revision 1.2 2004/07/06 17:08:20 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 14:20:28 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.1 2004/05/07 08:21:39 jpm |
* Ajout des constantes de définition des chemins des fichiers à inclure. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/afficheur/configuration/affi_fckconfig.js |
---|
New file |
0,0 → 1,169 |
/* |
* FCKeditor - The text editor for internet |
* Copyright (C) 2003-2005 Frederico Caldeira Knabben |
* |
* Licensed under the terms of the GNU Lesser General Public License: |
* http://www.opensource.org/licenses/lgpl-license.php |
* |
* For further information visit: |
* http://www.fckeditor.net/ |
* |
* File Name: fckconfig.js |
* Editor configuration settings. |
* See the documentation for more info. |
* |
* File Authors: |
* Frederico Caldeira Knabben (fredck@fckeditor.net) |
*/ |
FCKConfig.CustomConfigurationsPath = '' ; |
FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ; |
FCKConfig.DocType = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' ; |
FCKConfig.BaseHref = '' ; |
FCKConfig.FullPage = false ; |
FCKConfig.Debug = false ; |
FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ; |
FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ; |
// FCKConfig.Plugins.Add( 'placeholder', 'en,it' ) ; |
FCKConfig.AutoDetectLanguage = true ; |
FCKConfig.DefaultLanguage = 'fr' ; |
FCKConfig.ContentLangDirection = 'ltr' ; |
FCKConfig.EnableXHTML = true ; // Unsupported: Do not change. |
FCKConfig.EnableSourceXHTML = true ; // Unsupported: Do not change. |
FCKConfig.ProcessHTMLEntities = false ; |
FCKConfig.IncludeLatinEntities = false ; |
FCKConfig.IncludeGreekEntities = false ; |
FCKConfig.FillEmptyBlocks = true ; |
FCKConfig.FormatSource = true ; |
FCKConfig.FormatOutput = true ; |
FCKConfig.FormatIndentator = '\t' ; |
FCKConfig.GeckoUseSPAN = true ; |
FCKConfig.StartupFocus = false ; |
FCKConfig.ForcePasteAsPlainText = false ; |
FCKConfig.ForceSimpleAmpersand = false ; |
FCKConfig.TabSpaces = 0 ; |
FCKConfig.ShowBorders = true ; |
FCKConfig.UseBROnCarriageReturn = false ; |
FCKConfig.ToolbarStartExpanded = true ; |
FCKConfig.ToolbarCanCollapse = true ; |
FCKConfig.IEForceVScroll = false ; |
FCKConfig.IgnoreEmptyParagraphValue = true ; |
FCKConfig.ToolbarSets["Default"] = [ |
['Source','DocProps','-','Save','NewPage','Preview','-','Templates'], |
['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'], |
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'], |
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'], |
['OrderedList','UnorderedList','-','Outdent','Indent'], |
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'], |
['Link','Unlink','Anchor'], |
['Image','Flash','Table','Rule','Smiley','SpecialChar','UniversalKey'], |
['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'], |
'/', |
['Style','FontFormat','FontName','FontSize'], |
['TextColor','BGColor'], |
['About'] |
] ; |
FCKConfig.ToolbarSets["Basic"] = [ |
['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','About'] |
] ; |
FCKConfig.ToolbarSets["Papyrus"] = [ |
['Source','Preview','-','Cut','Copy','Paste','PasteText','PasteWord','SelectAll','-','Undo','Redo','Find','Replace'], |
['RemoveFormat','Bold','Italic','Underline','StrikeThrough','Subscript','Superscript','-','JustifyLeft','JustifyCenter','JustifyRight','JustifyFull','-','OrderedList','UnorderedList'], |
'/', |
['Image','Table','Link','Unlink','Rule','SpecialChar','UniversalKey'], |
['FontFormat','FontName','FontSize','TextColor'], |
['About'] |
] ; |
FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','TableCell','Table','Form'] ; |
FCKConfig.FontColors = '000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,808080,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF' ; |
FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ; |
FCKConfig.FontSizes = '1/xx-small;2/x-small;3/small;4/medium;5/large;6/x-large;7/xx-large' ; |
FCKConfig.FontFormats = 'p;div;pre;address;h1;h2;h3;h4;h5;h6' ; |
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ; |
FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + 'fcktemplates.xml' ; |
FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages' |
FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/rel/ieSpellSetup211325.exe' ; |
FCKConfig.MaxUndoLevels = 15 ; |
FCKConfig.DisableImageHandles = false ; |
FCKConfig.DisableTableHandles = false ; |
FCKConfig.LinkDlgHideTarget = false ; |
FCKConfig.LinkDlgHideAdvanced = false ; |
FCKConfig.ImageDlgHideLink = false ; |
FCKConfig.ImageDlgHideAdvanced = false ; |
FCKConfig.FlashDlgHideAdvanced = false ; |
FCKConfig.LinkBrowser = true ; |
// PHP // |
FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/php/connector.php' ; |
// PHP - mcpuk |
//FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Connector=connectors/php/connector.php' ; |
FCKConfig.LinkBrowserWindowWidth = screen.width * 0.7 ; // 70% |
FCKConfig.LinkBrowserWindowHeight = screen.height * 0.7 ; // 70% |
FCKConfig.ImageBrowser = true ; |
// PHP // |
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/php/connector.php' ; |
// PHP - mcpuk |
//FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Type=Image&Connector=connectors/php/connector.php' ; |
FCKConfig.ImageBrowserWindowWidth = screen.width * 0.7 ; // 70% ; |
FCKConfig.ImageBrowserWindowHeight = screen.height * 0.7 ; // 70% ; |
FCKConfig.FlashBrowser = true ; |
// PHP // |
FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/php/connector.php' ; |
// PHP - mcpuk |
// FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Type=Flash&Connector=connectors/php/connector.php' ; |
FCKConfig.FlashBrowserWindowWidth = screen.width * 0.7 ; //70% ; |
FCKConfig.FlashBrowserWindowHeight = screen.height * 0.7 ; //70% ; |
FCKConfig.LinkUpload = true ; |
// PHP // |
FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php' ; |
FCKConfig.LinkUploadAllowedExtensions = "" ; // empty for all |
FCKConfig.LinkUploadDeniedExtensions = ".(php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi)$" ; // empty for no one |
FCKConfig.ImageUpload = true ; |
// PHP // |
FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php?Type=Image' ; |
FCKConfig.ImageUploadAllowedExtensions = ".(jpg|gif|jpeg|png)$" ; // empty for all |
FCKConfig.ImageUploadDeniedExtensions = "" ; // empty for no one |
FCKConfig.FlashUpload = true ; |
// PHP // |
FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php?Type=Flash' ; |
FCKConfig.FlashUploadAllowedExtensions = ".(swf|fla)$" ; // empty for all |
FCKConfig.FlashUploadDeniedExtensions = "" ; // empty for no one |
FCKConfig.SmileyPath = FCKConfig.BasePath + 'images/smiley/msn/' ; |
FCKConfig.SmileyImages = ['regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif','embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif','devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif','broken_heart.gif','kiss.gif','envelope.gif'] ; |
FCKConfig.SmileyColumns = 8 ; |
FCKConfig.SmileyWindowWidth = 320 ; |
FCKConfig.SmileyWindowHeight = 240 ; |
if( window.console ) window.console.log( 'Config is loaded!' ) ; // @Packager.Compactor.RemoveLine |
/branches/livraison_aha/papyrus/applications/afficheur/configuration/affi_configuration.inc.php |
---|
New file |
0,0 → 1,152 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.3 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: affi_configuration.inc.php,v 1.14 2007-06-26 13:30:48 jp_milcent Exp $ |
/** |
* Application réalisant l'affichage du contenu stocké dans Papyrus. |
* |
* Les constantes et variables de configuration de l'application Afficheur. |
* |
*@package Afficheur |
*@subpackage Configuration |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.14 $ $Date: 2007-06-26 13:30:48 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('AFFI_CHEMIN_BIBLIOTHEQUE_PEAR', ''); |
/** Chemin vers la bibliothèque API.*/ |
define('AFFI_CHEMIN_BIBLIOTHEQUE_API', 'api'.GEN_SEP); |
/** Chemin vers la bibliothèque API : fckeditor.*/ |
define('AFFI_CHEMIN_FCKEDITOR', AFFI_CHEMIN_BIBLIOTHEQUE_API.'fckeditor'.GEN_SEP); |
/** Chemin vers l'application Admin de l'afficheur de Papyrus.*/ |
define('AFFI_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'afficheur'.GEN_SEP); |
/** Chemin vers le dossier des squelettes de l'application.*/ |
define('AFFI_CHEMIN_SQUELETTE', AFFI_CHEMIN_APPLICATION.'squelettes'.GEN_SEP); |
/** Chemin vers le dossier des styles de l'application.*/ |
define('AFFI_CHEMIN_STYLE', AFFI_CHEMIN_SQUELETTE); |
/** Chaine à utiliser pour l'URL de la règle Freelink.*/ |
define('AFFI_URL_PAPYRUS', PAP_URL.'?menu=%s'); |
/** Utilisation de fckeditor (true).*/ |
$GLOBALS['_AFFI_']['fckeditor']['utilisation'] = true; |
/** Hauteur de fckeditor.*/ |
$GLOBALS['_AFFI_']['fckeditor']['hauteur'] = '400'; |
/** Type de barre d'outil de fckeditor.*/ |
$GLOBALS['_AFFI_']['fckeditor']['barre'] = 'Papyrus'; |
/** Langue de fckeditor.*/ |
$GLOBALS['_AFFI_']['fckeditor']['langue'] = $GLOBALS['_GEN_commun']['i18n']; |
/** Fichier de config personnalisé de fckeditor.*/ |
$base_url = parse_url(PAP_URL); |
$dirname_base_url = dirname($base_url['path']); |
// Suppression double slash pour site interdisant ce type d'url (a confirmer ...) |
// Probleme également avec des sous-domaines (~ree05/papyrus etc.) .... |
$GLOBALS['_AFFI_']['fckeditor']['CustomConfigurationsPath'] = str_replace('//', '/', $dirname_base_url.GEN_SEP.AFFI_CHEMIN_APPLICATION.'configuration'.GEN_SEP.'affi_fckconfig.js'); |
// L'objet PEAR::DB à utiliser pour l'afficheur : |
$GLOBALS['_AFFICHEUR']['objet_pear_db'] =& $GLOBALS['_GEN_commun']['pear_db']; |
// L'identifiant du menu courant : |
if (isset($GLOBALS['_GEN_commun']['traduction_info_menu'])) { |
$GLOBALS['_AFFICHEUR']['menu_courant_id'] = $GLOBALS['_GEN_commun']['traduction_info_menu']->gm_id_menu; |
} else if (isset($GLOBALS['_GEN_commun']['info_menu'])) { |
$GLOBALS['_AFFICHEUR']['menu_courant_id'] = $GLOBALS['_GEN_commun']['info_menu']->gm_id_menu; |
} else { |
$GLOBALS['_AFFICHEUR']['menu_courant_id'] = $GLOBALS['_GEN_commun']['url_menu']; |
} |
// Le jeu de caractère à utiliser pour la page courante : |
$GLOBALS['_AFFICHEUR']['jeu_de_caracteres'] = $GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres']; |
// Les sites correspodant aux liens interwiki: |
$GLOBALS['_AFFICHEUR']['interwiki_sites'] =& $GLOBALS['_PAPYRUS_']['interwiki_sites']; |
// Les sites correspodant à l'action inclure: |
$GLOBALS['_AFFICHEUR']['inclure_sites'] =& $GLOBALS['_PAPYRUS_']['inclure_sites']; |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.13 2006-04-28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.12 2005/08/25 08:59:12 ddelon |
* Integrateur Wikini et administration des Wikini |
* |
* Revision 1.11 2005/08/18 10:20:04 ddelon |
* Integrateur Wikini et Acces PEAR |
* |
* Revision 1.10 2005/07/21 18:11:43 ddelon |
* configuration barre outil fcke |
* |
* Revision 1.9 2005/07/18 08:53:14 ddelon |
* Configuration Fcsk et menage |
* |
* Revision 1.8 2005/07/15 17:10:08 ddelon |
* Configuration Fcsk et menage |
* |
* Revision 1.7 2005/06/03 18:39:30 jpm |
* Ajout de la barre d'outil Papyrus FCKeditor. |
* |
* Revision 1.6 2005/04/25 13:56:19 jpm |
* Ajout de chemin vers les styles. |
* |
* Revision 1.5 2005/04/21 16:46:21 jpm |
* Gestion via Papyrus du XHTML. |
* |
* Revision 1.4 2005/02/23 18:16:49 jpm |
* Changement de l'url de Papyrus pour qu'elle corresponde à l'url courante de Papyrus. |
* |
* Revision 1.3 2005/02/23 17:41:21 jpm |
* Modification de l'initialisation d'une variable. |
* |
* Revision 1.2 2005/02/22 17:55:38 jpm |
* Changement de variable pour la récupération de l'identifiant du menu courant. |
* |
* Revision 1.1 2004/11/26 13:10:20 jpm |
* Utilisation des actions Papyrus et implémentation de la syntaxe Wikini. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/afficheur/afficheur.admin.php |
---|
New file |
0,0 → 1,367 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: afficheur.admin.php,v 1.24 2007-06-26 15:38:39 jp_milcent Exp $ |
/** |
* Gestion de la rédaction du contenu pour Papyrus. |
* |
* Contient les fonctions nécessaires à la gestion du contenu de Papyrus. |
* |
*@package Afficheur |
*@subpackage Administration |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.24 $ $Date: 2007-06-26 15:38:39 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Nous indiquons à Papyrus de ne pas chercher de balises d'applettes dans le contenu généré par l'appli |
$GLOBALS['_PAPYRUS_']['applette']['analyse'] = false; |
// +------------------------------------------------------------------------------------------------------+ |
// | CLASSE | |
// +------------------------------------------------------------------------------------------------------+ |
class Afficheur_Admin { |
var $objet_pear_auth; |
var $objet_pear_db; |
var $objet_pear_url; |
var $sortie_xhtml; |
/** Fonction redigerContenu() - Affiche le formulaire de rédaction |
* |
* |
* @return string Le HTML |
*/ |
function afficherContenuCorps() |
{ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications'.GEN_SEP.'afficheur'.GEN_SEP.'configuration'.GEN_SEP.'affi_configuration.inc.php'; |
//------------------------------------------------------------------------------------------------------------------- |
// Stockage des styles de l'application |
GEN_stockerStyleExterne('afficheur', AFFI_CHEMIN_STYLE.'afficheur.css'); |
//------------------------------------------------------------------------------------------------------------------- |
// Initialisation des attributs |
$this->objet_pear_auth = $GLOBALS['_GEN_commun']['pear_auth']; |
$this->objet_pear_db = $GLOBALS['_GEN_commun']['pear_db']; |
$this->objet_pear_url = $GLOBALS['_GEN_commun']['url']; |
$this->sortie_xhtml = ''; |
//------------------------------------------------------------------------------------------------------------------- |
// Gestion de l'interface |
if (isset($_POST['afficheur_annuler'])) { |
return false; |
} else if (isset($_POST['afficheur_enregistrer_quitter'])) { |
// Mise à jour du contenu |
$this->_ajouterContenu($this->objet_pear_db, $this->objet_pear_url, $this->objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
return false; |
} else if (isset($_POST['afficheur_enregistrer_rester'])) { |
// Mise à jour du contenu |
$this->_ajouterContenu($this->objet_pear_db, $this->objet_pear_url, $this->objet_pear_auth, $_GET['adme_menu_id'], $_POST); |
$this->sortie_xhtml .= $this->_redigerContenu($this->objet_pear_db, $this->objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
} else if (isset($_POST['afficheur_historique'])) { |
// Réediter une version archivée |
$this->sortie_xhtml .= $this->_reediterContenu($this->objet_pear_db, $this->objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
} else { |
if (isset($_GET['adme_version'])) { |
// Nous avons demandés la réedition d'une version archivées |
$this->sortie_xhtml .= $this->_redigerContenu($this->objet_pear_db, $this->objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action'], $_GET['adme_version']); |
} else { |
// Nous affichons le dernier contenu |
$this->sortie_xhtml .= $this->_redigerContenu($this->objet_pear_db, $this->objet_pear_url, $_GET['adme_site_id'], $_GET['adme_menu_id'], $_GET['adme_action']); |
} |
} |
return $this->sortie_xhtml; |
} |
function _redigerContenu($db, $url, $adme_site_id, $adme_menu_id, $adme_action, $adme_contenu_id = '') |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Initialisation de variable |
$contenu = ''; |
$donnees = array(); |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
$url->addQueryString('adme_action', $adme_action); |
if ($adme_contenu_id != '') { |
// Nous réeditons une version archivée |
$ligne_dernier_contenu = GEN_rechercheContenuIdentifiant($db, $adme_contenu_id, DB_FETCHMODE_ASSOC); |
$donnees['reedition_info'] = $ligne_dernier_contenu['gmc_date_modification']; |
} else { |
// Nous affichons la dernière version du contenu |
$ligne_dernier_contenu = GEN_rechercheContenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC); |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération des données |
$donnees['form_url'] = $url->getUrl(); |
// Gestion de FckEditor |
$donnees['fck_editor'] = ''; |
if ($GLOBALS['_AFFI_']['fckeditor']['utilisation']) { |
/** Inclusion du fichier de FCKeditor*/ |
require_once AFFI_CHEMIN_FCKEDITOR.'fckeditor.php'; |
$fckeditor = new FCKeditor('gmc_contenu'); |
if ($ligne_dernier_contenu['gmc_contenu']) { |
$fckeditor->Value = $ligne_dernier_contenu['gmc_contenu']; |
} else { |
if ($contenu) { |
$fckeditor->Value = $contenu; |
} else { |
$fckeditor->Value = ''; |
} |
} |
$fckeditor->Height = $GLOBALS['_AFFI_']['fckeditor']['hauteur']; |
$fckeditor->ToolbarSet = $GLOBALS['_AFFI_']['fckeditor']['barre']; |
$fckeditor->Config['CustomConfigurationsPath']=$GLOBALS['_AFFI_']['fckeditor']['CustomConfigurationsPath']; |
$fckeditor->Config['AutoDetectLanguage'] = false; |
$fckeditor->Config['DefaultLanguage'] = $GLOBALS['_AFFI_']['fckeditor']['langue']; |
$fckeditor->BasePath = AFFI_CHEMIN_FCKEDITOR; |
if ($fckeditor->IsCompatible()) { |
$donnees['fck_editor'] = $fckeditor->CreateHtml(); |
} |
} |
// Identifiant du menu |
$donnees['gmc_ce_menu'] = $adme_menu_id; |
// Type de contenu |
// Par défaut c'est du XHTML (donc 1) |
$donnees['gmc_ce_type_contenu'] = 1; |
if (isset($ligne_dernier_contenu['gmc_ce_type_contenu'])) { |
$donnees['gmc_ce_type_contenu'] = $ligne_dernier_contenu['gmc_ce_type_contenu']; |
} |
$squelette = AFFI_CHEMIN_SQUELETTE.'formulaire.tpl.html'; |
return $this->_genererContenu($squelette, $donnees); |
} |
function _reediterContenu($db, $url, $adme_site_id, $adme_menu_id, $adme_action) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Initialisation de variable |
$contenu = ''; |
$donnees = array(); |
$url->addQueryString('adme_site_id', $adme_site_id); |
$url->addQueryString('adme_menu_id', $adme_menu_id); |
$url->addQueryString('adme_action', $adme_action); |
$donnees['archives'] = GEN_lireContenuMenuHistorique(&$db, $adme_menu_id); |
foreach ($donnees['archives'] as $cle => $archive) { |
$url->addQueryString('adme_version', $archive->gmc_id_contenu); |
$donnees['archives'][$cle]->url = $url->getURL(); |
$url->removeQueryString('adme_version'); |
} |
// print_r($donnees['archives']); |
$squelette = AFFI_CHEMIN_SQUELETTE.'historique.tpl.html'; |
return $this->_genererContenu($squelette, $donnees); |
} |
/** Méthode ajouterContenu() - Enregistre les infos du formulaire de saisie d'un menu |
* |
* |
* @return void les données sont enregistrées dans la base de données. |
*/ |
function _ajouterContenu($db, $url, $auth, $adme_menu_id, $tab_valeur) |
{ |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération des informations du contenu concerné. |
$ligne_menu = GEN_lireInfoMenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC); |
if ($ligne_menu == false) { |
die('ERREUR Papyrus Administrateur de Menus: impossible de lire les infos du menu.<br />'. |
'Idenitifiant du menu n° : '. $adme_menu_id .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
if ((isset($tab_valeur['gmc_ce_menu']) && $tab_valeur['gmc_ce_menu']!='') && (isset($tab_valeur['gmc_ce_type_contenu_table']) && $tab_valeur['gmc_ce_type_contenu_table']!='')) { |
//------------------------------------------------------------------------------------------------------------------- |
// Mise à jour de l'ancien contenu du menu |
$requete = 'UPDATE gen_menu_contenu SET '. |
'gmc_bool_dernier = 0 '. |
'WHERE gmc_ce_menu = '.$tab_valeur['gmc_ce_menu'] . ' '. |
'AND gmc_ce_type_contenu = '. $tab_valeur['gmc_ce_type_contenu_table']. ' '; |
$result = $db->query($requete); |
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : ''; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Obtention d'un nouvel identifiant de contenu |
$nouveau_id_contenu = SQL_obtenirNouveauId($db, 'gen_menu_contenu', 'gmc_id_contenu'); |
//------------------------------------------------------------------------------------------------------------------- |
// Ajout du nouveau contenu pour ce menu |
$requete = 'INSERT INTO gen_menu_contenu SET '. |
'gmc_id_contenu = '.$nouveau_id_contenu.', '. |
'gmc_ce_admin = '.$auth->getAuthData('ga_id_administrateur').', '. |
'gmc_ce_menu = '.$adme_menu_id.', '. |
'gmc_ce_type_contenu = '.$tab_valeur['gmc_ce_type_contenu'].', '. |
'gmc_contenu = "'.$tab_valeur['gmc_contenu'].'", '. |
'gmc_ce_type_modification = '.$tab_valeur['gmc_ce_type_modification'].', '. |
'gmc_resume_modification = "'.$tab_valeur['gmc_resume_modification'].'", '. |
'gmc_date_modification = "'.date('Y-m-d H:i:s').'", '. |
'gmc_bool_dernier = 1'; |
$result = $db->query($requete); |
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : ''; |
} |
function _genererContenu($squelette, $donnees) |
{ |
//+------------------------------------------------------------------------------------------------------------+ |
// Extrait les variables et les ajoutes à l'espace de noms local |
// Gestion des squelettes |
extract($donnees); |
// Démarre le buffer |
ob_start(); |
// Inclusion du fichier |
include($squelette); |
// Récupérer le contenu du buffer |
$contenu = ob_get_contents(); |
// Arrête et détruit le buffer |
ob_end_clean(); |
return $contenu; |
} |
}// Fin de la classe |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.23 2007-06-26 13:30:48 jp_milcent |
* Suppression de l'utilisation de Quickform. |
* Utilisation de squellette PHP. |
* |
* Revision 1.22 2007-01-03 11:28:34 ddelon |
* correction bug multilinguisme (portage bug livraison) |
* |
* Revision 1.21 2006/12/01 16:59:45 florian |
* Ajout d'une variable parametrant la recherche de balise d'applette dans le contenu généré par l'appli. |
* |
* Revision 1.20 2006/12/01 11:23:23 ddelon |
* Suppression mode wiki afficheur |
* |
* Revision 1.19 2006/10/16 15:49:07 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.18 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.17 2006/03/27 13:42:32 ddelon |
* the last but not the least |
* |
* Revision 1.16 2006/03/27 11:21:49 ddelon |
* Still some pb |
* |
* Revision 1.15 2006/03/27 10:14:43 ddelon |
* Still some pb |
* |
* Revision 1.11 2006/03/13 22:27:23 ddelon |
* bug afficheur multilinguisme |
* |
* Revision 1.10 2006/03/13 22:12:20 ddelon |
* bug afficheur multilinguisme |
* |
* Revision 1.9 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.8 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.7.2.1 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.7 2005/07/18 08:53:14 ddelon |
* Configuration Fcsk et menage |
* |
* Revision 1.6 2005/07/15 17:10:08 ddelon |
* Configuration Fcsk et menage |
* |
* Revision 1.5 2005/06/03 18:39:30 jpm |
* Ajout de la barre d'outil Papyrus FCKeditor. |
* |
* Revision 1.4 2005/05/31 13:43:57 jpm |
* Ajout d'un bouton pour remplacer les entités html. |
* |
* Revision 1.3 2005/04/25 13:56:31 jpm |
* Ajout de styles. |
* |
* Revision 1.2 2005/02/28 10:34:15 jpm |
* Changement de nom Genesia en Papyrus. |
* |
* Revision 1.1 2004/11/09 17:53:49 jpm |
* Interface d'administration de l'application afficheur. |
* |
* Revision 1.4 2004/11/08 17:40:33 jpm |
* Mise en conformité avec la convention de codage. |
* Légères corrections. |
* |
* Revision 1.3 2004/09/23 17:45:13 jpm |
* Amélioration de la gestion des liens annuler et du selecteur de sites. |
* |
* Revision 1.2 2004/07/06 17:07:37 jpm |
* Modification de la documentation pour une mailleur analyse par PhpDocumentor. |
* |
* Revision 1.1 2004/06/16 15:04:32 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.5 2004/05/07 16:32:27 jpm |
* Modification des commentaires. |
* |
* Revision 1.4 2004/05/07 07:23:53 jpm |
* Amélioration du code, des commentaires et correction de bogues. |
* |
* Revision 1.3 2004/05/04 16:27:55 jpm |
* Amélioration gestion du déplacement des menus. |
* |
* Revision 1.2 2004/05/03 14:51:59 jpm |
* Normalisation du nom d'une fonction et ajout de la gestion d'une erreur. |
* |
* Revision 1.1 2004/04/30 16:21:30 jpm |
* Ajout de la rédaction de contenu. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/afficheur/squelettes/historique.tpl.html |
---|
New file |
0,0 → 1,7 |
<h1>Archives</h1> |
<p>Cliquer sur un des liens pour éditer à nouveau la version de la page sauvegardée à la date indiquée.</p> |
<ul> |
<?php foreach ($archives as $archive) : ?> |
<li><a href="<?=$archive->url;?>"><?=$archive->gmc_date_modification;?></a></li> |
<?php endforeach; ?> |
</ul> |
/branches/livraison_aha/papyrus/applications/afficheur/squelettes/afficheur.css |
---|
New file |
0,0 → 1,53 |
/* vim: set expandtab tabstop=4 shiftwidth=4: */ |
/* ======================================================================================================== |
| Copyright (C) 1999-2004 Tela Botanica (accueil@tela-botanica.org) | |
+---------------------------------------------------------------------------------------------------------+ |
| This file is part of Papyrus. | |
| | |
| Foobar is free software; you can redistribute it and/or modify it under the terms of the GNU General | |
| Public License as published by the Free Software Foundation; either version 2 of the License, or | |
| (at your option) any later version. | |
| | |
| Foobar is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the | |
| implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public | |
| License for more details. | |
| | |
| You should have received a copy of the GNU General Public License along with Foobar; if not, write to | |
| the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
+---------------------------------------------------------------------------------------------------------+ |
CVS : $Id: afficheur.css,v 1.1 2007-06-26 13:30:48 jp_milcent Exp $ |
=========================================================================================================== |
DESCRIPTION : Fichier de style de l'application d'administration de l'affichage. |
=========================================================================================================== |
Auteur original : Jean-Pascal MILCENT <jpm@tela-botanica.org> |
Autres auteurs : |
=========================================================================================================== |
AUTEUR : $Author: jp_milcent $ |
VERSION : $Revision: 1.1 $ $Date: 2007-06-26 13:30:48 $ |
======================================================================================================= */ |
/* +----------------------------------------------------------------------------------------------------+ |
| STRUCTURE | |
+----------------------------------------------------------------------------------------------------+*/ |
#gmc_contenu { |
width: 100%; |
min-height:400px; |
} |
/* +----------------------------------------------------------------------------------------------------+ |
| DESIGN | |
+----------------------------------------------------------------------------------------------------+*/ |
/* +--Fin des CSS ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005-04-25 13:56:08 jpm |
* Ajout du style pour l'afficheur. |
* |
* |
* +-- Fin des CSS ----------------------------------------------------------------------------------------+ |
*/ |
/branches/livraison_aha/papyrus/applications/afficheur/squelettes/formulaire.tpl.html |
---|
New file |
0,0 → 1,41 |
<h1>Rédaction</h1> |
<?php if (isset($reedition_info)) :?> |
<p class="zone_info">Vous venez de rééditer la version archivée du <?=$reedition_info;?>.</p> |
<?php endif; ?> |
<form action="<?=$form_url;?>" method="post" name="form_modifier_contenu" id="form_modifier_contenu"> |
<ul> |
<li> |
<?=$fck_editor;?> |
</li> |
<li> |
<label for="gmc_ce_type_modification">Type de modification : </label> |
<select id="gmc_ce_type_modification" tabindex="1000" name="gmc_ce_type_modification"> |
<option value="1">Mineure</option> |
<option value="2">Majeure</option> |
</select> |
</li> |
<li> |
<label for="gmc_resume_modification">Resumé modification : </label> |
<input id="gmc_resume_modification" tabindex="1001" size="45" maxlength="255" name="gmc_resume_modification" type="text" /> |
</li> |
<li> |
<ul class="liste_bouton"> |
<li> |
<input id="afficheur_enregistrer_quitter" name="afficheur_enregistrer_quitter" value="Enregistrer et quitter" type="submit" /> |
</li> |
<li> |
<input id="afficheur_enregistrer_rester" name="afficheur_enregistrer_rester" value="Enregistrer et rester en édition" type="submit" /> |
</li> |
<li> |
<input id="afficheur_historique" name="afficheur_historique" value="Réediter une version archivée" type="submit" /> |
</li> |
<li> |
<input id="afficheur_annuler" name="afficheur_annuler" value="Annuler" type="submit" /> |
</li> |
</ul> |
<input name="gmc_ce_type_contenu" type="hidden" value="<?=$gmc_ce_type_contenu;?>" /> |
<input name="gmc_ce_menu" type="hidden" value="<?=$gmc_ce_menu;?>" /> |
<input name="gmc_ce_type_contenu_table" type="hidden" value="1" /> |
</li> |
</ul> |
</form> |
/branches/livraison_aha/papyrus/applications/afficheur/afficheur.php |
---|
New file |
0,0 → 1,384 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: afficheur.php,v 1.14 2007-06-26 15:38:39 jp_milcent Exp $ |
/** |
* Application réalisant l'affichage du contenu stocké dans Papyrus. |
* |
* Récupère le dernier contenu lié à un menu et le retourne. |
* |
*@package Afficheur |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alexandrel@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.14 $ $Date: 2007-06-26 15:38:39 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications/afficheur/configuration/affi_configuration.inc.php'; |
// Inclusion de la bibliothèque PEAR Text_Wiki réalisées par Papyrus. |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Fonction afficherContenuTete() - Fonction appelé par le gestionnaire Papyrus. |
* |
* Elle retourne l'entête de l'application.. |
* |
* @return string du code XHTML correspondant à la zone d'entête de l'application. |
*/ |
function afficherContenuTete() |
{ |
return ''; |
} |
function afficherContenuCorps() { |
$retour = ''; |
$db = $GLOBALS['_AFFICHEUR']['objet_pear_db']; |
$id_or = GEN_rechercheMenuCode($db, GEN_rechercheMenuIdentifiant($db, $GLOBALS['_AFFICHEUR']['menu_courant_id'])); |
$ligne_contenu = GEN_rechercheContenu($db, $id_or); |
$contenu = $ligne_contenu->gmc_contenu; |
// Inclusion de la bibliothèque Text_Wiki_Papyrus effectuées par Papyrus précédement |
// Les actions Text_Wiki_Papyrus sont gérées par Papyrus |
// Nous regardons si nous avons à faire à un texte sous format Wikini ou XHTML |
if (($ligne_contenu->gmc_ce_type_contenu == 1)||(substr($ligne_contenu->gmc_ce_type_contenu,-1)== 1)) { |
$retour = $contenu; |
} elseif (($ligne_contenu->gmc_ce_type_contenu == 2) || (substr($ligne_contenu->gmc_ce_type_contenu,-1)== 2)){ |
include_once AFFI_CHEMIN_BIBLIOTHEQUE_API.'text/wiki_wikini/Wikini.class.php'; |
// Création d'un objet Text_Wikini : |
$wikini =& new Text_Wikini(); |
// Pour éviter de remplacer les caractères spéciaux du XHTML: |
$wikini->setFormatConf('Xhtml', 'translate', false); |
// Configuration de la règle Freelink : |
$wikini->setRenderConf('Xhtml', 'freelink', 'pages', null); |
$wikini->setRenderConf('Xhtml', 'freelink', 'view_url', AFFI_URL_PAPYRUS); |
// Configuration de la règle Interwiki : |
$wikini->setRenderConf('Xhtml', 'interwiki', 'sites', $GLOBALS['_AFFICHEUR']['interwiki_sites']); |
// Application des règles de Wikini : |
$retour = $wikini->transform($contenu, 'Xhtml'); |
} |
//---------------------------------------------------------------------------- |
// Renvoie du contenu de la page |
return $retour; |
} |
/** Fonction afficherContenuCorps() - Fonction appelé par le gestionnaire Papyrus. |
* |
* Elle retourne le contenu stocké dans Papyrus pour le menu courant demandé. |
* |
* @return string du code XHTML correspondant au contenu du menu demandé. |
*/ |
function afficherContenuCorpsOld() |
{ |
//---------------------------------------------------------------------------- |
// Initialisation des variable |
$retour = ''; |
$id_langue = $GLOBALS['_GEN_commun']['i18n']; |
if (isset($id_langue) && ($id_langue!='')) { |
$langue_test=$id_langue; |
} else { |
$langue_test=GEN_I18N_ID_DEFAUT; |
} |
//------------------------------------------------------------------------------------------------------------------- |
// Récupération des informations du contenu concerné. |
$ligne_menu = GEN_lireInfoMenu($GLOBALS['_AFFICHEUR']['objet_pear_db'], $GLOBALS['_AFFICHEUR']['menu_courant_id'], DB_FETCHMODE_ASSOC); |
if ($ligne_menu == false) { |
die('ERREUR Papyrus Administrateur de Menus: impossible de lire les infos du menu.<br />'. |
'Idenitifiant du menu n° : '. $GLOBALS['_AFFICHEUR']['objet_pear_db'] .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier n° : '. __FILE__ .'<br />'); |
} |
// Comment ca marche ? |
// Historiquement, le code menu est associé au contenu |
// Depuis le passage au multilinguisme : ce comportement est conservé mais : |
// Tout nouveau contenu, contient également l'information code gm_id_menu, enfoui dans le |
// type contenu. |
// Récupération identifiant du menu en cours |
$requete = 'SELECT gm_id_menu, gm_code_num '. |
'FROM gen_menu '. |
'WHERE gm_code_num = '.$ligne_menu['gm_code_num'].' '. |
'AND gm_ce_i18n = "'.$langue_test.'" '; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
if ( $resultat->numRows() > 0 ) { |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
} |
else { |
// Recherche defaut : |
$requete = 'SELECT gm_id_menu, gm_code_num '. |
'FROM gen_menu '. |
'WHERE gm_code_num = '.$ligne_menu['gm_code_num'].' '; |
'AND gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
if ($langue_test!=GEN_I18N_ID_DEFAUT) { |
$requete_defaut = 'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '. |
'FROM gen_menu_relation '. |
'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut |
$resultat_defaut = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete_defaut); |
(DB::isError($resultat_defaut)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_defaut->getMessage(), $requete_defaut)) |
: ''; |
if ($resultat_defaut->numRows() > 0) { |
$ligne=$resultat_defaut->fetchRow(DB_FETCHMODE_OBJECT); |
} |
} |
} |
// Cas historique : ce menu n'a jamais été traduit. |
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '. |
'FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$ligne->gm_id_menu.' '. |
'AND gmc_ce_type_contenu in (1,2) '. |
'AND gmc_bool_dernier = 1'; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Rien trouvé ? : Migration multilinguisme ou pas encore de contenu |
if ( $resultat->numRows() == 0 ) { |
// Migration multilinguisme |
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '. |
'FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$ligne_menu['gm_code_num'].' '. |
'AND truncate((gmc_ce_type_contenu/10),0) = '. $ligne->gm_id_menu . ' '. |
'AND gmc_bool_dernier = 1'; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
// Pas de contenu, tentative de recuperation du contenu se |
if ( $resultat->numRows() == 0 ) { |
$requete = 'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '. |
'FROM gen_menu_relation '. |
'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) |
: ''; |
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '. |
'FROM gen_menu_contenu, gen_menu_relation '. |
'WHERE truncate((gmc_ce_type_contenu/10),0) = gmr_id_menu_01 '. |
'AND '.$ligne->gm_id_menu.' = gmr_id_menu_02 '. |
'AND gmr_id_valeur = 2 '. |
'AND gmc_bool_dernier = 1'; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
/* |
$requete = 'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '. |
'FROM gen_menu_relation '. |
'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' . |
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
print_r ($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) |
: ''; |
*/ |
} |
// Toujours rien ? |
if ( $resultat->numRows() == 0 ) { |
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '. |
'FROM gen_menu_contenu '. |
'WHERE gmc_ce_menu = '.$ligne->gm_code_num.' '. |
'AND gmc_ce_type_contenu in (1,2) '. |
'AND gmc_bool_dernier = 1'; |
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
} |
} |
$ligne_contenu = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$contenu = $ligne_contenu->gmc_contenu; |
// Inclusion de la bibliothèque Text_Wiki_Papyrus effectuées par Papyrus précédement |
// Les actions Text_Wiki_Papyrus sont gérées par Papyrus |
// Nous regardons si nous avons à faire à un texte sous format Wikini ou XHTML |
if (($ligne_contenu->gmc_ce_type_contenu == 1)||(substr($ligne_contenu->gmc_ce_type_contenu,-1)== 1)) { |
$retour = $contenu; |
} elseif (($ligne_contenu->gmc_ce_type_contenu == 2) || (substr($ligne_contenu->gmc_ce_type_contenu,-1)== 2)){ |
include_once AFFI_CHEMIN_BIBLIOTHEQUE_API.'text/wiki_wikini/Wikini.class.php'; |
// Création d'un objet Text_Wikini : |
$wikini =& new Text_Wikini(); |
// Pour éviter de remplacer les caractères spéciaux du XHTML: |
$wikini->setFormatConf('Xhtml', 'translate', false); |
// Configuration de la règle Freelink : |
$wikini->setRenderConf('Xhtml', 'freelink', 'pages', null); |
$wikini->setRenderConf('Xhtml', 'freelink', 'view_url', AFFI_URL_PAPYRUS); |
// Configuration de la règle Interwiki : |
$wikini->setRenderConf('Xhtml', 'interwiki', 'sites', $GLOBALS['_AFFICHEUR']['interwiki_sites']); |
// Application des règles de Wikini : |
$retour = $wikini->transform($contenu, 'Xhtml'); |
} |
// +---------------------------------------------------------------------------------------------------------------+ |
// Nous regardons si nous voulons surligner ou pas des mots |
if (isset($_GET['var_recherche'])) { |
$tab_mots = explode(' ', rawurldecode($_GET['var_recherche'])); |
foreach ($tab_mots as $mot) { |
if (strlen($mot) >= 2) { |
$regexp = '/(>[^<]*)('.$mot.'\b)/Uis'; |
$retour = preg_replace($regexp, '$1<span class="surlignage">$2</span>', $retour); |
} |
} |
} |
//---------------------------------------------------------------------------- |
// Renvoie du contenu de la page |
return $retour; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.13 2006-11-21 18:52:20 jp_milcent |
* Ajout de la possibilité de surligner des mots. |
* |
* Revision 1.12 2006/11/21 15:50:05 jp_milcent |
* Ajout du surlignage des mots passé dans la query string via la variable var_recherche. |
* |
* Revision 1.11 2006/10/16 15:49:07 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.10 2006/06/29 15:12:26 ddelon |
* Multilinguisme : contenu par defaut |
* |
* Revision 1.9 2006/03/27 10:50:24 ddelon |
* Still some pb |
* |
* Revision 1.7 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.6 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.5.2.3 2006/03/02 00:22:23 ddelon |
* bug afficheur multilinguisme |
* |
* Revision 1.5.2.2 2006/03/01 23:51:07 ddelon |
* bug afficheur multilinguisme |
* |
* Revision 1.5.2.1 2006/02/28 14:02:11 ddelon |
* Finition multilinguisme |
* |
* Revision 1.5 2005/04/21 16:46:17 jpm |
* Gestion via Papyrus du XHTML. |
* |
* Revision 1.4 2005/02/22 18:25:13 jpm |
* Déplacement d'un message d'alerte en cas d'erreur sql. |
* |
* Revision 1.3 2004/12/07 12:24:30 jpm |
* Changement chemin d'accés à l'api Text/Wiki... |
* |
* Revision 1.2 2004/11/26 13:10:05 jpm |
* Utilisation des actions Papyrus et implémentation de la syntaxe Wikini. |
* |
* Revision 1.1 2004/06/16 14:35:26 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.12 2004/05/05 11:35:12 jpm |
* Amélioration de la gestion de l'internationalisation. |
* |
* Revision 1.11 2004/05/05 06:45:40 jpm |
* Suppression de l'appel de la fonction générant le "vous êtes ici" dans la fonction affichant l'entête de l'application. |
* |
* Revision 1.10 2004/05/04 16:28:22 jpm |
* Réduction de code pour la fonction afficherContenuTete(). |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/installateur/bibliotheque/instal_installation.fonct.php |
---|
New file |
0,0 → 1,356 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: instal_installation.fonct.php,v 1.7 2007-01-04 17:06:03 alexandre_tb Exp $ |
/** |
* Bibliothèque des fonctions de l'application Installateur de Papyrus. |
* |
* Ce sous-paquetage contient les fonctions de l'application Installateur de Papyrus. Cette application gère |
* l'installation de Papyrus (base de données). |
* |
*@package Installateur |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.7 $ $Date: 2007-01-04 17:06:03 $ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/**Fonction donnerUrlCourante() - Retourne la base de l'url courante. |
* |
* Cette fonction renvoie la base de l'url courante. |
* Origine : fonction provenant du fichier header.php de Wikini version 0.4.1 |
* Licence : la même que celle figurant dans l'entête du fichier header.php de Wikini version 0.4.1 |
* ou le fichier install_defaut.inc.php de cette application. |
* Auteurs : Hendrik MANS, David DELON, Patrick PAUL, Jean-Pascal MILCENT |
* |
* @return string l'url courante. |
*/ |
function donnerUrlCourante() |
{ |
list($url, ) = explode('?', $_SERVER['REQUEST_URI']); |
return $url; |
} |
/**Fonction testerConfig() - Retourne un message en fonction du résultat du test. |
* |
* Cette fonction retourne un message en fonction du résultat du test. |
* Origine : fonction provenant du fichier header.php de Wikini version 0.4.1 |
* Licence : la même que celle figurant dans l'entête du fichier header.php de Wikini version 0.4.1 |
* ou le fichier install_defaut.inc.php de cette application. |
* Auteurs : Hendrik MANS, David DELON, Patrick PAUL, Jean-Pascal MILCENT |
* |
* @return string l'url courante. |
*/ |
function testerConfig(&$sortie, $texte, $test, $texte_erreur = '', $stop_erreur = 1, $erreur) { |
if ($erreur == 2) { |
return 2; |
} |
$sortie .= $texte.' '; |
if ($test) { |
$sortie .= '<span class="ok"> OK </span><br />'."\n"; |
return 0; |
} else { |
$sortie .= '<span class="failed"> ECHEC </span>'; |
if ($texte_erreur) { |
$sortie .= '<p class="erreur">'.$texte_erreur.'</p>'; |
} |
$sortie .= '<br />'."\n" ; |
if ($stop_erreur == 1) { |
return 2; |
} else { |
return 1; |
} |
} |
} |
/** |
* Removes comment lines and splits up large sql files into individual queries |
* |
* Last revision: September 23, 2001 - gandon |
* Origine : fonction provenant de PhpMyAdmin version 2.6.0-pl1 |
* Licence : GNU |
* Auteurs : voir le fichier Documentation.txt ou Documentation.html de PhpMyAdmin. |
* |
* @param array the splitted sql commands |
* @param string the sql commands |
* @param integer the MySQL release number (because certains php3 versions |
* can't get the value of a constant from within a function) |
* |
* @return boolean always true |
* |
* @access public |
*/ |
function PMA_splitSqlFile(&$ret, $sql, $release) |
{ |
// do not trim, see bug #1030644 |
//$sql = trim($sql); |
$sql = rtrim($sql, "\n\r"); |
$sql_len = strlen($sql); |
$char = ''; |
$string_start = ''; |
$in_string = FALSE; |
$nothing = TRUE; |
$time0 = time(); |
for ($i = 0; $i < $sql_len; ++$i) { |
$char = $sql[$i]; |
// We are in a string, check for not escaped end of strings except for |
// backquotes that can't be escaped |
if ($in_string) { |
for (;;) { |
$i = strpos($sql, $string_start, $i); |
// No end of string found -> add the current substring to the |
// returned array |
if (!$i) { |
$tab_info = retournerInfoRequete($sql); |
$ret[] = array('query' => $sql, 'table_nom' => $tab_info['table_nom'], 'type' => $tab_info['type']); |
return TRUE; |
} |
// Backquotes or no backslashes before quotes: it's indeed the |
// end of the string -> exit the loop |
else if ($string_start == '`' || $sql[$i-1] != '\\') { |
$string_start = ''; |
$in_string = FALSE; |
break; |
} |
// one or more Backslashes before the presumed end of string... |
else { |
// ... first checks for escaped backslashes |
$j = 2; |
$escaped_backslash = FALSE; |
while ($i-$j > 0 && $sql[$i-$j] == '\\') { |
$escaped_backslash = !$escaped_backslash; |
$j++; |
} |
// ... if escaped backslashes: it's really the end of the |
// string -> exit the loop |
if ($escaped_backslash) { |
$string_start = ''; |
$in_string = FALSE; |
break; |
} |
// ... else loop |
else { |
$i++; |
} |
} // end if...elseif...else |
} // end for |
} // end if (in string) |
// lets skip comments (/*, -- and #) |
else if (($char == '-' && $sql_len > $i + 2 && $sql[$i + 1] == '-' && $sql[$i + 2] <= ' ') || $char == '#' || ($char == '/' && $sql_len > $i + 1 && $sql[$i + 1] == '*')) { |
$i = strpos($sql, $char == '/' ? '*/' : "\n", $i); |
// didn't we hit end of string? |
if ($i === FALSE) { |
break; |
} |
if ($char == '/') $i++; |
} |
// We are not in a string, first check for delimiter... |
else if ($char == ';') { |
// if delimiter found, add the parsed part to the returned array |
$retour_sql = substr($sql, 0, $i); |
$tab_info = retournerInfoRequete($retour_sql); |
$ret[] = array('query' => $retour_sql, 'empty' => $nothing, 'table_nom' => $tab_info['table_nom'], 'type' => $tab_info['type']); |
$nothing = TRUE; |
$sql = ltrim(substr($sql, min($i + 1, $sql_len))); |
$sql_len = strlen($sql); |
if ($sql_len) { |
$i = -1; |
} else { |
// The submited statement(s) end(s) here |
return TRUE; |
} |
} // end else if (is delimiter) |
// ... then check for start of a string,... |
else if (($char == '"') || ($char == '\'') || ($char == '`')) { |
$in_string = TRUE; |
$nothing = FALSE; |
$string_start = $char; |
} // end else if (is start of string) |
elseif ($nothing) { |
$nothing = FALSE; |
} |
// loic1: send a fake header each 30 sec. to bypass browser timeout |
$time1 = time(); |
if ($time1 >= $time0 + 30) { |
$time0 = $time1; |
header('X-pmaPing: Pong'); |
} // end if |
} // end for |
// add any rest to the returned array |
if (!empty($sql) && preg_match('@[^[:space:]]+@', $sql)) { |
$tab_info = retournerInfoRequete($sql); |
$ret[] = array('query' => $sql, 'empty' => $nothing, 'table_nom' => $tab_info['table_nom'], 'type' => $tab_info['type']); |
} |
return TRUE; |
} |
/**Fonction retournerInfoRequete() - Retourne le type de requête sql et le nom de la table touchée. |
* |
* Cette fonction retourne un tableau associatif contenant en clé 'table_nom' le nom de la table touchée |
* et en clé 'type' le type de requête (create, alter, insert, update...). |
* Licence : la même que celle figurant dans l'entête de ce fichier |
* Auteurs : Jean-Pascal MILCENT |
* |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
* @return string l'url courante. |
*/ |
function retournerInfoRequete($sql) |
{ |
$requete = array(); |
$resultat=''; |
if (preg_match('/(?i:CREATE TABLE) +(.+) +\(/', $sql, $resultat)) { |
if (isset($resultat[1])) { |
$requete['table_nom'] = $resultat[1]; |
} |
$requete['type'] = 'create'; |
} else if (preg_match('/(?i:ALTER TABLE) +(.+) +/', $sql, $resultat)) { |
if (isset($resultat[1])) { |
$requete['table_nom'] = $resultat[1]; |
} |
$requete['type'] = 'alter'; |
} else if (preg_match('/(?i:INSERT INTO) +(.+) +(?i:\(|VALUES +\()/', $sql, $resultat)) { |
if (isset($resultat[1])) { |
$requete['table_nom'] = $resultat[1]; |
} |
$requete['type'] = 'insert'; |
} else if (preg_match('/(?i:UPDATE) +(.+) +(?i:SET)/', $sql, $resultat)) { |
if (isset($resultat[1])) { |
$requete['table_nom'] = $resultat[1]; |
} |
$requete['type'] = 'update'; |
} |
return $requete; |
} |
/** |
* Reads (and decompresses) a (compressed) file into a string |
* |
* Origine : fonction provenant de PhpMyAdmin version 2.6.0-pl1 |
* Licence : GNU |
* Auteurs : voir le fichier Documentation.txt ou Documentation.html de PhpMyAdmin. |
* |
* @param string the path to the file |
* @param string the MIME type of the file, if empty MIME type is autodetected |
* |
* @global array the phpMyAdmin configuration |
* |
* @return string the content of the file or |
* boolean FALSE in case of an error. |
*/ |
function PMA_readFile($path, $mime = '') |
{ |
global $cfg; |
if (!file_exists($path)) { |
return FALSE; |
} |
switch ($mime) { |
case '': |
$file = @fopen($path, 'rb'); |
if (!$file) { |
return FALSE; |
} |
$test = fread($file, 3); |
fclose($file); |
if ($test[0] == chr(31) && $test[1] == chr(139)) return PMA_readFile($path, 'application/x-gzip'); |
if ($test == 'BZh') return PMA_readFile($path, 'application/x-bzip'); |
return PMA_readFile($path, 'text/plain'); |
case 'text/plain': |
$file = @fopen($path, 'rb'); |
if (!$file) { |
return FALSE; |
} |
$content = fread($file, filesize($path)); |
fclose($file); |
break; |
case 'application/x-gzip': |
if ($cfg['GZipDump'] && @function_exists('gzopen')) { |
$file = @gzopen($path, 'rb'); |
if (!$file) { |
return FALSE; |
} |
$content = ''; |
while (!gzeof($file)) { |
$content .= gzgetc($file); |
} |
gzclose($file); |
} else { |
return FALSE; |
} |
break; |
case 'application/x-bzip': |
if ($cfg['BZipDump'] && @function_exists('bzdecompress')) { |
$file = @fopen($path, 'rb'); |
if (!$file) { |
return FALSE; |
} |
$content = fread($file, filesize($path)); |
fclose($file); |
$content = bzdecompress($content); |
} else { |
return FALSE; |
} |
break; |
default: |
return FALSE; |
} |
return $content; |
} |
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.6 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.5 2005/09/23 14:20:23 florian |
* nouvel habillage installateur, plus correction de quelques bugs |
* |
* Revision 1.4 2004/10/25 16:26:56 jpm |
* Ajout de la gestion des requêtes de type alter et update. |
* |
* Revision 1.3 2004/10/19 16:47:06 jpm |
* Modification de la gestion du texte de sortie dans la fonction testerConfig(). |
* |
* Revision 1.2 2004/10/15 18:28:44 jpm |
* Ajout de fonction utilisée pour l'installation de Papyrus. |
* |
* Revision 1.1 2004/06/16 14:34:12 jpm |
* Changement de nom de Génésia en Papyrus. |
* Changement de l'arborescence. |
* |
* +--Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/installateur/installateur.php |
---|
New file |
0,0 → 1,220 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: installateur.php,v 1.16 2007-04-20 13:31:42 florian Exp $ |
/** |
* Application Installateur de Papyrus. |
* |
* Application permettant de gérer l'installation et les erreurs liés à l'abscence de base de données, |
* d'extenssin PHP... |
* |
*@package Installateur |
//Auteur original : |
*@author |
'AND gm_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '; |
$resultat = $db->query($requete); |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : ''; |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
if ($langue_test!=GEN_I18N_ID_DEFAUT) { |
return GEN_rechercheMenuIdentifiantVersionParDefaut($db,$ligne->gm_id_menu); |
} |
} Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.16 $ $Date: 2007-04-20 13:31:42 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Constante de l'application Installateur. On devrait créer un fichier de config et un de langue pour rendre l'appli portable... |
preg_match('/^(.*)papyrus.php/', $_SERVER['SCRIPT_FILENAME'], $instal_tab_txt); |
define('INSTAL_CHEMIN_ABSOLU', $instal_tab_txt[1]); |
/** Nom du dossier contenant l'application Installateur.*/ |
define('INSTAL_DOSSIER_APPLI', INSTAL_CHEMIN_ABSOLU.GEN_CHEMIN_APPLICATION.'installateur'.GEN_SEP); |
/** Nom du dossier contenant la bibliothèque de code de l'application Installateur.*/ |
define('INSTAL_DOSSIER_BIBLIO', INSTAL_DOSSIER_APPLI.'bibliotheque'.GEN_SEP); |
/** Chemin vers le fichier de configuration de base de l'application Papyrus.*/ |
define('INSTAL_CHEMIN_CONFIG', GEN_CHEMIN_CONFIG.GEN_FICHIER_CONFIG); |
/** Nom du fichier de configuration de Papyrus à créer.*/ |
define('INSTAL_FICHIER_CONFIG', GEN_FICHIER_CONFIG); |
/** Chemin vers le fichier de configuration de base de l'application Papyrus.*/ |
define('INSTAL_CHEMIN_SQL', INSTAL_CHEMIN_ABSOLU.GEN_CHEMIN_INSTAL); |
/** Nom de la constante stockant le numéro de la nouvelle version de l'application Papyrus.*/ |
define('INSTAL_VERSION_NOUVELLE_NOM', 'PAP_VERSION'); |
/** Numéro de la nouvelle version de l'application Papyrus.*/ |
define('INSTAL_VERSION_NOUVELLE', GEN_VERSION); |
if (defined('PAP_VERSION')) { |
define('INSTAL_VERSION_ANCIENNE', PAP_VERSION); |
} else { |
define('INSTAL_VERSION_ANCIENNE', ''); |
} |
/** Nombre d'étapes totale de l'installation.*/ |
define('INSTAL_NBRE_ETAPE', 3); |
// Fichiers à inclure |
require_once INSTAL_DOSSIER_BIBLIO.'instal_installation.fonct.php'; |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
function afficherContenuCorps() |
{ |
// Entête XHTML des pages de l'installation de Papyrus |
$sortie = ''; |
$sortie .= '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"'."\n"; |
$sortie .= '"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'."\n"; |
$sortie .= '<html xmlns="http://www.w3.org/1999/xhtml" lang="fr-FR" xml:lang="fr-FR">'."\n"; |
$sortie .= ' <head>'."\n"; |
$sortie .= ' <link rel="stylesheet" type="text/css" media="screen" title="Installateur" href="papyrus/applications/installateur/presentations/styles/installateur.css" />'."\n"; |
$sortie .= ' <title>Installation de Papyrus</title>'."\n"; |
$sortie .= ' </head>'."\n"; |
$sortie .= ' <body xml:lang="fr" lang="fr" >'."\n"; |
$sortie .= ' <div id="page">'."\n"; |
$sortie .= ' <div id="zone_bandeau">'."\n"; |
$sortie .= ' <div id="logo">'."\n"; |
$sortie .= ' <img src="papyrus/applications/installateur/presentations/images/Logo_papyrus.jpg" alt="Logo Papyrus" />'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' <div id="site_nom">'."\n"; |
$sortie .= ' <h1>Installation de Papyrus</h1>'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' <div id="zone_contenu">'."\n"; |
// Message situation de l'installation |
if (defined('PAP_VERSION')) { |
$sortie .= '<p class="zone_info">Votre système Papyrus existant a été reconnu comme étant la version '. |
INSTAL_VERSION_ANCIENNE.'.<br />'. |
'Vous êtes sur le point de <strong>mettre à jour</strong> Papyrus pour la version '. |
INSTAL_VERSION_NOUVELLE.'.<br />'. |
'Veuillez revoir vos informations de configuration ci-dessous.</p><br style="clear:both;">'."\n"; |
} else { |
$sortie .= '<p class="zone_info">Vous êtes sur le point d\'installer Papyrus '.INSTAL_VERSION_NOUVELLE.'.<br />'. |
'Veuillez configurer votre Papyrus en remplissant les formulaires étape par étape.</p><br style="clear:both;">'."\n"; |
} |
if(!isset($_GET['installation']) || ($_GET['installation'] == 'form_pref' || $_GET['installation'] == 'verif_pref')) { |
include_once GEN_CHEMIN_APPLICATION.'installateur/instal_preference.inc.php'; |
} else if($_GET['installation'] == 'form_bdd' || $_GET['installation'] == 'verif_bdd') { |
include_once GEN_CHEMIN_APPLICATION.'installateur/instal_base_de_donnees.inc.php'; |
} else if($_GET['installation'] == 'form_fichier' || $_GET['installation'] == 'verif_fichier') { |
include_once GEN_CHEMIN_APPLICATION.'installateur/instal_fichier.inc.php'; |
} |
// Pied XHTML des pages de l'installation de Papyrus |
$sortie .= ' </div>'."\n"; |
$sortie .= ' <div id="zone_pied">'."\n"; |
$sortie .= ' <div id="copyright">'."\n"; |
$sortie .= ' <a href="http://frenchmozilla.org"><img src="papyrus/applications/installateur/presentations/images/logo-firefox.png" alt="Logo Firefox" /></a> '."\n"; |
$sortie .= ' <a href="http://validator.w3.org/check?uri=referer"><img src="papyrus/applications/installateur/presentations/images/logo-xhtml11.png" alt="Logo XHTML" /></a> '."\n"; |
$sortie .= ' <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="papyrus/applications/installateur/presentations/images/logo-css.png" alt="Logo CSS" /></a><br />'."\n"; |
$sortie .= ' © <a href="http://www.tela-botanica.org/">Tela Botanica</a> et <a href="http://www.ecole-et-nature.org/">Réseau Ecole et Nature</a> / 2004-2006<br />'."\n"; |
$sortie .= ' Site utilisant <a href="http://outils-reseaux.org/wiki_papyrus">Papyrus, le CMS coopératif</a>'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' </div>'."\n"; |
$sortie .= ' </body>'."\n"; |
$sortie .= '</html>'; |
return $sortie; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.15 2006/10/16 15:49:07 ddelon |
* Refactorisation code mulitlinguisme et gestion menu invisibles |
* |
* Revision 1.14 2006/10/09 14:35:50 ddelon |
* bug caractere invalide trainant dans fichier |
* |
* Revision 1.13 2006/10/05 15:17:29 florian |
* changement presentation |
* |
* Revision 1.12 2006/10/05 15:11:17 florian |
* changement presentation |
* |
* Revision 1.11 2006/10/05 14:41:53 florian |
* changement presentation |
* |
* Revision 1.10 2005/09/23 14:20:23 florian |
* nouvel habillage installateur, plus correction de quelques bugs |
* |
* Revision 1.9 2004/10/27 11:43:32 jpm |
* Correction bogues diff mise à jour / installation. |
* |
* Revision 1.8 2004/10/25 10:22:48 jpm |
* Correction de quelques bogues, ajouts d'explications pour l'utilisateur et modification des styles CSS. |
* |
* Revision 1.7 2004/10/22 17:23:04 jpm |
* Simplification del'installation de Papyrus. |
* |
* Revision 1.6 2004/10/19 17:01:12 jpm |
* Correction bogues. |
* |
* Revision 1.5 2004/10/19 16:47:28 jpm |
* Transformation en fonction de l'appel de l'application. |
* |
* Revision 1.4 2004/10/19 15:59:18 jpm |
* Ajout de la gestion des valeurs propre à Papyrus à insérer dans la base de données. |
* Ajout des constantes FTP. |
* |
* Revision 1.3 2004/10/18 09:12:09 jpm |
* Changement de nom d'un fichier. |
* |
* Revision 1.2 2004/10/15 18:28:59 jpm |
* Début appli installateur de Papyrus. |
* |
* Revision 1.1 2004/06/16 14:33:13 jpm |
* Changement de nom de Papyrus en Papyrus. |
* Changement de l'arborescence. |
* |
* Revision 1.6 2004/04/22 08:25:48 jpm |
* Transformation de $GS_GLOBAL en $_GEN_commun. |
* |
* Revision 1.5 2004/04/08 13:21:05 jpm |
* Le code pour l'installation uniquement. |
* |
* Revision 1.4 2004/04/08 12:25:16 jpm |
* Suppression de tous le code réalisant les vérifications. L'application Installateur ne fera qu'installer Papyrus et non vérifier son bon fonctionnement. |
* |
* Revision 1.3 2004/04/02 16:37:51 jpm |
* Modification des commentaires. |
* |
* Revision 1.2 2004/03/31 16:57:16 jpm |
* Ajout de la gestion des erreur de base de données, de la connexion à celle-ci et des extenssions php disponibles. |
* |
* Revision 1.1 2004/03/29 11:00:12 jpm |
* Transfert d'un morceau de code gérant les erreurs et l'installation mais qui a actuellement aucun effet sur Papyrus. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/installateur/presentations/styles/installateur.old.css |
---|
New file |
0,0 → 1,38 |
* {padding: 0;margin: 0;} |
body {font-family: Tahoma, Arial, Helvetica, sans-serif;text-align: center;color: #566047;line-height: 19px; |
background: #FBFBE5 url(../images/grass.png) right bottom fixed no-repeat;} |
a, a:link, a:visited {color: #566047;text-decoration: underline;background: transparent;} |
a:hover {color: #6878C6;background: transparent;text-decoration: none;} |
a:active, a:focus {color: #566047;background-color: #FBFBE5;} |
p {line-height: 19px;} |
acronym {font-weight: bold;text-decoration: none;border-bottom: none;} |
#container {margin: auto;text-align: left;width: 760px;border-left:solid 2px #BCBCAB;border-right:solid 2px #BCBCAB;} |
#zone_bandeau {color: #566047;background: #E9EBD3;width: 760px;height: 70px;margin:5px auto; |
border-top:solid 3px #838E6C;border-bottom:solid 3px #838E6C;} |
#logo {float : left;margin: 3px 0 0 10px;} |
#site_nom {width:300px;text-align: center;margin:20px auto;background: transparent;color: #566047;} |
#zone_contenu {margin: 6px;font-size:70%;} |
#zone_pied {clear:both;text-align:center;background: #E9EBD3;color: #566047;width: 760px;height: 40px;margin:5px auto; |
border-top:solid 3px #838E6C;border-bottom:solid 3px #838E6C;font-size:70%;padding-top:5px;} |
h1, h2, h3 {margin-bottom: 10px;height: 22px;border-bottom: 1px solid #7D8965;} |
h1 {font-size: 1.5em;} |
h2 {font-size: 1.3em;} |
h3 {font-size: 1.2em;} |
li {text-align:left;margin-left:20px;} |
table {border-collapse: collapse;border-spacing: 0;} |
th, td {text-align:left;padding:2px;border: solid 1px } |
tt {font-size:12px;} |
img {border:0;} |
fieldset {border:solid 1px #7D8965;padding:3px;margin:2px;} |
legend {font-weight:bold;} |
input:hover {background:#7D8965;color: #FBFBE5;} |
input, select, textarea {font-family: Tahoma, Arial, Helvetica, sans-serif;font-size:11px;color: #566047;background:#FDFDF3;border:solid 1px #7D8965;} |
/* Mise en ligne des formulaires */ |
form li {margin:0;padding:0;display: block;} |
form ul {margin:0;padding:0;list-style-type: none;} |
form label {clear:both;float: left;width:250px;font-weight:bold;} |
.liste_bouton li {display:inline;} |
.erreur {color:red;} |
.etape_info {margin:10px auto;padding 5px;text-align:center;width:90%;border: 1px solid green;color:green;} |
.ok {text-align:center;border: 1px solid green;color:green;} |
.failed {text-align:center;border: 1px solid red;color:red;} |
/branches/livraison_aha/papyrus/applications/installateur/presentations/styles/installateur.css |
---|
New file |
0,0 → 1,105 |
/*****************Proprietes generales******************************************/ |
* {margin: 0; padding: 0;text-indent:0;} |
body {background:#FFF;font:12px Myriad, Arial, sans-serif;color:#000;text-align:center;} |
hr {margin:2px; width:100%; color: #7F8343; background-color: #7F8343; height: 1px;} |
a {margin:0;padding:0;text-decoration: underline;color: #000;} |
a:hover {text-decoration: underline;color:#C3D759;} |
table {width:480px;margin:0 auto; border: 1px solid #006495;border-spacing:0;border-collapse:collapse;} |
.table_cadre {width:480px;margin:2px;} |
th {font-size:11px;padding:2px;text-align:center;border: 1px solid #006495;font-weight: normal;background:#3082AA;height:23px;} |
td {font-size:11px;text-align:center;border: 1px solid #006495;background:#FFF;height:23px;} |
td:hover {background: #C3D759;} |
.code { background: #FFFFFF; border: solid #888888 2px; font-family: 'Courier New', Courier; width: 90%; height: 350px; overflow: scroll; padding: 3px; } |
.navi {padding:0;margin:0;text-align:center;} |
.other_month {color:#AAA;} |
.current_day {background: #FBB63C; color: #FFF;} |
.label_inscription {margin: 2px;float:left; clear:both; width:170px; text-align:right; } |
.symbole_obligatoire {color:red;} |
.input_inscription {float:left; width:180px;} |
.input_inscription input, .input_inscription select {margin: 2px;border: 1px solid #000;font:12px Myriad, Arial, sans-serif; } |
.erreur {background-color:#FFEEEE;border:1px; |
border: 1px dotted #A81106;padding:1px;margin:3px;} |
/*****************Titres********************************************************/ |
h1, h2, h3, h4, h5, h6 {font-family: Myriad, Arial, sans-serif;text-align:left;margin:4px 0;} |
h1 {font-size:22px; color: #BBD049;border-bottom: solid #7FB1CA 1px ;} |
h2 {font-size:18px; color: #A81106;} |
h3 {font-size:17px; color: #000;} |
h4 {font-size:16px; color: #FFF;background: #006495;border: 1px solid #C3D759;;-moz-border-radius:5px} |
h5 {font-size:16px; color: #006495;border-bottom: solid #006495 1px;} |
h6 {font-size:32px; color: #006495;} |
/*****************Boutons et formulaires****************************************/ |
a img {border: none;} |
form li {list-style-type:none;color:#000;} |
form table, form td, form th {border:0} |
form td:hover {background: transparent;} |
label {padding-right:10px;} |
input {margin:2px;background:#EEEEE9;} |
/*****************Listes********************************************************/ |
ul {padding:0;margin: 0 0 0 10px;} |
li {padding:0;margin: 2px 0 0 0;color:#000;} |
/*--------------------------------------------------------------------------------------------------------------*/ |
/* Structure de la page */ |
#page {position: relative;top:3px;width: 760px; text-align: left;margin: 0 auto;} |
.page {clear:both;background-color:transparent;text-align: justify;line-height: 22px;} |
#zone_bandeau {height: 130px;background: url(../images/Bandeau_haut.png) no-repeat top left;} |
#logo {position: absolute;top: 10px;left: 30px;} |
#site_nom {position: absolute;top: 40px;left: 210px;width:500px;} |
#site_nom h1 {margin: 0 auto;width:500px;font-size: 30px; font-family: Georgia, serif;color:#3082AA;border:0;} |
#site_nom h6 { margin: 0 auto;width:500px;} |
#vous_etes_ici {clear:both;float:left;width:762px;margin: 0 0 10px 20px;} |
#zone_contenu {float:left; margin : 10px auto; padding : 10px ;width: 740px;_width: 760px;border: 1px solid #3082AA;-moz-border-radius:10px;} |
#zone_bandeau_menu {clear: both;float:left;width:178px;border: 1px solid #7FB1CA;background: #7FB1CA;-moz-border-radius:10px;margin : 5px; padding:0;} |
#zone_bandeau_menu h1 {width:90%;padding:0;margin:10px auto 6px auto;font:13px Myriad, Arial, sans-serif;font-weight: bold;text-align:center;color:#A01B12;background:transparent;border-bottom:1px solid #FFF;} |
#menu ul {display: block;margin:3px 3px 3px 20px;padding:0;} |
#menu li, #menu li li {margin:2px 0;padding:0;} |
#menu li ul {margin:4px 0 2px 2px;padding:0;} |
.calendar {width:160px;margin:0 auto;} |
#menu li a {display: block;padding: 3px; margin: 0 3px 0 3px; width: 145px; text-decoration: none; color: #FFF; background: transparent ;border: 1px solid #7FB1CA; height:17px;text-align:left;} |
#menu li a:hover {color: #000;background: #C3D759;width: 145px;border: 1px solid #006495;} |
#menus_communs {float:right;text-align : right;width:600px;margin:10px 10px 0 0;} |
#menus_communs li {padding: 0 1px;list-style-type:none; display: inline;background: transparent;} |
#menus_communs a:hover {color: #7FB1CA;} |
#zone_menu {float:left;margin: 0 20px 10px 20px;padding:1px;height:26px;background: #BBD049;} |
#zone_menu ul {margin:0;padding:0;color: #000;} |
#zone_menu li {list-style-type:none;float: left;margin:1px;padding:0;width: 135px;background: #3082AA;height:23px;} |
#zone_menu li:hover {background: #C3D759;} |
#zone_menu li a {display: block;padding: 3px; width: 135px; color : #FFF;text-decoration: none; background: transparent; height:17px;text-align:center;} |
#zone_menu li a:hover {color: #000;} |
#zone_onglets {float : right;margin : 0 20px -1px 0 ;text-align:left;font-weight:bold;} |
#zone_onglets ul { margin:0; padding:0; list-style:none;} |
#zone_onglets li { background:url(../images/Boutons/right_both_green.png) no-repeat right top; float:left; margin:0; padding:0; color: #006495;} |
#zone_onglets a {float:left; display:block; color: #006495; font-size:12px; background:url(../images/Boutons/left_both_green.png) no-repeat left top; width:.1em; white-space:nowrap;/*2 lignes ajoutees pour compatibilite IE : extension de la zone cliquable a l'ensemble de zone_contenu_haut*/ padding:5px 15px 4px; text-decoration:none;} |
/* On retablit le float a sa valeur correct mais le hack de l'antislash commente cache cette regle a IE5-Mac \*/ #zone_onglets a {float:none;} /* End IE5-Mac hack */ |
#zone_onglets > ul a { width:auto;} /*propriete ajoutee pour contredire la ligne speciale IE (ci dessus) pour les autres navigateurs*/ |
#zone_onglets li:hover { background-position:100% -150px;} |
#zone_onglets li:hover a { background-position:0% -150px;} |
#zone_onglets .inactif { border-bottom:0px solid; font-weight:normal;} |
#zone_onglets .actif, #zone_onglets .actif { position:relative; background-position:100% -150px; padding-bottom:2px; font-weight:bold;} |
#zone_onglets .actif a, #zone_onglets .actif a { position:relative; background-position:0% -150px; padding-bottom:3px;} |
#zone_contenu_tete {float :left; width : 530px; padding : 10px 0 0 20px;} |
.zone_alert, .pap_erreur {float:left;clear:both;text-indent : 0; text-align: left;min-height:56px;width : 460px; margin : 5px 0 5px 0; border: 1px solid #A81106; background: #FFF url(../images/Main_Erreur.png) no-repeat top left;padding: 5px 0px 5px 76px;-moz-border-radius:12px;} |
.zone_info, .etape_info {float:left;clear:both;-moz-border-radius:12px; text-indent : 0; text-align: left;min-height:56px;width :460px; margin : 0 15px 15px 0; border: 1px solid #D0DF7F; background: #FFF url(../images/Infos.png) no-repeat top left;padding: 5px 0px 5px 76px;} |
#zone_contenu_corps {text-indent : 15px; float: left; width:521px; margin : 20px 0px 10px 20px;padding : 0 0px 10px 0; text-align: justify;} |
.spacer {width:742px;clear: both;} |
#zone_pied {margin: 3px 0 10px 0;padding:0;float:left;width: 762px;height : 65px;background: url(../images/Bandeau_bas.png) repeat-x top left;} |
#zone_pied a {font: 12px arial, sans-serif; color: #006495;} |
#zone_pied a:hover {text-decoration: none;font: 12px arial, sans-serif; color: #FFF;} |
/*-------------------------------APPLETTES--------------------------------------*/ |
#moteur_recherche {clear:both;float:right;margin:0 5px 0 0;padding:0;width:180px;height: 33px;text-align:right;} |
#moteur_recherche legend {display:none;} |
#moteur_recherche fieldset {margin:0;padding:0;border: 0;} |
#moteur_recherche label {display:none;} |
#more_motif {padding:2px;width:140px;border:#000 1px groove;font: 12px arial, sans-serif; color: #000;} |
#sesi_ok, #more_ok {border:#B77744 1px solid;font: 12px arial, sans-serif; color: #FFF;padding:0;margin:0;background: #B77744;text-transform: uppercase;} |
#selecteur_monde {clear:right;float:right;margin:25px 5px 0 0;padding:0;width: 180px;height: 33px;text-align:right;} |
#selecteur_monde select {font: 12px arial, sans-serif;width:140px;border:#000 1px groove;} |
#selecteur_monde legend { display: none;} |
#selecteur_monde fieldset { border: 0; margin: 0; padding: 0;} |
#copyright {margin:15px 0 10px 10px;padding : 0;float:left;width: 400px;} |
#copyright a {color: #006495;;} |
#copyright a:hover {color: #222;} |
#identification {width:170px;margin:0 auto;} |
#identification fieldset {border: 1px #FFF;margin: 0 auto;padding: 5px;background:#FFF;-moz-border-radius:20px;} |
#identification legend {display: none;} |
#identification label {display: block;} |
#identification input {border:1px solid #000;} |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Bandeau_haut.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Bandeau_haut.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-firefox.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-firefox.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Bandeau_bas.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Bandeau_bas.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_gauche.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_gauche.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_gauche.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_gauche.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_droit.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_droit.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/left_both_green.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/left_both_green.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_droit.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_droit.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_milieu.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_milieu.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/right_both_green.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/right_both_green.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_milieu.gif |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Boutons/onglet_contenu_hover_milieu.gif |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-css.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-css.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Agraphe.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Agraphe.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Main_Erreur.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Main_Erreur.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-xhtml11.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/logo-xhtml11.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_descendre.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_descendre.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_diminuer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_diminuer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_modifier.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_modifier.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_fermer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_fermer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_administrer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_administrer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_monter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_monter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_ouvrir.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_ouvrir.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_supprimer.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_supprimer.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_augmenter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_augmenter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_ajouter.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/navigation/adme_ajouter.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Calendrier-coin-jaune.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Calendrier-coin-jaune.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Infos.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Infos.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/picto.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/picto.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Logo_papyrus.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/applications/installateur/presentations/images/Logo_papyrus.jpg |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/applications/installateur/instal_fichier.inc.php |
---|
New file |
0,0 → 1,474 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (c) 2002, Hendrik Mans <hendrik@mans.de> | |
// | Copyright 2002, 2003 David DELON | |
// | Copyright 2002 Patrick PAUL | |
// | Copyright 2003 Jean-Pascal MILCENT | |
// | All rights reserved. | |
// | Redistribution and use in source and binary forms, with or without | |
// | modification, are permitted provided that the following conditions | |
// | are met: | |
// | 1. Redistributions of source code must retain the above copyright | |
// | notice, this list of conditions and the following disclaimer. | |
// | 2. Redistributions in binary form must reproduce the above copyright | |
// | notice, this list of conditions and the following disclaimer in the | |
// | documentation and/or other materials provided with the distribution. | |
// | 3. The name of the author may not be used to endorse or promote products | |
// | derived from this software without specific prior written permission. | |
// | | |
// | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
// | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | |
// | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |
// | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | |
// | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | |
// | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |
// | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: instal_fichier.inc.php,v 1.36 2007-08-28 14:37:11 jp_milcent Exp $ |
/** |
* Page de creation des fichiers necessaire a l'installation de Papyrus. |
* |
* Page permettant de creer le fichier de configuration de Papyrus. |
* |
*@package Installateur |
//Auteur original : |
*@author Hendrik MANS <hendrik@mans.de> |
//Autres auteurs : |
*@author David DELON |
*@author Patrick PAUL |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.36 $ $Date: 2007-08-28 14:37:11 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Numéro de l'étape d'installation : |
$num_etape = 3; |
// Initialisation du tableau contenant les valeurs de configuration de la base de données |
$tableau = array( 'PAP_FTP_SERVEUR' => '', 'PAP_FTP_PORT' => '', 'PAP_FTP_UTILISATEUR' => '', |
'PAP_FTP_MOT_DE_PASSE' => '', 'PAP_FTP_RACINE' => ''); |
foreach ($tableau as $cle => $val) { |
if (!empty($_POST['fichier'][$cle])) { |
$fichier[$cle] = $_POST['fichier'][$cle]; |
} else if (defined($cle)) { |
$fichier[$cle] = constant($cle); |
} else { |
if ($cle == 'PAP_FTP_SERVEUR') { |
$fichier[$cle] = $_SERVER['HTTP_HOST']; |
} else if ($cle == 'PAP_FTP_PORT') { |
$fichier[$cle] = 21; |
} else { |
$fichier[$cle] = ''; |
} |
} |
} |
// Récupération des paramêtres de configuration du formulaire précédent |
if (isset($_POST['pref_serial'])) { |
$pref = unserialize(stripslashes($_POST['pref_serial'])); |
} |
if (isset($_POST['bdd'])) { |
$bdd = $_POST['bdd']; |
} else if (isset($_POST['bdd_serial'])) { |
$bdd = unserialize(stripslashes($_POST['bdd_serial'])); |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Affichage d'informations... |
$sortie .= '<br /><h1>Étape n°'.$num_etape.' sur '.INSTAL_NBRE_ETAPE.'.</h1>'."\n"; |
// Correction éventuelle des informations saisies par l'utilisateur |
if (ereg('^[\/\\]', $fichier['PAP_FTP_RACINE']) == false) { |
// le chemin FTP ne doit pas commencer par un slash, nous le supprimons |
$fichier['PAP_FTP_RACINE'] = GEN_SEP.$fichier['PAP_FTP_RACINE']; |
} |
// Nous vérifions si nous sommes en phase de test du formulaire de config de l'écriture de fichier |
$erreur = 0; |
$sortie_verif = ''; |
if ($_GET['installation'] == 'verif_fichier') { |
// Test de la configuration du FTP |
$sortie_verif .= ' <br /><h2>Test de la connexion FTP</h2>'."\n"; |
$erreur = testerConfig($sortie_verif, 'Test connexion FTP ...', $ftp = @ftp_connect($fichier['PAP_FTP_SERVEUR'], $fichier['PAP_FTP_PORT']), '', 1, $erreur); |
$erreur = testerConfig($sortie_verif, 'Test identification sur le serveur FTP ...', @ftp_login($ftp, $fichier['PAP_FTP_UTILISATEUR'], |
$fichier['PAP_FTP_MOT_DE_PASSE']), 'Les paramêtres FTP saisies ne permettent pas l\'identification !', 1, $erreur); |
$sortie_verif .= '<br />'."\n"; |
$configCode = "<?php\n// pap_config.inc.php construit le ".strftime("%c")."\n// ne changez pas la version de Papyrus manuellement!\n\n"; |
$entries[] = 'define(\''.INSTAL_VERSION_NOUVELLE_NOM.'\',\''.INSTAL_VERSION_NOUVELLE.'\');'."\n"; |
foreach ($bdd as $cle => $val) { |
$entries[] = 'define(\''.$cle.'\',\''.$val.'\');'."\n"; |
} |
$entries[] = "define('PAP_DSN', 'mysql://'.PAP_BDD_UTILISATEUR.':'.PAP_BDD_MOT_DE_PASSE.'@'.PAP_BDD_SERVEUR.'/'.PAP_BDD_NOM);"."\n"; |
foreach ($fichier as $cle => $val) { |
$entries[] = 'define(\''.$cle.'\',\''.$val.'\');'."\n"; |
} |
foreach ($pref as $cle => $val) { |
// Nous recuperons uniquement les constantes a stocker dans le fichier de config (leur nom commence par PAP_) |
if (preg_match('/^PAP_/', $cle)) { |
if (preg_match('/^[0-9]+|(?i:true|false)$/', $val)) { |
$entries[] = 'define(\''.$cle.'\','.$val.');'."\n"; |
} else { |
$entries[] = 'define(\''.$cle.'\',\''.$val.'\');'."\n"; |
} |
} |
} |
$configCode .= implode("\n", $entries)."\n\n?>"; |
if ($erreur == 0) { |
// +-----------------------------------------------------------------------------------------------------------+ |
// Tentative d'écriture du fichier de config |
$sortie_verif .= ' <h2>Ecriture des fichiers sur le serveur par FTP</h2>'."\n"; |
$chemin_fpt_absolu = $fichier['PAP_FTP_RACINE'].INSTAL_CHEMIN_CONFIG; |
$url_ftp = 'ftp://'.$fichier['PAP_FTP_UTILISATEUR'].':'.$fichier['PAP_FTP_MOT_DE_PASSE']. |
'@'.$fichier['PAP_FTP_SERVEUR'].$chemin_fpt_absolu; |
// Dans le cas, ou nous mettons à jour Papyrus, il faut supprimer l'ancien fichier de config |
if (INSTAL_VERSION_ANCIENNE != '') { |
$txt_suppression = 'Suppression de <tt>'.$chemin_fpt_absolu.'</tt>...'; |
$txt_suppression_erreur = '<p>Le fichier <tt>'.$chemin_fpt_absolu.'</tt> ne peut être supprimer automatiquement. '. |
'Veuillez utiliser un logiciel de transfert de fichier par FTP pour le supprimer.</p>'; |
$erreur = testerConfig($sortie_verif, $txt_suppression, unlink($url_ftp), $txt_suppression_erreur, 1, $erreur); |
} |
$tempfn = tempnam('',''); |
$temp = fopen($tempfn, 'w'); |
fwrite($temp, $configCode); |
fclose($temp); |
$fichier_config_source = $tempfn; |
$fichier_config_cible = $fichier['PAP_FTP_RACINE'].'papyrus/configuration/pap_config.inc.php'; |
// Nous écrivons le fichier de config sur le disque |
$txt_ecriture_conf = 'Écriture sur le serveur de <tt>'.$fichier_config_cible.'</tt>...'; |
$txt_ecriture_conf_erreur = '<span class="failed">AVERTISSEMENT:</span> Le fichier de configuration <tt>'.$fichier_config_cible. |
'</tt> n\'a pu être créé. Veuillez vous assurez que votre serveur a les droits '. |
'd\'accès en écriture pour ce fichier. Si pour une raison quelconque vous ne pouvez pas '. |
'faire ça vous devez copier les informations suivantes dans un fichier et les transférer '. |
'au moyen d\'un logiciel de transfert de fichier (ftp) sur le serveur dans un fichier '. |
'<tt>pap_config.inc.php</tt> directement dans le répertoire <tt>configuration</tt> du répertoire '. |
'<tt>papyrus</tt> de Papyrus. Une fois que vous aurez fait cela, votre site Papyrus devrait fonctionner '. |
'correctement.'; |
$txt_ecriture_conf_erreur .= '<div class="code"><code><pre>'.htmlentities($configCode).'</pre></code></div>'."\n"; |
$erreur = testerConfig($sortie_verif, $txt_ecriture_conf, |
ftp_put($ftp, $fichier_config_cible, $fichier_config_source, FTP_ASCII), |
$txt_ecriture_conf_erreur, 1, $erreur); |
// +-----------------------------------------------------------------------------------------------------------+ |
// Tentative d'écriture du fichier .htaccess |
$fichier_htaccess_chemin = $fichier['PAP_FTP_RACINE'].'.htaccess'; |
$url_ftp_htaccess = 'ftp://'.$fichier['PAP_FTP_UTILISATEUR'].':'.$fichier['PAP_FTP_MOT_DE_PASSE']. |
'@'.$fichier['PAP_FTP_SERVEUR'].$fichier['PAP_FTP_RACINE'].'/.htaccess'; |
if (isset($pref['PAP_HTACCESS_REGENERATION']) && $pref['PAP_HTACCESS_REGENERATION'] == 1) { |
$txt_suppression_htaccess = 'Suppression de <tt>'.$fichier_htaccess_chemin.'</tt>...'; |
$txt_suppression_htaccess_erreur = '<p>Le fichier <tt>'.$fichier_htaccess_chemin.'</tt> ne peut être supprimer automatiquement. '. |
'Veuillez utiliser un logiciel de transfert de fichier par FTP pour le supprimer.</p>'; |
$erreur = testerConfig($sortie_verif, $txt_suppression_htaccess, unlink($url_ftp_htaccess), $txt_suppression_htaccess_erreur, 1, $erreur); |
} |
$url_parse = parse_url('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); |
$prefixe = dirname($url_parse['path']); |
// Gestion des urls du style : http://www.tela-botanica.org/~mon_home/ |
$prefixe_tilde = ''; |
if (preg_match('/^\/~/', $prefixe)) { |
$prefixe_tilde = $prefixe.'/'; |
} |
$url = 'http://'.$_SERVER['HTTP_HOST'].$prefixe; |
if (isset($pref['PAP_URL_REECRITURE']) && $pref['PAP_URL_REECRITURE'] == 1) { |
$on_off = 'on'; |
} else { |
$on_off = 'off'; |
} |
$contenu_htaccess = '# Raccourci pour les menus et sites de Papyrus'."\n". |
'RewriteEngine '.$on_off."\n". |
'# si le fichier ou le dossier existe dans le système de fichier on l\'utilise directement'."\n". |
'RewriteCond %{REQUEST_FILENAME} !-d'."\n". |
'RewriteCond %{REQUEST_FILENAME} !-f'."\n\n". |
'# Réecriture d\'url pour valider les inscriptions'."\n". |
'RewriteRule ^ins_([0-9a-z]*)$ page:inscription?id=$1 [QSA,L]'."\n". |
'# Réecriture d\'url pour les applications de Papyrus n\'utilisant pas correctement Pap_URL'."\n". |
'# ATTENTION : ne marche pas pour les formulaires en mode POST !'."\n". |
'RewriteRule ^([^\/]+)&(.*)$ '.$url.'/$1?$2 [QSA,L,R=301]'."\n". |
'# Réecriture d\'url pour les vieux permaliens'."\n". |
'RewriteCond %{REQUEST_FILENAME}/ !-d'."\n". |
'RewriteRule ^([^\/\?:.]+)$ '.$url.'/page:$1 [QSA,L,R=301]'."\n". |
'# Redirection d\'url pour le sélecteur de site'."\n". |
'# Le point d\'interrogation sans rien aprés, vide la QUERY_STRING sinon elle est concacténée à l\'url et cela plante...'."_n". |
'# Le "/" initial dans la RewriteCond est obligatoire!'."\n". |
'RewriteCond %{REQUEST_URI}?%{QUERY_STRING} ^'.$prefixe.'/papyrus\.php\?site=([^&]+)$'."\n". |
'RewriteRule ^papyrus.php$ '.$url.'/site:%1? [L,R=301]'."\n\n". |
'# Réecriture d\'url pour les sites de Papyrus : à modifier si les valeurs par défaut ont été changées'."\n". |
'RewriteRule ^site:.+$ '.$prefixe_tilde.'papyrus.php [QSA,L]'."\n". |
'# Réecriture d\'url pour les menus de Papyrus : à modifier si les valeurs par défaut ont été changées'."\n". |
'RewriteRule ^page:.+$ '.$prefixe_tilde.'papyrus.php [QSA,L]'."\n\n". |
'# Gestion des erreurs 404'."\n". |
'ErrorDocument 404 '.$prefixe.'/erreur_http.php?erreur=404'; |
if (file_exists($fichier_htaccess_chemin)) { |
$sortie_verif .='<p>Attention: Un fichier .htaccess est déjà présent sur le serveur.'. |
'<br />'.$fichier_htaccess_chemin. |
'<br />Veillez à le configurer correctement<br /><br />'. |
'Contenu par défaut: <br /><br /> ErrorDocument 404 /erreur_404.php'; |
} else { |
$tempfn = tempnam('', ''); |
$temp = fopen($tempfn, 'w'); |
fwrite($temp, $contenu_htaccess); |
fclose($temp); |
$fichier_config_source = $tempfn; |
$fichier_config_cible = $fichier_htaccess_chemin; |
$txt_ecriture_conf_erreur = 'AVERTISSEMENT: Le fichier .htaccess <tt>'.$fichier_config_cible. |
'</tt> n\'a pu être créé. Veuillez vous assurez que votre serveur a les droits '. |
'd\'accès en écriture pour ce fichier. Si pour une raison quelconque vous ne pouvez pas '. |
'faire ça vous devez copier les informations suivantes dans un fichier et les transférer '. |
'au moyen d\'un logiciel de transfert de fichier (ftp) sur le serveur dans un fichier '. |
'<tt>.htaccess</tt> directement à la racine de '. |
'<tt>papyrus</tt> de Papyrus.'; |
$txt_ecriture_conf_erreur .= '<div class="code"><code><pre>'.htmlentities($contenu_htaccess).'</pre></code></div>'."\n"; |
$txt_ecriture_conf = 'Écriture sur le serveur du fichier .htaccess... <tt>'.$fichier_config_cible.'</tt>'."\n"; |
$erreur = testerConfig($sortie_verif, $txt_ecriture_conf, ftp_put($ftp, $fichier_config_cible,$fichier_config_source, FTP_ASCII), $txt_ecriture_conf_erreur, 1, 0); |
} |
// maj_fichier_config_appli($ftp,$fichier,'api/fckeditor/editor/filemanager/browser/default/connectors/php/config.php',array("Caldeira"=>"DDDDD")); |
} |
} |
// Mise à jour des fichiers de configuration de chaque application : |
function maj_fichier_config_appli($ftp, $fichier, $fichierconfig, $elements) { |
$tempfn = tempnam('', ''); |
ftp_get($ftp,$tempfn,$fichier['PAP_FTP_RACINE'].$fichierconfig,FTP_ASCII); |
$fp = fopen($tempfn, 'r'); |
if ($fp) { |
while (!feof($fp)) { |
$cont .= fread($fp, 500); |
} |
fclose($fp); |
$fp = fopen($tempfn, 'w'); |
if ($fp) { |
foreach ($elements as $element) { |
list($expr,$rempl)=$elements; |
preg_replace('/'.$expr.'/',$rempl,$cont); |
} |
fwrite($fp, $cont); |
fclose($fp); |
ftp_put($ftp, $fichier['PAP_FTP_RACINE'].$fichierconfig, $tempfn, FTP_ASCII); |
} |
} |
} |
// Gestion de l'affichage |
if ($erreur == 0 && empty($sortie_verif)) { |
// Premier appel du fichier... |
$sortie .= creerFormulaire($fichier); |
$sortie .= '<li><input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" /></li>'."\n"; |
$sortie .= '<li><input type="hidden" name="bdd_serial" value="'.htmlentities(serialize($bdd)).'" /></li>'."\n"; |
$sortie .= '<li><input type="submit" value="Tester" /></li>'."\n"; |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
} else if ($erreur == 2 && !empty($sortie_verif)) { |
// Verification du fichier avec interuption... |
$sortie .= creerFormulaire($fichier); |
$sortie .= '<li><input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" /></li>'."\n"; |
$sortie .= '<li><input type="hidden" name="bdd_serial" value="'.htmlentities(serialize($bdd)).'" /></li>'."\n"; |
$sortie .= '<li><input type="submit" value="Tester à nouveau" /></li>'."\n"; |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
$sortie .= $sortie_verif; |
} else if (($erreur == 0 || $erreur == 1) && !empty($sortie_verif)) { |
// Verification du fichier sans interuption... passage a l'etape suivante |
$sortie .= creerFormulaire($fichier, true); |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
$sortie .= $sortie_verif; |
// Ecriture du fichier... |
fwrite($fp, $configCode); |
fclose($fp); |
$sortie .= ' <br /><p class="etape_info">Voila c\'est terminé ! Vous pouvez <a href="'.donnerUrlCourante().'">retourner sur votre site '. |
'Papyrus</a>. Il est conseillé de retirer l\'accès en écriture au fichier '. |
'<tt>pap_config.inc.php</tt>. Ceci peut être une faille dans la sécurité.</p>'."\n"; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE DES FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
// Creation du formulaire de configuration de la base de donnees |
function creerFormulaire($fichier, $bln_lecture = false) { |
$disabled = ''; |
if ($bln_lecture) { |
$disabled = ' disabled="disabled" '; |
} |
$sortie_form .= ' <form action="'.donnerUrlCourante().'?installation=verif_fichier" method="post">'; |
$sortie_form .= ' <ul>'."\n"; |
$sortie_form .= '<li><br /><h2>Configuration du FTP et des chemins d\'accès</h2></li>'."\n"; |
$sortie_form .= '<li>Entrer le nom de dommaine pour accéder à votre dépôt FTP</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="ftp_serveur">Nom du serveur FTP :</label>'. |
'<input id="ftp_serveur"'.$disabled.'type="text" size="30" name="fichier[PAP_FTP_SERVEUR]" value="'.$fichier['PAP_FTP_SERVEUR'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Le numéro du port pour le service FTP sur la machine hébergeant Papyrus. '. |
'En général c\'est 21.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="ftp_port">N° du port d\'accès au serveur FTP :</label>'. |
'<input id="ftp_port"'.$disabled.'type="text" size="20" name="fichier[PAP_FTP_PORT]" value="'.$fichier['PAP_FTP_PORT'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Nom et mot de passe FTP qui sera utilisé pour se connecter à au dépôt FTP.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="ftp_utilisateur">Nom d\'utilisateur pour le serveur FTP :</label>'. |
'<input id="ftp_utilisateur"'.$disabled.'type="text" size="20" name="fichier[PAP_FTP_UTILISATEUR]" value="'.$fichier['PAP_FTP_UTILISATEUR'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="ftp_mot_de_passe">Mot de passe pour le serveur FTP :</label>'. |
'<input id="ftp_mot_de_passe"'.$disabled.'type="password" size="20" name="fichier[PAP_FTP_MOT_DE_PASSE]" value="'.$fichier['PAP_FTP_MOT_DE_PASSE'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Lorsque vous vous connectez par FTP sur le serveur où vous avez déposé les fichiers de Papyrus, le '. |
'dossier le plus haut auquel vous pouvez accéder dans l\'arborescence est la racine. Il vous faut donc '. |
'indiquez dans le champ ci-dessous le chemin absolu depuis cette racine jusqu\'au dossier contenant le fichier '. |
'<tt>papyrus.php</tt>. Exemple : <i>/www/</i></li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="ftp_racine">Racine dépôt FTP :</label>'. |
'<input id="ftp_racine"'.$disabled.'type="text" size="60" name="fichier[PAP_FTP_RACINE]" value="'.$fichier['PAP_FTP_RACINE'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Si vous voulez générer un nouveau fichier .htaccess, cochez cette case (si vous ne savez pas ce qu\'est un fichier .htaccess '. |
'n\'activez pas cette option).</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="htaccess_regeneration">Remplacer mon fichier .htacces :</label>'. |
'<input id="htaccess_regeneration"'.$disabled.'type="checkbox" name="pref[PAP_HTACCESS_REGENERATION]" value="1" />'. |
'Activation'.'</li>'."\n"; |
return $sortie_form; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.35 2007-06-26 12:08:18 jp_milcent |
* Correction de l'encodage et de la création du htaccess. |
* |
* Revision 1.34 2007-04-20 14:55:24 alexandre_tb |
* charset |
* |
* Revision 1.33 2007/04/20 12:55:07 ddelon |
* config fckeditor |
* |
* Revision 1.32 2007/04/20 12:49:41 ddelon |
* config fckeditor |
* |
* Revision 1.31 2007/04/20 10:15:15 alexandre_tb |
* correction typo |
* |
* Revision 1.30 2007/04/20 09:18:09 alexandre_tb |
* correction pb encodage |
* |
* Revision 1.29 2007/04/20 09:13:37 alexandre_tb |
* correction pb encodage |
* |
* Revision 1.28 2007/04/20 09:05:46 alexandre_tb |
* correction pb encodage |
* |
* Revision 1.27 2007/04/19 16:53:57 neiluj |
* fix de l'upload des fichiers de conf (ftp_put) |
* |
* Revision 1.26 2007/04/19 15:34:35 neiluj |
* préparration release (livraison) "Narmer" - v0.25 |
* |
* Revision 1.25 2006/12/01 15:43:01 alexandre_tb |
* prise en compte dans le rewriteengine de l'activation ou non de la reecriture |
* |
* Revision 1.24 2006/12/01 11:47:10 alexandre_tb |
* suppression de var_dump |
* |
* Revision 1.23 2006/12/01 11:46:11 alexandre_tb |
* correction creation .htaccess |
* |
* Revision 1.22 2006/11/30 17:41:30 alexandre_tb |
* ecriture htaccess |
* |
* Revision 1.21 2006/11/30 17:36:29 alexandre_tb |
* ecriture htaccess |
* |
* Revision 1.20 2006/11/30 16:41:42 alexandre_tb |
* ecriture htaccess |
* |
* Revision 1.19 2006/11/30 15:50:25 ddelon |
* installation fichier |
* |
* Revision 1.18 2006/11/30 15:34:51 alexandre_tb |
* ecriture htaccess |
* |
* Revision 1.17 2006/11/30 15:27:31 alexandre_tb |
* ecriture htaccess |
* |
* Revision 1.16 2006/11/30 14:52:42 alexandre_tb |
* Ecriture du fichier htaccess lors de l installation |
* |
* Revision 1.15 2006/10/09 14:35:27 ddelon |
* bug caractere invalie trainant dans fichier |
* |
* Revision 1.14 2006/10/06 15:34:30 florian |
* mise en commentaire .htaccess |
* |
* Revision 1.13 2006/10/06 15:23:00 florian |
* amelioration graphique de l'installateur |
* |
* Revision 1.12 2006/10/06 14:49:45 ddelon |
* ecriture htaccess a l'installation |
* |
* Revision 1.11 2006/10/06 14:46:15 alexandre_tb |
* ecriture du fichier .htaccess |
* |
* Revision 1.10 2005/09/23 14:20:23 florian |
* Nouvel habillage installateur, plus correction de quelques bugs |
* |
* Revision 1.9 2005/04/12 16:09:45 jpm |
* Amélioration de la gestion de la constante de redirection des urls et de la gestion des constantes de type entier et booléen. |
* |
* Revision 1.8 2004/10/25 16:26:35 jpm |
* Début gestion des mises à jours. |
* |
* Revision 1.7 2004/10/25 10:22:48 jpm |
* Correction de quelques bogues, ajouts d'explications pour l'utilisateur et modification des styles CSS. |
* |
* Revision 1.6 2004/10/22 17:39:14 jpm |
* Correction gestion du slash devant le chemin racine ftp. |
* |
* Revision 1.5 2004/10/22 17:23:04 jpm |
* Simplification del'installation de Papyrus. |
* |
* Revision 1.4 2004/10/19 17:01:12 jpm |
* Correction bogues. |
* |
* Revision 1.3 2004/10/19 15:59:18 jpm |
* Ajout de la gestion des valeurs propre à Papyrus à insérer dans la base de données. |
* Ajout des constantes FTP. |
* |
* Revision 1.2 2004/10/18 09:12:09 jpm |
* Changement de nom d'un fichier. |
* |
* Revision 1.1 2004/10/18 09:11:05 jpm |
* Changement de nom du fichier. |
* |
* Revision 1.1 2004/10/15 18:28:59 jpm |
* Début appli installateur de Papyrus. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/installateur/instal_base_de_donnees.inc.php |
---|
New file |
0,0 → 1,401 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (c) 2002, Hendrik Mans <hendrik@mans.de> | |
// | Copyright 2002, 2003 David DELON | |
// | Copyright 2002 Patrick PAUL | |
// | Copyright 2003 Eric FELDSTEIN | |
// | All rights reserved. | |
// | Redistribution and use in source and binary forms, with or without | |
// | modification, are permitted provided that the following conditions | |
// | are met: | |
// | 1. Redistributions of source code must retain the above copyright | |
// | notice, this list of conditions and the following disclaimer. | |
// | 2. Redistributions in binary form must reproduce the above copyright | |
// | notice, this list of conditions and the following disclaimer in the | |
// | documentation and/or other materials provided with the distribution. | |
// | 3. The name of the author may not be used to endorse or promote products | |
// | derived from this software without specific prior written permission. | |
// | | |
// | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
// | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | |
// | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |
// | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | |
// | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | |
// | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |
// | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: instal_base_de_donnees.inc.php,v 1.35 2007-08-28 14:37:11 jp_milcent Exp $ |
/** |
* Page de création de la base de données de Papyrus. |
* |
* Page permettant de créer la base de données de Papyrus. |
* |
*@package Installateur |
//Auteur original : |
*@author Hendrik MANS <hendrik@mans.de> |
//Autres auteurs : |
*@author David DELON |
*@author Patrick PAUL |
*@author Eric FELDSTEIN |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.35 $ $Date: 2007-08-28 14:37:11 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Numéro de l'étape d'installation : |
$num_etape = 2; |
// Initialisation du tableau contenant les valeurs de configuration de la base de données |
$tableau = array('PAP_BDD_SERVEUR' => '', 'PAP_BDD_NOM' => '', 'PAP_BDD_UTILISATEUR' => '', 'PAP_BDD_MOT_DE_PASSE' => ''); |
foreach ($tableau as $cle => $val) { |
if ($_POST['bdd'][$cle] != '') { |
$bdd[$cle] = $_POST['bdd'][$cle]; |
} else if (defined($cle)) { |
$bdd[$cle] = constant($cle); |
} else { |
$bdd[$cle] = ''; |
} |
} |
// Récupération des paramêtres de configuration du formulaire précédent |
if (isset($_POST['pref'])) { |
$pref = $_POST['pref']; |
} else if (isset($_POST['pref_serial'])) { |
$pref = unserialize(stripslashes($_POST['pref_serial'])); |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Affichage d'informations... |
$sortie .= '<br /><h1>Etape n°'.$num_etape.' sur '.INSTAL_NBRE_ETAPE.'.</h1>'."\n"; |
// Nous vérifions si nous sommes en phase de test du formulaire de config de la base de données |
$erreur = 0; |
$sortie_verif = ''; |
if ($_GET['installation'] == 'verif_bdd') { |
// Test de la configuration à la base de données |
$sortie_test .= ' <br /><h2>Test de la configuration de la base de données</h2>'."\n"; |
$dblink = @mysql_connect($bdd['PAP_BDD_SERVEUR'], $bdd['PAP_BDD_UTILISATEUR'], $bdd['PAP_BDD_MOT_DE_PASSE']); |
$erreur = testerConfig($sortie_test, 'Test connexion au serveur MySQL, recherche base de données ...', @mysql_select_db($bdd['PAP_BDD_NOM'], $dblink), |
'<br />La base de données, le serveur MySQL, ou votre identifiant / mot de passe sont invalides, veuillez vérifier vos paramêtres.', 1, $erreur); |
$sortie .= '<br />'."\n"; |
if ($erreur==0) { |
// L'exécution du SQL peut commencer... |
if (!defined('PAP_VERSION')) { |
$version_actuelle = 0.1; |
} else { |
// On ajoute pour éviter l'étape qui a déjà eu lieu lors d'une installation précédente! |
$version_actuelle = PAP_VERSION + 0.01; |
} |
if (!defined('GEN_VERSION')) { |
$version_maj = 0.1; |
} else { |
$version_maj = GEN_VERSION + 0.01; |
} |
$sortie_test .= '<h2>Insertion des informations dans la base de données</h2>'; |
for ( $version = $version_actuelle; $version <= $version_maj; $version = $version + 0.01) { |
//Insertion des requêtes présentes dans le fichier sql |
$file_sql_contenu = INSTAL_CHEMIN_SQL.'papyrus_v'.$version.'.sql'; |
if (file_exists($file_sql_contenu)) { |
$sortie_verif .= '<h2>Insertion des données du fichier sql version '.$version.'</h2>'; |
$sql_contenu = PMA_readFile($file_sql_contenu); |
} else |
unset($sql_contenu); |
$tab_requete_sql = array(); |
PMA_splitSqlFile($tab_requete_sql, $sql_contenu, ''); |
foreach ($tab_requete_sql as $value) { |
$table_nom = ''; |
if (!empty($value['table_nom'])) { |
$table_nom = $value['table_nom']; |
} |
$requete_type = ''; |
if (!empty($value['type'])) { |
$requete_type = $value['type']; |
} |
if ($requete_type == 'create') { |
$erreur = testerConfig( $sortie_verif, 'Création table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Déjà créée ?', 0, $erreur); |
} else if ($requete_type == 'alter') { |
$erreur = testerConfig( $sortie_verif, 'Modification structure table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Déjà modifiée ?', 0, $erreur); |
} else if ($requete_type == 'insert') { |
$erreur = testerConfig( $sortie_verif, 'Insertion table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Données déjà présente ?', 0, $erreur); |
} |
} |
// Chargement des hooks sql : fichier sql de configuration spécifiques à chaque application |
$d = dir(GEN_CHEMIN_CLIENT); |
$sql_contenu_hook = ''; |
while (false !== ($repertoire = $d->read())) { |
$hook=GEN_CHEMIN_CLIENT.$repertoire.GEN_SEP.'documentation'.GEN_SEP.$repertoire.'_v'.$version.'.sql'; |
if (file_exists($hook)) { |
$sortie_verif .= '<h2>Insertion des informations dans la base de données, fichier : '.$hook.' </h2>'; |
$sql_contenu_hook = PMA_readFile($hook); |
$tab_requete_sql = array(); |
PMA_splitSqlFile($tab_requete_sql, $sql_contenu_hook, ''); |
foreach ($tab_requete_sql as $value) { |
$table_nom = ''; |
if (!empty($value['table_nom'])) { |
$table_nom = $value['table_nom']; |
} |
$requete_type = ''; |
if (!empty($value['type'])) { |
$requete_type = $value['type']; |
} |
if ($requete_type == 'create') { |
$erreur = testerConfig( $sortie_verif, 'Création table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Déjà créé ?', 0, $erreur); |
} else if ($requete_type == 'alter') { |
$erreur = testerConfig( $sortie_verif, 'Modification structure table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Déjà modifiée ?', 0, $erreur); |
} else if ($requete_type == 'insert') { |
$erreur = testerConfig( $sortie_verif, 'Insertion table '.$table_nom.'...', @mysql_query($value['query'], $dblink), |
'Données déjà présente ?', 0, $erreur); |
} |
} |
} |
} |
} |
//Insertion des requêtes dépendant du formulaire d'installation |
$sortie_verif .= '<h2>Insertion des données dépendant du formulaire précédent</h2>'; |
$requete_admin = 'INSERT INTO gen_annuaire VALUES (1, "'.$pref['ADMIN_I18N'].'", "'.$pref['ADMIN_NOM']. |
'", "'.$pref['ADMIN_PRENOM'].'", "'.md5($pref['ADMIN_MDP_01']).'", "'. |
$pref['ADMIN_MAIL'].'");'; |
$erreur = testerConfig($sortie_verif, 'Insertion de l\'administrateur...', @mysql_query($requete_admin, $dblink), |
'Données déjà présente ?', 0, $erreur); |
$requete_auth = 'INSERT INTO gen_site_auth_bdd VALUES (1, "mysql://'. |
$bdd['PAP_BDD_UTILISATEUR'].':'.$bdd['PAP_BDD_MOT_DE_PASSE'].'@'.$bdd['PAP_BDD_SERVEUR'].'/'.$bdd['PAP_BDD_NOM'].'", "gen_annuaire", "ga_mail", '. |
'"ga_mot_de_passe", "md5","chp_personne_prenom=ga_prenom chp_personne_nom=ga_nom");'; |
$erreur = testerConfig($sortie_verif, 'Insertion de l\'authentification...', @mysql_query($requete_auth, $dblink), |
'Données déjà présente ?', 0, $erreur); |
$url_inscription = preg_replace ('/papyrus\.php/', 'page:inscription', $pref['PAP_URL']); |
$url_inscription_erreur = preg_replace ('/papyrus\.php/', 'page:inscription?action=mdp_oubli', $pref['PAP_URL']); |
$requete_auth = 'INSERT INTO gen_site_auth_bdd VALUES (2, "mysql://'. |
$bdd['PAP_BDD_UTILISATEUR'].':'.$bdd['PAP_BDD_MOT_DE_PASSE'].'@'.$bdd['PAP_BDD_SERVEUR'].'/'.$bdd['PAP_BDD_NOM'].'", "annuaire", "a_mail", '. |
'"a_mot_de_passe", "md5","chp_personne_prenom=a_prenom chp_personne_nom=a_nom '. |
'url_inscription='.$url_inscription.' url_inscription_modif='.$url_inscription.' url_erreur='.$url_inscription_erreur.'");'; |
$erreur = testerConfig($sortie_verif, 'Insertion de l\'authentification utilisateurs ...', @mysql_query($requete_auth, $dblink), |
'Données déjà présente ?', 0, $erreur); |
} |
} |
// Gestion de l'affichage de sortie |
if ($erreur == 0 && empty($sortie_verif)) { |
// Premier appel du fichier... |
$sortie .= creerFormulaire($bdd); |
$sortie .= '<li><input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" /></li>'."\n"; |
$sortie .= '<li><input type="submit" value="Tester" /></li>'."\n"; |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
} else if ($erreur == 2 && !empty($sortie_test)) { |
// Vérification du fichier avec interuption... |
$sortie .= creerFormulaire($bdd); |
$sortie .= $sortie_test; |
$sortie .= '<li><input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" /></li>'."\n"; |
$sortie .= '<li><input type="submit" value="Tester à nouveau" /></li>'."\n"; |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
//$sortie .= '<div class="code"><code>'.$sortie_verif.'</code></div>'; |
} else if (($erreur == 0 || $erreur == 1) && !empty($sortie_verif)) { |
// Vérification du fichier sans interuption... passage à l'étape suivante |
$sortie .= creerFormulaire($bdd, true); |
$sortie .= $sortie_test; |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
$sortie .= '<div class="code"><code>'.$sortie_verif.'</code></div>'; |
$sortie .= ' <br /><p class="etape_info">A l\'étape suivante, le programme d\'installation va essayer d\'écrire le fichier de '. |
'configuration <tt>'.INSTAL_FICHIER_CONFIG.'</tt>.<br />Assurez vous que le serveur web a bien le '. |
'droit d\'écrire dans ce fichier, sinon vous devrez le modifier manuellement.</p>'."\n"; |
$sortie .= ' <form style="clear:both;" action="'.donnerUrlCourante().'?installation=form_fichier" method="POST" />'."\n"; |
$sortie .= ' <input type="hidden" name="bdd_serial" value="'.htmlentities(serialize($bdd)).'" />'."\n"; |
$sortie .= ' <input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" />'."\n"; |
$sortie .= ' <input type="submit" value="Continuer" />'."\n"; |
$sortie .= ' </form>'."\n"; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE DES FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
// Création du formulaire de configuration de la base de données |
function creerFormulaire($bdd, $bln_lecture = false) { |
$disabled = ''; |
if ($bln_lecture) { |
$disabled = ' disabled="disabled" '; |
} |
$sortie_form .= ' <form action="'.donnerUrlCourante().'?installation=verif_bdd" method="post">'; |
$sortie_form .= ' <ul>'."\n"; |
$sortie_form .= '<li><br /><h2>Configuration de la base de données</h2></li>'."\n"; |
$sortie_form .= '<li>La machine sur laquelle se trouve votre serveur MySQL. En général c\'est "localhost" '. |
'(ie, la même machine que celle où se trouve les pages de Papyrus.).</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="mysql_serveur">Nom du serveur MySQL :</label>'. |
'<input id="mysql_serveur"'.$disabled.'type="text" size="30" name="bdd[PAP_BDD_SERVEUR]" value="'.$bdd['PAP_BDD_SERVEUR'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>La base de données MySQL à utiliser pour Papyrus. Cette base de données doit déjà '. |
'exister avant de pouvoir continuer.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="mysql_database">Base de données MySQL :</label>'. |
'<input id="mysql_database"'.$disabled.'type="text" size="30" name="bdd[PAP_BDD_NOM]" value="'.$bdd['PAP_BDD_NOM'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Nom et mot de passe de l\'utilisateur MySQL qui sera utilisé pour se connecter à votre base de données.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="mysql_user">Nom de l\'utilisateur MySQL :</label>'. |
'<input id="mysql_user"'.$disabled.'type="text" size="30" name="bdd[PAP_BDD_UTILISATEUR]" value="'.$bdd['PAP_BDD_UTILISATEUR'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="mysql_password">Mot de passe MySQL :</label>'. |
'<input id="mysql_password"'.$disabled.'type="password" size="30" name="bdd[PAP_BDD_MOT_DE_PASSE]" value="'.$bdd['PAP_BDD_MOT_DE_PASSE'].'" />'. |
'</li>'."\n"; |
return $sortie_form; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.34 2007-06-26 12:08:18 jp_milcent |
* Correction de l'encodage et de la création du htaccess. |
* |
* Revision 1.33 2007-06-25 12:15:07 alexandre_tb |
* merge from narmer |
* |
* Revision 1.32 2007/04/20 09:05:46 alexandre_tb |
* correction pb encodage |
* |
* Revision 1.31 2007/04/19 16:19:45 neiluj |
* optimisation |
* |
* Revision 1.30 2007/04/19 16:18:05 neiluj |
* correction bug lecture fichier SQL |
* |
* Revision 1.29 2006/12/01 14:05:57 alexandre_tb |
* affichage des mesages d erreurs quand on se trompe dans les parametres mysql |
* |
* Revision 1.28 2006/10/06 15:23:00 florian |
* amelioration graphique de l'installateur |
* |
* Revision 1.27 2006/10/06 10:35:38 alexandre_tb |
* correction du lien vers l'inscription. |
* |
* Revision 1.26 2006/10/05 18:38:36 ddelon |
* reglage inititialisation base de donnes : authorisation utilisateur |
* |
* Revision 1.25 2006/10/05 17:56:37 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.24 2006/10/05 17:39:35 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.23 2006/10/05 17:16:21 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.22 2006/10/05 16:44:02 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.21 2006/10/05 16:39:01 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.20 2006/10/05 16:25:58 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.19 2006/10/05 15:38:22 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.18 2006/10/05 15:27:53 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.17 2006/10/05 15:04:00 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.16 2006/10/05 15:00:56 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.15 2006/10/05 14:41:12 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.14 2006/10/05 14:24:58 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.13 2006/10/05 14:01:21 ddelon |
* Gestion hooks creation base de donnee |
* |
* Revision 1.12 2005/09/23 14:20:23 florian |
* nouvel habillage installateur, plus correction de quelques bugs |
* |
* Revision 1.11 2004/11/03 17:31:13 jpm |
* Corrections bogues erreurs noms de variables (suite). |
* |
* Revision 1.10 2004/11/03 17:26:19 jpm |
* Corrections bogues erreurs noms de variables. |
* |
* Revision 1.9 2004/10/27 11:43:32 jpm |
* Correction bogues diff mise à jour / installation. |
* |
* Revision 1.8 2004/10/26 18:41:12 jpm |
* Correction bogue pour la mise à jour. |
* |
* Revision 1.7 2004/10/25 16:26:35 jpm |
* Début gestion des mises à jours. |
* |
* Revision 1.6 2004/10/25 10:22:48 jpm |
* Correction de quelques bogues, ajouts d'explications pour l'utilisateur et modification des styles CSS. |
* |
* Revision 1.5 2004/10/22 17:56:28 jpm |
* Correction erreur auth. |
* |
* Revision 1.4 2004/10/22 17:23:04 jpm |
* Simplification del'installation de Papyrus. |
* |
* Revision 1.3 2004/10/19 16:47:28 jpm |
* Transformation en fonction de l'appel de l'application. |
* |
* Revision 1.2 2004/10/19 15:59:18 jpm |
* Ajout de la gestion des valeurs propre à Papyrus à insérer dans la base de données. |
* Ajout des constantes FTP. |
* |
* Revision 1.1 2004/10/15 18:28:59 jpm |
* Début appli installateur de Papyrus. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/installateur/instal_preference.inc.php |
---|
New file |
0,0 → 1,273 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (c) 2002, Hendrik Mans <hendrik@mans.de> | |
// | Copyright 2002, 2003 David DELON | |
// | Copyright 2002 Patrick PAUL | |
// | All rights reserved. | |
// | Redistribution and use in source and binary forms, with or without | |
// | modification, are permitted provided that the following conditions | |
// | are met: | |
// | 1. Redistributions of source code must retain the above copyright | |
// | notice, this list of conditions and the following disclaimer. | |
// | 2. Redistributions in binary form must reproduce the above copyright | |
// | notice, this list of conditions and the following disclaimer in the | |
// | documentation and/or other materials provided with the distribution. | |
// | 3. The name of the author may not be used to endorse or promote products | |
// | derived from this software without specific prior written permission. | |
// | | |
// | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
// | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | |
// | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |
// | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | |
// | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | |
// | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |
// | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: instal_preference.inc.php,v 1.12 2006-10-06 15:23:00 florian Exp $ |
/** |
* Page d'initialisation de l'installation de Papyrus. |
* |
* Contenu de la page par défaut de l'installation de Papyrus. |
* |
*@package Installateur |
//Auteur original : |
*@author Hendrik MANS <hendrik@mans.de> |
//Autres auteurs : |
*@author David DELON |
*@author Patrick PAUL |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.12 $ $Date: 2006-10-06 15:23:00 $ |
// +------------------------------------------------------------------------------------------------------+ |
**/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Numéro de l'étape d'installation : |
$num_etape = 1; |
// Initialisation du tableau contenant les valeurs de configuration de la base de données |
$tableau = array('ADMIN_PRENOM' => '', 'ADMIN_NOM' => '', 'ADMIN_MAIL' => '', 'ADMIN_MDP_01' => '', |
'ADMIN_MDP_02' => '', 'ADMIN_I18N' => '', 'PAP_URL' => '', 'PAP_CHEMIN_RACINE' => '', 'PAP_URL_REECRITURE' => '0'); |
foreach ($tableau as $cle => $val) { |
if (!empty($_POST['pref'][$cle])) { |
$pref[$cle] = $_POST['pref'][$cle]; |
} else if (defined($cle)) { |
$pref[$cle] = constant($cle); |
if ($cle == 'PAP_CHEMIN_RACINE') $pref[$cle] = INSTAL_CHEMIN_ABSOLU; |
} else { |
if ($cle == 'PAP_URL') { |
$pref[$cle] = 'http://'.$_SERVER['SERVER_NAME']. |
($_SERVER['SERVER_PORT'] != 80 ? ':'.$_SERVER['SERVER_PORT'] : ''). |
$_SERVER['REQUEST_URI']; |
} else if ($cle == 'PAP_CHEMIN_RACINE') { |
$pref[$cle] = INSTAL_CHEMIN_ABSOLU; |
} else { |
$pref[$cle] = ''; |
} |
} |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// Affichage d'informations... |
$sortie .= '<br /><h1>Etape n°'.$num_etape.' sur '.INSTAL_NBRE_ETAPE.'.</h1>'."\n"; |
$sortie .= '<p>NOTE: Ce programme d\'installation va essayer de modifier les options de configurations dans le '. |
'fichier <tt>pap_config.inc.php</tt>, situé dans le répertoire <tt>configuration</tt> du réportoire '. |
'<tt>papyrus</tt>. Pour que cela fonctionne, veuillez vous assurez que votre serveur a les droits d\'accès '. |
'en écriture pour ce fichier. Si pour une raison quelconque vous ne pouvez pas faire ça vous '. |
'devrez modifier ce fichier manuellement (ce programme d\'installation vous dira comment).</p><br />'."\n"; |
// Nous vérifions si nous sommes en phase de test du formulaire de config des préférences |
if ($_GET['installation'] == 'verif_pref' ) { |
$sortie_verif = ''; |
$sortie_verif .= testerPresenceExtension(); |
// En mise à jour, nous n'affichons pas les champs pour saisir un administrateur |
if (!defined(INSTAL_VERSION_NOUVELLE_NOM)) { |
// Nous vérifions que l'utilisateur à bien saisie les infos dans les champs du formulaire |
if(empty($_POST['pref']['ADMIN_PRENOM'])) { |
$sortie_verif .= '<p class="erreur">Le champ "Prénom" ne doit pas être vide!</p>'."\n"; |
} |
if(empty($_POST['pref']['ADMIN_NOM'])) { |
$sortie_verif .= '<p class="erreur">Le champ "Nom" ne doit pas être vide!</p>'."\n"; |
} |
if(empty($_POST['pref']['ADMIN_MAIL'])) { |
$sortie_verif .= '<p class="erreur">Le champ "Courriel" ne doit pas être vide!</p>'."\n"; |
} |
if(empty($_POST['pref']['ADMIN_MDP_01'])) { |
$sortie_verif .= '<p class="erreur">Le champ "Mot de passe" ne doit pas être vide!</p>'."\n"; |
} |
if($_POST['pref']['ADMIN_MDP_01'] != $_POST['pref']['ADMIN_MDP_02']) { |
$sortie_verif .= '<p class="erreur">Le deux mots de passes saisis pour le compte administrateur sont différents!</p>'."\n"; |
} |
} |
} |
// Gestion de l'affichage de sortie |
if (!isset($sortie_verif) && empty($sortie_verif)) { |
// Premier appel du fichier... |
$sortie .= creerFormulaire($pref); |
$sortie .= ' </ul>'."\n"; |
$sortie .= '<input type="submit" value="Passer à l\'étape suivante" />'."\n"; |
$sortie .= '</form>'; |
} else if (isset($sortie_verif) && !empty($sortie_verif)) { |
// Vérification du fichier avec interuption... |
$sortie .= $sortie_verif; |
$sortie .= creerFormulaire($pref); |
$sortie .= ' </ul>'."\n"; |
$sortie .= '<input type="submit" value="Tester à nouveau" />'."\n"; |
$sortie .= ' </form>'; |
} else if (isset($sortie_verif) && empty($sortie_verif)) { |
// Vérification du fichier sans interuption... passage à l'étape suivante |
$sortie .= creerFormulaire($pref, true); |
$sortie .= ' </ul>'."\n"; |
$sortie .= ' </form>'; |
$sortie .= ' <br /><p class="etape_info">La configuration est OK. A l\'étape suivante, le programme d\'installation va essayer de configurer '. |
'et créer la base de données.</p>'."\n"; |
$sortie .= ' <form style="clear:both;" action="'.donnerUrlCourante().'?installation=form_bdd" method="post">'."\n"; |
$sortie .= ' <input type="hidden" name="pref_serial" value="'.htmlentities(serialize($pref)).'" />'."\n"; |
$sortie .= ' <input type="submit" value="Continuer" />'."\n"; |
$sortie .= ' </form>'."\n"; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE DES FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
// Création du formulaire de configuration de la base de donneés |
function creerFormulaire($pref, $bln_lecture = false) { |
$disabled = ''; |
if ($bln_lecture) { |
$disabled = ' disabled="disabled" '; |
} |
$sortie_form = ''; |
$sortie_form .= ' <form action="'.donnerUrlCourante().'?installation=verif_pref" method="post">'."\n"; |
$sortie_form .= '<ul>'."\n"; |
// En mise à jour, nous n'affichons pas les champs pour saisir un administrateur |
if (!defined(INSTAL_VERSION_NOUVELLE_NOM)) { |
$sortie_form .= '<li><h2>Configuration d\'un administrateur de Papyrus</h2></li>'."\n"; |
$sortie_form .= '<li>Tous les champs ci-dessous sont obligatoires.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_prenom">Prénom :</label>'. |
'<input id="admin_prenom"'.$disabled.'type="text" size="30" name="pref[ADMIN_PRENOM]" value="'.$pref['ADMIN_PRENOM'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_nom">Nom :</label>'. |
'<input id="admin_nom"'.$disabled.'type="text" size="30" name="pref[ADMIN_NOM]" value="'.$pref['ADMIN_NOM'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_mail">Courriel :</label>'. |
'<input id="admin_mail"'.$disabled.'type="text" size="30" name="pref[ADMIN_MAIL]" value="'.$pref['ADMIN_MAIL'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_mdp_01">Mot de passe :</label>'. |
'<input id="admin_mdp_01"'.$disabled.'type="password" size="10" name="pref[ADMIN_MDP_01]" value="'.$pref['ADMIN_MDP_01'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_mdp_02">Taper à nouveau votre mot de passe :</label>'. |
'<input id="admin_mdp_02"'.$disabled.'type="password" size="10" name="pref[ADMIN_MDP_02]" value="'.$pref['ADMIN_MDP_02'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="admin_i18n">Langue :</label>'. |
'<select id="admin_i18n"'.$disabled.'name="pref[ADMIN_I18N]">'. |
'<option value="fr-FR" selected="selected">français</option>'. |
'</select>'. |
'</li>'."\n"; |
} |
$sortie_form .= '<li> </li>'."\n".'<li><h2>Configuration de l\'URL</h2></li>'."\n"; |
$sortie_form .= '<li>L\'URL courante dans la barre d\'adresse de votre navigateur devrait correspondre à la valeur '. |
'présente dans le champ ci-dessous. Si ce n\'est pas le cas, veuillez corriger la valeur ci-dessous.'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="url_courante">URL courante :</label>'. |
'<input id="url_courante"'.$disabled.'type="text" size="60" name="pref[PAP_URL]" value="'.$pref['PAP_URL'].'" />'. |
'</li>'."\n"; |
$sortie_form .= '<li>Le mode "redirection automatique" doit être sélectionné uniquement si '. |
'vous utilisez Papyrus avec la redirection d\'URL (si vous ne savez pas ce qu\'est la redirection d\'URL '. |
'n\'activez pas cette option).</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="rewrite_mode">Mode "redirection" :</label>'. |
'<input id="rewrite_mode"'.$disabled.'type="checkbox" name="pref[PAP_URL_REECRITURE]" value="1" />'. |
'Activation'.'</li>'."\n"; |
$sortie_form .= '<li>Le champ suivant devrait contenir le chemin d\'accès absolu vers le fichier <tt>papyrus.php</tt> '. |
'sur le serveur où sont déposés les fichiers de Papyrus.</li>'."\n"; |
$sortie_form .= '<li>'."\n". |
'<label for="web_racine">Dossier de <tt>papyrus.php</tt> :</label>'. |
'<input id="web_racine"'.$disabled.'type="text" size="60" name="pref[PAP_CHEMIN_RACINE]" value="'.$pref['PAP_CHEMIN_RACINE'].'" />'. |
'</li>'."\n"; |
return $sortie_form; |
} |
// Vérification des variables d'environnement de PHP. |
function testerPresenceExtension() { |
$message = ''; |
$phrase_deb = '<p class="erreur">Pour fonctionner Papyrus à besoin que l\'extension PHP : '; |
$phrase_fin = 'soit installée sur le serveur.<br /> Sans cette extension vous ne pourrez pas installer Papyrus !</p>'; |
// Nous avons besoin de quelques extensions |
if (! extension_loaded('mysql')) { |
$message .= $phrase_deb.'MYSQL'.$phrase_fin; |
} |
if (! extension_loaded('ftp')) { |
$message .= $phrase_deb.'FTP'.$phrase_fin; |
} |
if (! extension_loaded('gd')) { |
$message .= $phrase_deb.'GD'.$phrase_fin; |
} |
return $message; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.11 2006/10/05 15:14:18 alexandre_tb |
* Mise en place du chemin par défaut |
* |
* Revision 1.10 2005/09/23 14:20:23 florian |
* nouvel habillage installateur, plus correction de quelques bugs |
* |
* Revision 1.9 2005/04/12 16:09:45 jpm |
* Amélioration de la gestion de la constante de redirection des urls et de la gestion des constantes de type entier et booléen. |
* |
* Revision 1.8 2004/10/27 11:43:32 jpm |
* Correction bogues diff mise à jour / installation. |
* |
* Revision 1.7 2004/10/25 10:22:48 jpm |
* Correction de quelques bogues, ajouts d'explications pour l'utilisateur et modification des styles CSS. |
* |
* Revision 1.6 2004/10/22 17:23:04 jpm |
* Simplification del'installation de Papyrus. |
* |
* Revision 1.5 2004/10/22 09:07:18 jpm |
* Début simplification installateur. |
* |
* Revision 1.4 2004/10/19 17:01:12 jpm |
* Correction bogues. |
* |
* Revision 1.3 2004/10/19 16:47:28 jpm |
* Transformation en fonction de l'appel de l'application. |
* |
* Revision 1.2 2004/10/19 15:59:18 jpm |
* Ajout de la gestion des valeurs propre à Papyrus à insérer dans la base de données. |
* Ajout des constantes FTP. |
* |
* Revision 1.1 2004/10/15 18:28:59 jpm |
* Début appli installateur de Papyrus. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_auth/configuration/adau_configuration.inc.php |
---|
New file |
0,0 → 1,81 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: adau_configuration.inc.php,v 1.1 2004-12-06 11:31:42 alex Exp $ |
/** |
* Fichier de configuration général de l'application Administrateur de authentification. |
* |
* Permet de définir certains paramètres valables pour toutes l'application |
* Administrateur de Menus. |
* |
*@package Admin_auth |
*@subpackage Configuration |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Constante stockant la valeur de la langue par défaut pour l'appli ADME.*/ |
define('ADAU_I18N_DEFAUT', GEN_I18N_ID_DEFAUT); |
// Chemin des fichiers à inclure. |
/** Chemin vers la bibliothèque PEAR.*/ |
define('ADAU_CHEMIN_BIBLIOTHEQUE_PEAR', ''); |
/** Chemin vers la bibliothèque API.*/ |
define('ADAU_CHEMIN_BIBLIOTHEQUE_API', GEN_CHEMIN_API); |
/** Chemin vers la bibliothèque de Papyrus.*/ |
define('ADAU_CHEMIN_BIBLIOTHEQUE_GEN', GEN_CHEMIN_BIBLIO); |
// Chemin vers les dossiers de l'application |
/** Chemin vers l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_APPLICATION', GEN_CHEMIN_APPLICATION.'admin_auth/'); |
/** Chemin vers les images de l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_IMAGE_INTERFACE', ADAU_CHEMIN_APPLICATION.'presentations/images/interface/'); |
/** Chemin vers la bibliothèque de l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_BIBLIOTHEQUE', ADAU_CHEMIN_APPLICATION.'bibliotheque/'); |
/** Chemin vers les classes de l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_CLASSES', ADAU_CHEMIN_APPLICATION.'classes/'); |
/** Chemin vers les fichiers de traduction de l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_LANGUE', ADAU_CHEMIN_APPLICATION.'langues/'); |
/** Chemin vers les styles de l'application Admin Auth de Papyrus.*/ |
define('ADAU_CHEMIN_STYLE', ADAU_CHEMIN_APPLICATION.'presentations/styles/'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_auth/bibliotheque/adau_auth.fonct.php |
---|
New file |
0,0 → 1,210 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adau_auth.fonct.php,v 1.2 2005-04-14 13:54:51 jpm Exp $ |
/** |
* Contient les fonctions de l'appli admin_auth |
* |
* |
* |
* |
*@package Admin_auth |
*@subpackage Fonctions |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.2 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* |
* |
* @return |
*/ |
function adau_supprimer_authentification($id_auth, &$db) |
{ |
// Recherche l'identifiant de gen_site_auth_bdd à partir de gen_site_auth |
$requete = 'SELECT gsa_ce_auth_bdd FROM gen_site_auth WHERE gsa_id_auth = '.$GLOBALS['id_auth']; |
$resultat = $db->query ($requete) ; |
$ligne = $resultat->fetchRow (DB_FETCHMODE_OBJECT) ; |
$id_auth_bdd = $ligne->gsa_ce_auth_bdd ; |
$requete = 'DELETE FROM gen_site_auth WHERE gsa_id_auth = '.$id_auth; |
$resultat = $db->query($requete); |
$requete = 'DELETE FROM gen_site_auth_bdd WHERE gsab_id_auth_bdd = '.$id_auth_bdd; |
$resultat = $db->query($requete); |
} |
/** |
* |
* |
* @return |
*/ |
function adau_valeurs_par_defaut($id_auth, &$db) |
{ |
// Requete sur gen_site_auth |
$requete = 'SELECT * FROM gen_site_auth WHERE gsa_id_auth = '.$id_auth; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
$tableau_retour = array(); |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$tableau_retour['nom_auth'] = $ligne->gsa_nom; |
$tableau_retour['abreviation'] = $ligne->gsa_abreviation; |
$tableau_retour['id_auth_bdd'] = $ligne->gsa_ce_auth_bdd; |
$tableau_retour['id_auth'] = $ligne->gsa_id_auth; |
unset($requete, $resultat); |
// Requete sur gen_site_auth_bdd |
$requete = 'SELECT * FROM gen_site_auth_bdd WHERE gsab_id_auth_bdd = '.$ligne->gsa_ce_auth_bdd; |
unset($ligne); |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$tableau_retour['dsn'] = $ligne->gsab_dsn; |
$tableau_retour['nom_table'] = $ligne->gsab_nom_table; |
$tableau_retour['champs_login'] = $ligne->gsab_nom_champ_login; |
$tableau_retour['champs_passe'] = $ligne->gsab_nom_champ_mdp; |
$tableau_retour['cryptage'] = $ligne->gsab_cryptage_mdp; |
$tableau_retour['parametres'] = $ligne->gsab_parametres; |
return $tableau_retour; |
} |
/** |
* |
* |
* @return |
*/ |
function insertion ($valeur, &$db) |
{ |
$id_auth_bdd = SQL_obtenirNouveauId($db, 'gen_site_auth_bdd', 'gsab_id_auth_bdd'); |
$requete = 'INSERT INTO gen_site_auth SET gsa_id_auth = ' |
.SQL_obtenirNouveauId($db, 'gen_site_auth', 'gsa_id_auth').', ' |
.requete_site_auth($valeur) |
.', gsa_ce_auth_bdd = '.$id_auth_bdd; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
$requete = 'INSERT INTO gen_site_auth_bdd SET gsab_id_auth_bdd = '.$id_auth_bdd.', '.requete_site_auth_bdd($valeur); |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
} |
/** |
* |
* |
* @return |
*/ |
function mise_a_jour($valeur, &$db) |
{ |
$requete = 'UPDATE gen_site_auth SET '.requete_site_auth($valeur).' '. |
'WHERE gsa_id_auth = '.$GLOBALS['id_auth']; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
unset($requete); |
// Recherche l'identifiant de gen_site_auth_bdd à partir de gen_site_auth |
$requete = 'SELECT gsa_ce_auth_bdd FROM gen_site_auth WHERE gsa_id_auth = '.$GLOBALS['id_auth']; |
$resultat = $db->query($requete); |
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); |
$id_auth_bdd = $ligne->gsa_ce_auth_bdd; |
$requete = 'UPDATE gen_site_auth_bdd SET ' |
.requete_site_auth_bdd($valeur) |
.' WHERE gsab_id_auth_bdd = '.$id_auth_bdd; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
} |
/** |
* |
* |
* @return string un morceau de code SQL |
*/ |
function requete_site_auth(&$valeur) |
{ |
return 'gsa_nom="'.$valeur['nom_auth'].'", ' |
.'gsa_ce_type_auth=1, ' |
.'gsa_abreviation="'.$valeur['abreviation'].'"' ; |
} |
/** |
* |
* |
* @return |
*/ |
function requete_site_auth_bdd (&$valeur) |
{ |
return 'gsab_dsn="'.$valeur['dsn'].'", ' |
.'gsab_nom_table="'.$valeur['nom_table'].'", ' |
.'gsab_nom_champ_login="'.$valeur['champs_login'].'", ' |
.'gsab_nom_champ_mdp="'.$valeur['champs_passe'].'", ' |
.'gsab_parametres="'.$valeur['parametres'].'", ' |
.'gsab_cryptage_mdp="'.$valeur['cryptage'].'"'; |
} |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/03/09 10:49:52 jpm |
* Changement d'un nom de fichier. |
* |
* Revision 1.2 2004/12/06 12:43:21 alex |
* ajout du champs paramètre dans ls authentification |
* |
* Revision 1.1 2004/12/06 11:31:54 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_auth/bibliotheque/HTML_formulaireAuth.class.php |
---|
New file |
0,0 → 1,203 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public | |
// | 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: HTML_formulaireAuth.class.php,v 1.5 2007-06-26 14:18:53 florian Exp $ |
/** |
* Application projet |
* |
* La classe HTML_formulaireAuth |
* |
*@package projet |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.5 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclure le fichier de langue pour utiliser cette classe de façon autonome. */ |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm.php' ; |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/checkbox.php' ; |
require_once PAP_CHEMIN_API_PEAR.'HTML/QuickForm/select.php' ; |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des constantes | |
// +------------------------------------------------------------------------------------------------------+ |
/** |
* class HTML_formulaireProjet |
* Cette classe représente un formulaire pour saisir un projet ou le modifier. |
*/ |
class HTML_formulaireAuth extends HTML_QuickForm |
{ |
/** |
* Constructeur |
* |
* @param string formName Le nom du formulaire. |
* @param string method Soit get soit post, voir le protocole HTTP |
* @param string action L'action du formulaire. |
* @param string target La cible du formulaire. |
* @param Array attributes Des attributs supplémentaires pour la balise <form> |
* @param bool trackSubmit Pour repérer si la formulaire a été soumis. |
* @return void |
* @access public |
*/ |
function HTML_formulaireAuth($formName = '', $method = 'post', $action = '', $target = '_self', $attributes = '', $trackSubmit = false) |
{ |
HTML_QuickForm::HTML_QuickForm($formName, $method, $action, $target, $attributes, $trackSubmit); |
$squelette =& $this->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<p class="formulaire_element"><span class="form_label">'."\n". |
'{label}'."\n". |
'<!-- BEGIN required --><span style="color:red; width:5px; margin:0; padding:0;">*</span><!-- END required -->'."\n". |
'</span>'."\n".'{element}'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</p>'."\n"); |
$squelette->setGroupElementTemplate('<p style="display:inline">{element}</p>', 'form_boutons'); |
$squelette->setRequiredNoteTemplate("\n".'<p class="symbole_obligatoire">* : {requiredNote}</p>'."\n"); |
//Note pour les erreurs javascript |
$this->setJsWarnings('Erreur de saisie', 'Veuillez verifier vos informations saisies'); |
// Note de fin de formulaire |
$this->setRequiredNote('Indique les champs obligatoires'); |
// $squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
// $squelette->setElementTemplate( '<li>'."\n". |
// '{label}'."\n". |
// '{element}'."\n". |
// '<!-- BEGIN required --><span class="symbole_obligatoire">'.ADAU_SYMBOLE_CHP_OBLIGATOIRE.'</span><!-- END required -->'."\n". |
// '<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
// '</li>'."\n"); |
// $squelette->setRequiredNoteTemplate("\n".'<p><span class="symbole_obligatoire">'.ADAU_SYMBOLE_CHP_OBLIGATOIRE.'</span> {requiredNote}</p>'."\n"); |
} // end of member function HTML_formulaireProjet |
/** |
* Renvoie le code HTML du formulaire. |
* |
* @return string |
* @access public |
*/ |
function toHTML() |
{ |
$res = HTML_QuickForm::toHTML(); |
return $res; |
} // end of member function toHTML |
/** |
* Ajoute les champs nécessaire au formulaire. |
* |
* @return void |
* @access public |
*/ |
function construitFormulaire($url_retour) |
{ |
$tab_index = 1000; |
$size = 35; |
$cols = 50; |
$rows = 6; |
$form_debut = '<fieldset>'."\n".'<legend>'.ADAU_NOM_FORM.'</legend>'."\n"; |
$this->addElement('html', $form_debut); |
$id = 'nom_auth'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_NOM_AUTH.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('nom_auth', ADAU_NOM_AUTH_ALERTE, 'required', '', 'client'); |
$id = 'abreviation'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_ABREVIATION.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('abreviation', ADAU_ABREVIATION_ALERTE, 'required', '', 'client'); |
$id = 'dsn'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_DSN.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('dsn', ADAU_DSN_ALERTE, 'required', '', 'client'); |
$id = 'nom_table'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_NOM_TABLE.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('nom_table', ADAU_NOM_TABLE_ALERTE, 'required', '', 'client'); |
$id = 'champs_login'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_CHAMPS_LOGIN.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('champs_login', ADAU_CHAMPS_LOGIN_ALERTE, 'required', '', 'client'); |
$id = 'champs_passe'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_CHAMPS_PASSE.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('champs_passe', ADAU_CHAMPS_PASSE_ALERTE, 'required', '', 'client'); |
$id = 'cryptage'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => $size); |
$label = '<label for="'.$id.'">'.ADAU_CRYPTAGE.'</label>'; |
$this->addElement('text', $id, $label, $aso_attributs); |
$this->addRule('cryptage', ADAU_CRYPTAGE_ALERTE, 'required', '', 'client'); |
$id = 'parametres'; |
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => $rows, 'cols' => $cols); |
$label = '<label for="'.$id.'">'.ADAU_PARAMETRE.'</label>'; |
$this->addElement('textarea', $id, $label, $aso_attributs); |
$form_fin = "\n".'</fieldset>'."\n"; |
$this->addElement('html', $form_fin); |
// Gestion des boutons |
$buttons[] = &HTML_QuickForm::createElement('link', 'annuler', ADAU_ANNULER, |
str_replace ("&", "&", $url_retour->getURL()), ADAU_ANNULER); // Le preg_replace contourne un pb de QuickForm et Net_URL |
// qui remplacent deux fois les & par des & |
//Bouton de validation du formulaire // ce qui fait échouer le lien |
$buttons[] = &HTML_QuickForm::createElement('submit', 'valider', ADAU_VALIDER); |
$this->addGroup($buttons, 'form_boutons', null, ' '); |
// $liste_bouton_debut = '<ul class="liste_bouton">'."\n"; |
// $this->addElement('html', $liste_bouton_debut); |
// |
// $this->addElement('submit', 'valider', ADAU_VALIDER); |
// |
// $bouton_annuler = '<li><a class="bouton" href="'.str_replace ('&', '&', $url_retour->getURL()).'">'.ADAU_ANNULER.'</a></li>'."\n"; |
// $this->addElement('html', $bouton_annuler); |
// |
// $liste_bouton_fin = '</ul>'."\n"; |
// $this->addElement('html', $liste_bouton_fin); |
$this->setRequiredNote(ADAU_CHAMPS_REQUIS); |
} // end of member function _construitFormulaire |
} // end of HTML_formulaireProjet |
?> |
/branches/livraison_aha/papyrus/applications/admin_auth/langues/adau_langue_fr.inc.php |
---|
New file |
0,0 → 1,86 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This file is part of Papyrus. | |
// | | |
// | Foobar is free software; you can redistribute it and/or modify | |
// | it under the terms of the GNU General Public License as published by | |
// | the Free Software Foundation; either version 2 of the License, or | |
// | (at your option) any later version. | |
// | | |
// | Foobar is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// | GNU General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU General Public License | |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: adau_langue_fr.inc.php,v 1.4 2006-10-06 10:40:51 florian Exp $ |
/** |
* Gestion des langues de l'application ADME |
* |
* Contient les constantes pour la langue française de l'application ADME. |
* |
*@package Admin_auth |
*@subpackage Langues |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE des CONSTANTES | |
// +------------------------------------------------------------------------------------------------------+ |
define('ADAU_NOM_AUTH', 'Nom authentification'); |
define('ADAU_NOM_TABLE', 'Nom de la table annuaire'); |
define('ADAU_MODIFIER', 'Modifier'); |
define('ADAU_SUPPRIMER', 'Supprimer'); |
define('ADAU_SUPPRIMER_MESSAGE', 'Êtes vous sûr de vouloir supprimer cette identification ?'); |
define('ADAU_AJOUTER', 'Ajouter une authentification base de donnée'); |
define('ADAU_IDENTIFIEZ_VOUS','Veuillez vous identifier pour accèder à ce menu.'); |
define('ADAU_NOM_FORM', 'Édition des informations d\'une identification'); |
define('ADAU_NOM_AUTH_ALERTE', 'Vous devez spécifier un nom'); |
define('ADAU_CHAMPS_REQUIS', 'Indique les champs requis'); |
define('ADAU_ABREVIATION', 'Abréviation'); |
define('ADAU_ABREVIATION_ALERTE', 'Vous devez indiquer une abréviation'); |
define('ADAU_DSN', 'Source des donnée (dsn)'); |
define('ADAU_DSN_ALERTE', 'Vous devez indiquer une source des données'); |
define('ADAU_NOM_TABLE_ALERTE', 'Vous devez indiquer le nom de la table annuaire'); |
define('ADAU_CHAMPS_LOGIN', 'Nom du champs login'); |
define('ADAU_CHAMPS_LOGIN_ALERTE', 'Vous devez indiquer le nom du champs login'); |
define('ADAU_CHAMPS_PASSE', 'Nom du champs mot de passe'); |
define('ADAU_CHAMPS_PASSE_ALERTE', 'Vous devez indiquer le nom du champs mot de passe'); |
define('ADAU_CRYPTAGE', 'Fonction de cryptage'); |
define('ADAU_CRYPTAGE_ALERTE', 'Vous devez indiquer un algorithme de cryptage'); |
define('ADAU_PARAMETRE', 'Paramètres'); |
define('ADAU_ANNULER', 'Annuler'); |
define('ADAU_VALIDER', 'Valider'); |
define('ADAU_SYMBOLE_CHP_OBLIGATOIRE', '*'); |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.3 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.2 2004/12/13 18:07:57 alex |
* ajout de labels |
* |
* Revision 1.1 2004/12/06 11:31:37 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/applications/admin_auth/admin_auth.php |
---|
New file |
0,0 → 1,200 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: admin_auth.php,v 1.6 2006-10-06 10:40:51 florian Exp $ |
/** |
* Application gérant les authentifications de Papyrus |
* |
* Cette application permet de gérer les authentifications de papyrus |
* elle permet de spécifier pour un monde quel annuaire utiliser |
* et de gérer des authentifications de spip et ou wikini |
* |
*@package Admin_auth |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.6 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/** Inclusion du fichier de configuration de cette application.*/ |
require_once GEN_CHEMIN_PAP.'applications/admin_auth/configuration/adau_configuration.inc.php'; |
//Utilisation de la bibliothèque PEAR NET_URL |
/** Inclusion de la bibliothèque PEAR de conception de formulaire.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm.php'; |
/** Inclusion de la bibliothèque PEAR de conception de formulaire : select.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_PEAR.'HTML/QuickForm/select.php'; |
/** Inclusion de l'API de fonctions gérant les erreurs sql.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_API.'debogage/BOG_sql.fonct.php'; |
/** Inclusion des fonctions de manipulation du sql. |
* Permet la récupération d'un nouvel identifiant d'une table.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_API.'sql/SQL_manipulation.fonct.php'; |
/** Inclusion de la bibliothèque premettant de créer des Tableau HTML fragmentés.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_API.'html/HTML_TableFragmenteur.php' ; |
/** Inclusion de la bibliothèque de fonctions concernant les tables "gen_site..." de Papyrus.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_GEN.'pap_site.fonct.php'; |
/** Inclusion de la bibliothèque de fonctions concernant les tables "gen_menu..." de Papyrus.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_GEN.'pap_menu.fonct.php'; |
/** Inclusion de la bibliothèque de fonctions concernant les tables "gen_applications..." de Papyrus.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE_GEN.'pap_application.fonct.php'; |
/** Inclusion de la bibliothèque de fonctions concernant l'affichage commun.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE.'adau_auth.fonct.php'; |
/** Inclusion de la classe créer les formulaire des l'appli.*/ |
require_once ADAU_CHEMIN_BIBLIOTHEQUE.'HTML_formulaireAuth.class.php' ; |
// Inclusion des fichiers de traduction de l'appli ADME dePapyrus |
if (file_exists(ADAU_CHEMIN_LANGUE.'adau_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php')) { |
/** Inclusion du fichier de traduction suite à la transaction avec le navigateur.*/ |
require_once ADAU_CHEMIN_LANGUE.'adau_langue_'.$GLOBALS['_GEN_commun']['i18n'].'.inc.php'; |
} else { |
/** Inclusion du fichier de traduction par défaut.*/ |
require_once ADAU_CHEMIN_LANGUE.'adau_langue_'.ADAU_I18N_DEFAUT.'.inc.php'; |
} |
// Stockage des styles de l'application |
GEN_stockerStyleExterne('adau_standard', ADAU_CHEMIN_STYLE.'adau_standard.css'); |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
function afficherContenuCorps() |
{ |
$db =& $GLOBALS['_GEN_commun']['pear_db'] ; |
$url =& $GLOBALS['_GEN_commun']['url'] ; |
$auth =& $GLOBALS['_GEN_commun']['pear_auth'] ; |
isset ($GLOBALS['action']) ? '' : $GLOBALS['action'] = '' ; // On déclare action si elle n'existe pas |
$res=''; |
if (!$auth->getAuth()) { |
$res .= '<p class="zone_alert">'.ADAU_IDENTIFIEZ_VOUS.'</p>'."\n" ; |
$res .= '<form id="form_connexion" style="clear:both;" class="form_identification" action="' ; |
$res .= $url->getURL(); |
$res .= '" method="post"> |
<fieldset> |
<legend>Identifiez vous</legend> |
<label for="username">Courriel : </label> |
<input type="text" id="username" name="username" maxlength="80" tabindex="1" value="courriel" /> |
<label for="password">Mot de passe : </label> |
<input type="password" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" /> |
<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" /> |
</fieldset> |
</form>'; |
return $res ; |
} else { |
// Le lien pour une nouvelle entrée |
$res = '<a href="'.$url->getURL().'&action=nouveau">'.ADAU_AJOUTER.'</a>'."\n".'<br />'; |
// traitement de la suppression |
if (isset ($GLOBALS['action']) && $GLOBALS['action'] == 'supprimer') adau_supprimer_authentification($GLOBALS['id_auth'], $db); |
// Traitement de l'ajout |
if (isset ($GLOBALS['action']) || isset ($GLOBALS['id_auth'])) { |
$formulaire = new HTML_formulaireAuth('formulaire_auth', '', str_replace ('&', '&', $url->getURL())); |
$formulaire->construitFormulaire($url); |
// On ajoute un champs caché avec action=nouveau_v |
if ($GLOBALS['action'] == 'nouveau') { |
$formulaire->addElement ('hidden', 'action', 'nouveau_v'); |
return $formulaire->toHTML(); |
} |
if (isset ($GLOBALS['id_auth']) && $GLOBALS['action'] != 'modifier_v' && $GLOBALS['action'] != 'supprimer') { |
$formulaire->addElement ('hidden', 'action', 'modifier_v'); |
$formulaire->addElement ('hidden', 'id_auth', $GLOBALS['id_auth']); |
$formulaire->setDefaults(adau_valeurs_par_defaut($GLOBALS['id_auth'], $db)); |
return $formulaire->toHTML(); |
} |
if ($GLOBALS['action'] == 'modifier_v') { |
if ($formulaire->validate()) { |
mise_a_jour ($formulaire->getSubmitValues(), $db); |
} |
} |
if ($GLOBALS['action'] == 'nouveau_v') { |
if ($formulaire->validate()) { |
insertion ($formulaire->getSubmitValues(), $db); |
} |
} |
} |
// Comportement par défaut |
// requete sur la table gen_site_auth |
$requete = 'SELECT gsa_ce_auth_bdd, gsa_nom, gsab_nom_table '. |
'FROM gen_site_auth, gen_site_auth_bdd '. |
'WHERE gsa_id_auth <> 0 '. |
'AND gsa_ce_auth_bdd = gsab_id_auth_bdd'; |
$resultat = $db->query($requete); |
if (DB::isError($resultat)) { |
trigger_error('Échec de la requete : '.$requete.'<br />'.$resultat->getMessage(), E_USER_WARNING); |
return ; |
} |
$liste = new HTML_TableFragmenteur() ; |
$liste->construireEntete(array (ADAU_NOM_AUTH, ADAU_NOM_TABLE, ADAU_MODIFIER, ADAU_SUPPRIMER)); |
$tableau_auth = array(); |
while ($ligne = $resultat->fetchRow()) { |
$url->addQueryString('id_auth', $ligne[0]); |
array_push ($tableau_auth, array ('<a href="'.$url->getURL().'">'.$ligne[1].'</a>'."\n", // Première colonne, le nom de l'authentification |
$ligne[2], // deuxième colonne, le nom de la table d'annuaire |
'<a href="'.$url->getURL().'">'.ADAU_MODIFIER.'</a>'."\n", // Colonne modifier |
'<a href="'.$url->getURL().'&action=supprimer" onclick="javascript:return confirm(\''.ADAU_SUPPRIMER_MESSAGE.'\');">'.ADAU_SUPPRIMER.'</a>'."\n" |
)); |
$url->removeQueryString('id_auth'); |
} |
$liste->construireListe($tableau_auth); |
$res .= $liste->toHTML(); |
return $res; |
} |
}// Fin de la fonction afficherContenuCorps() |
// +------------------------------------------------------------------------------------------------------+ |
// | PIED du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.5 2006/09/21 15:22:04 jp_milcent |
* Nettoyage dans l'url de la querystring id_auth. |
* |
* Revision 1.4 2005/04/14 13:54:51 jpm |
* Amélioration de l'interface et mise en conformité. |
* |
* Revision 1.3 2005/03/09 10:50:08 jpm |
* Changement d'un nom de fichier. |
* |
* Revision 1.2 2005/02/28 10:32:37 jpm |
* Changement de nom de dossier. |
* |
* Revision 1.1 2004/12/06 11:31:59 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/configuration/pap_config_avancee.inc.php |
---|
New file |
0,0 → 1,332 |
<?php |
//vim: set expandtab tabstop=4 shiftwidth=4: |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2003 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | | |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | 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: pap_config_avancee.inc.php,v 1.31 2007-08-28 14:13:40 jp_milcent Exp $ |
/** |
* Page de configuration avancée de Papyrus |
* |
* La page contient différents paramètre permettant de configurer, le chronométrage, le débogage, les url... |
* |
*@package Papyrus |
*@subpackage Configuration |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Alexandre GRANIER <alex@tela-botanica.org> |
*@author Laurent COUDOUNEAU <laurent.coudouneau@ema.fr> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.31 $ $Date: 2007-08-28 14:13:40 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTÊTE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
//test au cas ou il s'agirai d'une nouvelle installation ou si le fichier de conf n'existe pas |
if (file_exists('papyrus/configuration/pap_config.inc.php') ) {include_once 'papyrus/configuration/pap_config.inc.php';} |
if (!defined("PAP_CHEMIN_RACINE")) define('PAP_CHEMIN_RACINE',''); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage du mode d'écriture des fichiers sur le serveur |
/** Booléen permetant de savoir si on utilise ou pas le ftp. */ |
define('GEN_FTP_UTILISE', true) ;//ini_get('safe_mode') |
// +------------------------------------------------------------------------------------------------------+ |
// | CORPS du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage de la version : NE PAS MODIFIER MANUELLEMENT! |
/** Constante stockant la version de Papyrus.*/ |
define('GEN_VERSION', '0.25'); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage du débogage. |
/** Constante stockant une valeur booléen permettant de savoir si on veut déboguer le code (true) ou pas (false).*/ |
define('GEN_DEBOGAGE', true);// true ou false |
/** Constante permettant de savoir sous quelle forme le débogage va avoir lieu.*/ |
define('PAP_DEBOGAGE_TYPE', 'HTML');// HTML ou FIREBUG |
/** Constante stockant une valeur correspondant au niveau d'erreur à employer pour le code PHP |
* de Papyrus et de ses applications.*/ |
define('GEN_DEBOGAGE_NIVEAU', E_ALL);// Voir le manuel de PHP pour les différents niveaux disponibles. |
/** Constante permettant de savoir si on veut afficher le contexte des variables d'une erreur |
* pour le code PHP de Papyrus et de ses applications.*/ |
define('GEN_DEBOGAGE_CONTEXTE', false);// true or false |
/** Constante permettant de savoir la langue pour le débogage du code PHP de Papyrus et de ses |
* applications.*/ |
define('GEN_DEBOGAGE_I18N', 'fr'); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage de l'identification : Auth |
$tps = time()+3600*24*30; |
/** Constante stockant la durée pendant laquelle on mémorise l'identification via un cookie.*/ |
define('PAP_AUTH_SESSION_DUREE', (int)$tps);// Mettre 0 pour "dàconnecter en fin de session" sinon utiliser la variable $tps |
/** Constante stockant si oui (true) ou non (false) on met en place la sécurité avancée pour l'identification.*/ |
define('PAP_AUTH_SECURITE_AVANCEE', true); |
/** Constante stockant le préfixe pour les noms des sessions Papyrus.*/ |
define('PAP_AUTH_SESSION_PREFIXE', 'pap-'); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage du nom du champ servant à identifier un site dans l'url |
/** Type du code d'un site passé dans l'url.*/ |
define('GEN_URL_ID_TYPE_SITE', 'int');// string ou int |
/** Type du code d'un menu passé dans l'url.*/ |
define('GEN_URL_ID_TYPE_MENU', 'int');// string ou int |
/** Type du code d'un site pour les urls raccourcies.*/ |
define('GEN_URL_RACCOURCI_ID_TYPE_SITE', 'string');// string ou int |
/** Type du code d'un menu pour les urls raccourcies.*/ |
define('GEN_URL_RACCOURCI_ID_TYPE_MENU', 'string');// string ou int |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage des clés de l'url |
// Redéfini le séparateur utilisé lorsque PHP génère des URLs pour séparer les arguments. (compatible XHTML strict) |
ini_set('arg_separator.output', '&'); |
/** Nom de la variable passée dans l'url et contenant l'identifiant d'un site.*/ |
define('GEN_URL_CLE_SITE', 'site'); |
/** Nom de la variable passée dans l'url et contenant l'identifiant d'un menu.*/ |
define('GEN_URL_CLE_MENU', 'menu'); |
/** Nom de la variable passée dans l'url et contenant l'identifiant d'une internationalisation.*/ |
define('GEN_URL_CLE_I18N', 'langue'); |
/** Nom de la variable passée dans l'url et contenant une date.*/ |
define('GEN_URL_CLE_DATE', 'date'); |
/** Nom de la variable passée dans l'url et contenant un format.*/ |
define('GEN_URL_CLE_FORMAT', 'format'); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage des langues |
/** Identifiant de l'I18N par défaut de Papyrus. */ |
define('GEN_I18N_ID_DEFAUT', 'fr'); |
// +------------------------------------------------------------------------------------------------------+ |
// Noms des sites |
/** Nom du site par défaut d'administration de Papyrus.*/ |
define('GEN_SITE_DEFAUT', 'admin'); |
// +------------------------------------------------------------------------------------------------------+ |
// Paramétrage réecriture d'URL et erreur HTTP |
/** Mot signalant une réecriture d'url présent à la base de l'url. */ |
define('PAP_URL_REECRITURE_MENU', 'page'); |
/** Mot signalant une réecriture d'url présent à la base de l'url. */ |
define('PAP_URL_REECRITURE_SITE', 'site'); |
/** Caractère séparant les informations constituant le permalien Papyrus. */ |
// Si vous utilisez "/", vous devrez indiquer le chemin depuis la racine pour les chemins présent dans les squelettes. |
// Exemple : "/sites/commun..." et non "sites/commun..." |
define('PAP_URL_REECRITURE_SEP', ':'); |
/** Chemin et nom du fichier affichant une erreur HTTP.*/ |
define('PAP_FICHIER_ERREUR_HTTP', PAP_CHEMIN_RACINE.'sites/commun/%s/http_erreurs/erreur%s.php'); |
/** URL absolue du fichier affichant une erreur HTTP.*/ |
define('PAP_URL_ERREUR_HTTP', '/sites/commun/%s/http_erreurs/erreur%s.php?url=%s'); |
// +------------------------------------------------------------------------------------------------------+ |
/** Séparateur dans les chemins d'accès aux fichiers.*/ |
define('GEN_SEP', '/'); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des api.*/ |
define('GEN_CHEMIN_API', PAP_CHEMIN_RACINE.'api'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des api.*/ |
define('PAP_CHEMIN_API_PEAR', GEN_CHEMIN_API.'pear'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant le reste de l'application Papyrus.*/ |
define('GEN_CHEMIN_PAP', 'papyrus'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applications clientes.*/ |
define('GEN_CHEMIN_CLIENT', 'client'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des sites.*/ |
define('GEN_CHEMIN_SITES', 'sites'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers de configuration de Papyrus.*/ |
define('GEN_CHEMIN_CONFIG', GEN_CHEMIN_PAP.'configuration'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers sql d'installation de Papyrus.*/ |
define('GEN_CHEMIN_INSTAL', GEN_CHEMIN_PAP.'installation'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applications internes à Papyrus.*/ |
define('GEN_CHEMIN_APPLICATION', GEN_CHEMIN_PAP.'applications'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applettes.*/ |
define('GEN_CHEMIN_APPLETTE', GEN_CHEMIN_PAP.'applettes'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant la bibliothèque de codes de Papyrus.*/ |
define('GEN_CHEMIN_BIBLIO', GEN_CHEMIN_PAP.'bibliotheque'.GEN_SEP.'fonctions'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant la bibliothèque de codes de Papyrus.*/ |
define('GEN_CHEMIN_BIBLIO_CLASSE', GEN_CHEMIN_PAP.'bibliotheque'.GEN_SEP.'classes'.GEN_SEP); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les traductions de Papyrus.*/ |
define('GEN_CHEMIN_LANGUE', GEN_CHEMIN_PAP.'langues'.GEN_SEP); |
/** Chemin vers le dossier Commun des sites.*/ |
define('GEN_CHEMIN_COMMUN', GEN_CHEMIN_SITES.'commun'.GEN_SEP); |
/** Chemin vers le dossier contenant des fichiers temporaires.*/ |
define('GEN_CHEMIN_TMP', 'tmp'); |
// +------------------------------------------------------------------------------------------------------+ |
// Nom des dossiers d'un site présent dans le dossier de langue. |
/** Nom du dossier contenant les squelettes d'un site donné.*/ |
define('GEN_DOSSIER_SQUELETTE', 'squelettes'); |
/** Nom du dossier contenant les feuilles de styles d'un site donné.*/ |
define('GEN_DOSSIER_STYLE', 'styles'); |
/** Nom du dossier contenant les scripts côté client d'un site donné.*/ |
define('GEN_DOSSIER_SCRIPT', 'scripts'); |
/** Nom du dossier contenant les images d'un site donné.*/ |
define('GEN_DOSSIER_IMAGE', 'images'); |
/** Nom du dossier contenant les documents d'un site donné.*/ |
define('GEN_DOSSIER_DOC', 'documents'); |
/** Nom du dossier contenant des dossiers et fichiers communs à plusieurs langues.*/ |
define('GEN_DOSSIER_GENERIQUE', 'generique'); |
// +------------------------------------------------------------------------------------------------------+ |
// Nom des fichiers par défaut d'un site présent dans le dossier de langue. |
/** Nom du fichier de configuration principal de Papyrus.*/ |
define('GEN_FICHIER_CONFIG', 'pap_config.inc.php'); |
/** Nom du fichier squelette par défaut d'un site donné.*/ |
define('GEN_FICHIER_SQUELETTE', 'defaut.html'); |
/** Nom du fichier de styles par défaut d'un site donné.*/ |
define('GEN_FICHIER_STYLE', 'defaut.css'); |
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des wikini*/ |
define('GEN_CHEMIN_WIKINI', 'wikini'.GEN_SEP); |
// +------------------------------------------------------------------------------------------------------+ |
// Nom des styles de Papyrus. |
/** Style erreur.*/ |
define('GEN_CSS_ERREUR', 'pap_erreur'); |
// +------------------------------------------------------------------------------------------------------+ |
//Gestion des actions Papyrus |
/** Les sites correspodant aux liens interwiki. */ |
$GLOBALS['_PAPYRUS_']['interwiki_sites'] = array( |
'Papyrus' => 'http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['PHP_SELF'].'?menu=%s', |
'Weflore' => 'http://wiki.tela-botanica.org/eflore/wakka.php?wiki=%s', |
'Wikipedia' => 'http://fr.wikipedia.org/wiki/%s', |
'Wikipedia_fr' => 'http://fr.wikipedia.org/wiki/%s' |
); |
/** Les sites correspodant à l'action inclure. */ |
$GLOBALS['_PAPYRUS_']['inclure_sites'] = array( |
'Papyrus' => array('preg' => '/<!-- start contenu -->(.*)<!-- end contenu -->/Umsi', 'url' => 'http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['PHP_SELF'].'?menu=%s'), |
'Wikipedia' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://fr.wikipedia.org/wiki/%s'), |
'Wikipedia_fr' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://fr.wikipedia.org/wiki/%s'), |
'Wikipedia_en' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://en.wikipedia.org/wiki/%s'), |
'Wikini_eFlore' => array('preg' => '/<div class="page">(.*)<\/div>.*<div class="commentsheader">/Umsi', 'url' => 'http://www.tela-botanica.org/wikini/eflore/wakka.php?wiki=%s'), |
'Wikini_isff' => array('preg' => '/<div class="page">(.*)<\/div>.*<div class="commentsheader">/Umsi', 'url' => 'http://www.tela-botanica.org/wikini/isff/wakka.php?wiki=%s') |
); |
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* $Log: not supported by cvs2svn $ |
* Revision 1.30 2007-04-19 16:54:24 neiluj |
* changement de version |
* |
* Revision 1.29 2007/03/01 11:07:19 jp_milcent |
* Gestion de la constante définissant le type de débogage. |
* |
* Revision 1.28 2006/12/14 15:01:05 jp_milcent |
* Utilisation d'un système permettant de mémoriser les idenitifications. |
* Passage à Auth 1.4.3 et DB 1.7.6. |
* |
* Revision 1.27 2006/11/20 17:48:33 jp_milcent |
* Mise à 0 de PAP_AUTH_SESSION_DUREE pour garder la compatibilité avec les anciennes installations. |
* |
* Revision 1.26 2006/11/20 17:29:04 jp_milcent |
* Ajout d'une constante permettant de gérer la durée des session de Papyrus. |
* |
* Revision 1.25 2006/10/26 16:29:52 jp_milcent |
* Correction erreur redirection en boucle. |
* |
* Revision 1.24 2006/10/18 10:18:04 jp_milcent |
* Gestion des erreurs HTTP par Papyrus. |
* |
* Revision 1.23 2006/10/11 18:04:11 jp_milcent |
* Gestion avancée de la réecriture d'URL. |
* |
* Revision 1.22 2006/10/05 13:17:47 ddelon |
* Changement Version Papyrus : 0.21 --> 0.24 |
* |
* Revision 1.21 2006/09/13 12:31:18 florian |
* ménage: fichier de config Papyrus, fichiers temporaires |
* |
* Revision 1.20 2006/04/28 12:41:49 florian |
* corrections erreurs chemin |
* |
* Revision 1.19 2006/03/13 21:00:20 ddelon |
* Suppression messages d'erreur multilinguisme |
* |
* Revision 1.18 2006/03/02 10:49:49 ddelon |
* Fusion branche multilinguisme dans branche principale |
* |
* Revision 1.17.2.1 2005/12/01 23:31:57 ddelon |
* Merge Head vers multilinguisme |
* |
* Revision 1.14 2005/04/18 16:40:39 jpm |
* Ajout de constantes pour contrôler les permaliens. |
* |
* Revision 1.12 2005/04/06 13:22:58 jpm |
* Ajout du chemin vers l'API PEAR présente dans le dossier api. |
* |
* Revision 1.11 2005/02/28 11:12:24 jpm |
* Modification des auteurs. |
* |
* Revision 1.10 2005/02/17 17:56:33 jpm |
* Changement de version de 0.2 à 0.21. |
* |
* Revision 1.9 2004/10/25 16:26:19 jpm |
* Changement de la valeur de la variable GEN_VERSION. |
* |
* Revision 1.8 2004/10/22 17:22:41 jpm |
* Modification du au changement de place de l'inclusion de ce fichier dans Papyrus. |
* |
* Revision 1.7 2004/10/21 18:16:18 jpm |
* Ajout de contantes pour le débogage et corrections de commentaires. |
* |
* Revision 1.6 2004/10/19 16:00:23 jpm |
* Extraction de constante pour ajout dans le fichier de conf géré par l'installateur de Papyrus. |
* Ajout de nouvelles constantes. |
* |
* Revision 1.4 2004/10/14 16:37:04 jpm |
* Correction. |
* |
* Revision 1.3 2004/09/13 17:09:25 jpm |
* Redéfini le séparateur utilisé lorsque PHP génère des URLs pour séparer les arguments. (compatible XHTML strict) |
* |
* Revision 1.2 2004/06/16 15:06:45 jpm |
* Ajout de constantes de chemin. |
* |
* Revision 1.1 2004/06/15 15:19:56 jpm |
* Changement de nom et d'arborescence de Genesia en Papyrus. |
* |
* Revision 1.10 2004/05/06 11:14:56 jpm |
* Ajout de nouvelles constantes. |
* |
* Revision 1.8 2004/04/01 11:26:27 jpm |
* Ajout et modification de commentaires pour PhpDocumentor. |
* |
* Revision 1.7 2004/03/31 16:55:44 jpm |
* Ajout de constant gérant l'url. |
* |
* Revision 1.6 2004/03/27 11:09:21 jpm |
* Transformation de variable en constante. |
* |
* Revision 1.5 2004/03/22 10:58:59 jpm |
* Ajout de commentaires. |
* |
* Revision 1.4 2003/12/16 16:57:59 alex |
* mise à jour pour compatibilité avec genesia |
* |
* Revision 1.3 2003/12/05 14:35:41 alex |
* en cours |
* |
* Revision 1.2 2003/11/24 15:19:52 jpm |
* Mise en conformité avec la convention de codage. |
* |
* +--Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/branches/livraison_aha/papyrus/documentation/bdd_creation_papyrus.sql |
---|
New file |
0,0 → 1,504 |
-- phpMyAdmin SQL Dump |
-- version 2.6.0-pl1 |
-- http://www.phpmyadmin.net |
-- |
-- Serveur: localhost |
-- Généré le : Jeudi 14 Octobre 2004 à 18:05 |
-- Version du serveur: 4.0.18 |
-- Version de PHP: 4.3.4 |
-- |
-- Base de données: `papyrus` |
-- |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_annuaire` |
-- |
CREATE TABLE `gen_annuaire` ( |
`ga_id_administrateur` int(11) unsigned NOT NULL default '0', |
`ga_ce_i18n` varchar(8) NOT NULL default '', |
`ga_nom` varchar(32) NOT NULL default '', |
`ga_prenom` varchar(32) NOT NULL default '', |
`ga_mot_de_passe` varchar(32) NOT NULL default 'X X', |
`ga_mail` varchar(128) NOT NULL default '', |
PRIMARY KEY (`ga_id_administrateur`), |
KEY `gen_annuaire_FKIndex1` (`ga_ce_i18n`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_annuaire` |
-- |
INSERT INTO `gen_annuaire` VALUES (0, '', 'Non renseigné', '', '', ''); |
INSERT INTO `gen_annuaire` VALUES (1, 'fr-FR', 'Administrateur', 'Super', 'd41d8cd98f00b204e9800998ecf8427e', 'admin@tela-botanica.org'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_application` |
-- |
CREATE TABLE `gen_application` ( |
`gap_id_application` int(11) unsigned NOT NULL default '0', |
`gap_nom` varchar(100) NOT NULL default '', |
`gap_description` mediumtext NOT NULL, |
`gap_chemin` varchar(255) NOT NULL default '', |
`gap_bool_applette` tinyint(1) unsigned NOT NULL default '0', |
PRIMARY KEY (`gap_id_application`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_application` |
-- |
INSERT INTO `gen_application` VALUES (0, 'Inconnue', 'Pour les menu ne contenant auncune application.', 'inconnu', 0); |
INSERT INTO `gen_application` VALUES (1, 'Administrateur des sites', 'Permet de rajouter des sites sur les serveurs.\r\nProchainement permetra de gérer le cache, les squelettes et leurs fichiers CSS et JS.\r\nPermetra aussi de visualiser les statistiques de chaque site.', 'papyrus/applications/admin_site/admin_site.php', 0); |
INSERT INTO `gen_application` VALUES (2, 'Administrateur des menus', 'Permet de modifier la hiérarchie et les informations concernant les menus d''un site.\r\n', 'papyrus/applications/admin_menu/admin_menu.php', 0); |
INSERT INTO `gen_application` VALUES (3, 'Afficheur', 'L''application standart qui permet d''afficher du contenu XHTML dans les pages.', 'papyrus/applications/afficheur/afficheur.php', 0); |
INSERT INTO `gen_application` VALUES (4, 'Plan du site', 'Application affichant le plan d''un site Génésia.', 'papyrus/applications/plan/plan.php', 0); |
INSERT INTO `gen_application` VALUES (5, 'Menu classique mono ou multi niveaux', 'Génère une liste de listes correspondant à la hiérarchie des menus.\r\nLa liste dépend des paramètres passés dans la balise.\r\nBalise de type MENU_n_m : affiche tous les menus de niveaux n à m.\r\nExemple :\r\nMENU_1_1 : affiche tous les menus de niveaux 1.\r\nMENU_1_3 : affiche tous les menus de niveaux 1 à 3.', 'papyrus/applettes/menu/menu.php', 1); |
INSERT INTO `gen_application` VALUES (6, 'Menu commun', 'Génère une liste de menus communs à l''ensemble du site.', 'papyrus/applettes/menu_commun/menu_commun.php', 1); |
INSERT INTO `gen_application` VALUES (7, 'Sélecteur de sites', 'Génère un formulaire permettant de passer de site en site pour une langue donnée.', 'papyrus/applettes/selecteur_sites/selecteur_sites.php', 1); |
INSERT INTO `gen_application` VALUES (8, 'Identification', 'Génère un formulaire permettant de s''identifier ou fournissant les informations sur la personne identifiée.', 'papyrus/applettes/identification/identification.php', 1); |
INSERT INTO `gen_application` VALUES (9, 'Vous-êtes-ici', 'Affiche la suite des menus visité, sous forme de lien, pour arriver au menu courant visioné par l''utilisateur.', 'papyrus/applettes/vous_etes_ici/vous_etes_ici.php', 1); |
INSERT INTO `gen_application` VALUES (10, 'Annuaire (Front-office)', 'Application affichant l''annuaire.', 'client/bottin/annuaire.php', 0); |
INSERT INTO `gen_application` VALUES (11, 'Annuaire (Back-office)', 'Application affichant le back-office de l''annuaire.', 'client/bottin/annuaire_backoffice.php', 0); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_i18n` |
-- |
CREATE TABLE `gen_i18n` ( |
`gi_id_i18n` varchar(8) NOT NULL default '', |
`gi_ce_langue` char(2) NOT NULL default '', |
`gi_ce_pays` char(2) NOT NULL default '', |
`gi_jeu_de_caracteres` varchar(50) default NULL, |
`gi_nom` varchar(255) NOT NULL default '', |
PRIMARY KEY (`gi_id_i18n`), |
KEY `gen_i18n_FKIndex1` (`gi_ce_pays`), |
KEY `gen_i18n_FKIndex2` (`gi_ce_langue`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_i18n` |
-- |
INSERT INTO `gen_i18n` VALUES ('fr', 'fr', '', 'iso-8859-15', 'Français'); |
INSERT INTO `gen_i18n` VALUES ('en', 'en', '', 'iso-8859-15', 'English'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_i18n_langue` |
-- |
CREATE TABLE `gen_i18n_langue` ( |
`gil_id_langue` char(2) NOT NULL default '', |
`gil_nom` varchar(255) default NULL, |
`gil_direction` varchar(20) default NULL, |
PRIMARY KEY (`gil_id_langue`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_i18n_langue` |
-- |
INSERT INTO `gen_i18n_langue` VALUES ('fr', 'français', 'ltr'); |
INSERT INTO `gen_i18n_langue` VALUES ('en', 'anglais', 'ltr'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_i18n_pays` |
-- |
CREATE TABLE `gen_i18n_pays` ( |
`gip_id_pays` char(2) NOT NULL default '', |
`gip_nom` varchar(255) default NULL, |
`gip_fichier_drapeau` varchar(255) default NULL, |
PRIMARY KEY (`gip_id_pays`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_i18n_pays` |
-- |
INSERT INTO `gen_i18n_pays` VALUES ('FR', 'France', 'FR.png'); |
INSERT INTO `gen_i18n_pays` VALUES ('UK', 'Royaume-Uni', 'UK.png'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu` |
-- |
CREATE TABLE `gen_menu` ( |
`gm_id_menu` int(11) unsigned NOT NULL default '0', |
`gm_ce_i18n` varchar(8) NOT NULL default '', |
`gm_ce_site` int(11) unsigned NOT NULL default '0', |
`gm_ce_application` int(11) unsigned NOT NULL default '0', |
`gm_application_arguments` varchar(255) default NULL, |
`gm_fichier_squelette` varchar(255) default NULL, |
`gm_code_num` int(11) NOT NULL default '0', |
`gm_code_alpha` varchar(20) NOT NULL default '', |
`gm_nom` varchar(100) default NULL, |
`gm_raccourci_clavier` char(1) default NULL, |
`gm_robot` varchar(100) default 'index,follow', |
`gm_titre` varchar(255) default NULL, |
`gm_titre_alternatif` varchar(255) default NULL, |
`gm_mots_cles` text, |
`gm_description_libre` text, |
`gm_description_resume` text, |
`gm_description_table_matieres` text, |
`gm_source` varchar(255) default NULL, |
`gm_auteur` varchar(255) default NULL, |
`gm_contributeur` text, |
`gm_editeur` text, |
`gm_date_creation` datetime default NULL, |
`gm_date_soumission` datetime default NULL, |
`gm_date_acceptation` datetime default NULL, |
`gm_date_publication` datetime default NULL, |
`gm_date_debut_validite` datetime default NULL, |
`gm_date_fin_validite` datetime default NULL, |
`gm_date_copyright` datetime default NULL, |
`gm_licence` varchar(255) default NULL, |
`gm_categorie` varchar(100) default NULL, |
`gm_public` varchar(255) default NULL, |
`gm_public_niveau` varchar(45) default NULL, |
`gm_ce_type_portee_spatiale` int(11) unsigned default NULL, |
`gm_portee_spatiale` varchar(100) default NULL, |
`gm_ce_type_portee_temporelle` int(11) unsigned default NULL, |
`gm_portee_temporelle` varchar(100) default NULL, |
`gm_ce_admin` int(11) unsigned NOT NULL default '0', |
PRIMARY KEY (`gm_id_menu`), |
KEY `gen_menu_FKIndex2` (`gm_ce_admin`), |
KEY `gen_menu_FKIndex3` (`gm_ce_application`), |
KEY `gen_menu_FKIndex4` (`gm_ce_i18n`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_menu` |
-- |
INSERT INTO `gen_menu` VALUES (1, 'fr', 1, 0, '', '', 1, 'config', 'Configuration', 'C', 'index,follow', '', '', '', '', 'Configuration des sites de Génésia', '', '', '', '', '', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '2004-04-22 21:35:44', '', '', '', '', 0, '', 0, '', 0); |
INSERT INTO `gen_menu` VALUES (2, 'fr', 1, 1, '', '', 2, 'sites', 'Administration sites', 'S', 'index,follow', 'Administration des sites de Génésia.', '', 'Administration, sites.', 'Interface d''administration des sites de Génésia.', 'Administration des sites de Génésia.', '', '', 'Tela Botanica', '', 'Tela Botanica', '2004-04-22 21:38:30', '2004-04-22 21:38:30', '2004-04-22 21:38:30', '2004-04-22 21:38:30', '2004-04-22 21:38:30', '0000-00-00 00:00:00', '0000-00-00 00:00:00', '', '', '', '', 0, '', 0, '', 0); |
INSERT INTO `gen_menu` VALUES (4, 'fr', 1, 3, '', '', 4, 'aide', 'Aide', '', 'index,follow', 'Aide des interfaces de Génésia.', '', 'Aide, Génésia.', 'Contient une aide sur les interfaces de Génésia.', 'Une aide sur les interfaces de Génésia.', '', '', 'Jean-Pascal MILCENT', '', 'Tela Botanica', '2004-05-04 13:31:26', '2004-05-04 13:31:26', '2004-05-04 13:31:26', '2004-05-04 13:31:26', '2004-05-04 13:31:26', '0000-00-00 00:00:00', '2004-00-00 00:00:00', '', 'menu', '', '', NULL, '', NULL, '', 0); |
INSERT INTO `gen_menu` VALUES (6, 'fr', 1, 4, '', '', 6, 'plan_genesia', 'Plan du site', '', 'index,follow', 'Plan du site d''administration.', 'Plan du site d''administration', 'plan, administration.', '', 'Plan du site d''administration de Génésia.', '', '', 'Jean-Pascal MILCENT', '', 'Tela Botanica', '2004-05-03 19:24:29', '2004-05-03 19:24:29', '2004-05-03 19:24:29', '2004-05-03 19:24:29', '2004-05-03 19:24:29', '0000-00-00 00:00:00', '2004-00-00 00:00:00', '', 'menu commun', '', '', NULL, '', NULL, '', 0); |
INSERT INTO `gen_menu` VALUES (5, 'fr', 1, 3, '', '', 5, 'accessibilite', 'Chartre d''accessibilité', '', 'index,follow', 'Chartre d''accessibilité de Tela Botanica.', '', 'accessibilité, chartre, handicap.', 'Fournit des informations sur l''accessibilité de ce site.', 'La chartre d''accessibilité de Tela Botanica.', '', '', 'Jean-Pascal MILCENT', '', 'Tela Botanica', '2004-05-03 19:21:29', '2004-05-03 19:21:29', '2004-05-03 19:21:29', '2004-05-03 19:21:29', '2004-05-03 19:21:29', '0000-00-00 00:00:00', '2004-00-00 00:00:00', '', 'menu commun', '', '', NULL, '', NULL, '', 0); |
INSERT INTO `gen_menu` VALUES (3, 'fr', 1, 2, '', '', 3, 'gestion', 'Administration des menus', 'G', 'index,follow', '', '', '', '', 'Gestion des menus des différents sites', '', '', 'Jean-Pascal MILCENT', '', 'Tela Botanica', '2004-05-06 14:52:48', '2004-05-06 14:52:48', '2004-05-06 14:52:48', '2004-05-06 14:52:48', '2004-05-06 14:52:48', '0000-00-00 00:00:00', '2004-00-00 00:00:00', '', 'menu', '', '', 0, '', 0, '', 0); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_cache` |
-- |
CREATE TABLE `gen_menu_cache` ( |
`gmcac_id_md5_url` varchar(32) NOT NULL default '', |
`gmcac_ce_site` int(11) unsigned NOT NULL default '0', |
`gmcac_corps` longblob NOT NULL, |
`gmcac_date_heure` datetime NOT NULL default '0000-00-00 00:00:00', |
`gmcac_taille` int(11) NOT NULL default '0', |
`gmcac_gz_taille` int(11) NOT NULL default '0', |
PRIMARY KEY (`gmcac_id_md5_url`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_menu_cache` |
-- |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_categorie` |
-- |
CREATE TABLE `gen_menu_categorie` ( |
`gmca_id_categorie` int(10) unsigned NOT NULL auto_increment, |
`gmca_intitule_categorie` varchar(255) default NULL, |
PRIMARY KEY (`gmca_id_categorie`) |
) TYPE=MyISAM AUTO_INCREMENT=3 ; |
-- |
-- Contenu de la table `gen_menu_categorie` |
-- |
INSERT INTO `gen_menu_categorie` VALUES (1, 'Relation entre menus'); |
INSERT INTO `gen_menu_categorie` VALUES (2, 'Type de menu'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_categorie_valeur` |
-- |
CREATE TABLE `gen_menu_categorie_valeur` ( |
`gmcv_id_valeur` int(11) unsigned NOT NULL auto_increment, |
`gmcv_id_categorie` int(10) unsigned NOT NULL default '0', |
`gmcv_intitule_valeur` varchar(255) default NULL, |
PRIMARY KEY (`gmcv_id_valeur`), |
KEY `gen_menu_categorie_valeur_FKIndex1` (`gmcv_id_categorie`) |
) TYPE=MyISAM AUTO_INCREMENT=105 ; |
-- |
-- Contenu de la table `gen_menu_categorie_valeur` |
-- |
INSERT INTO `gen_menu_categorie_valeur` VALUES (1, 1, 'avoir père'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (2, 1, 'avoir traduction'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (101, 2, 'défaut'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (102, 2, 'commun'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (103, 2, 'traduction'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (104, 2, 'copyright'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (3, 1, 'avoir suivant logique'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (4, 1, 'avoir précédent logique'); |
INSERT INTO `gen_menu_categorie_valeur` VALUES (100, 2, 'menu classique'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_contenu` |
-- |
CREATE TABLE `gen_menu_contenu` ( |
`gmc_id_contenu` int(11) unsigned NOT NULL default '0', |
`gmc_ce_admin` int(11) unsigned NOT NULL default '0', |
`gmc_ce_menu` int(11) unsigned NOT NULL default '0', |
`gmc_ce_type_contenu` int(11) unsigned default NULL, |
`gmc_contenu` mediumtext, |
`gmc_ce_type_modification` int(11) unsigned default NULL, |
`gmc_resume_modification` varchar(255) default NULL, |
`gmc_date_modification` datetime default NULL, |
`gmc_bool_dernier` tinyint(1) unsigned default '1', |
PRIMARY KEY (`gmc_id_contenu`), |
KEY `gen_menu_contenu_FKIndex2` (`gmc_ce_menu`), |
KEY `idx_fk_gp_ce_admin` (`gmc_ce_admin`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_menu_contenu` |
-- |
INSERT INTO `gen_menu_contenu` VALUES (1, 1, 4, 1, '<h1>Aide</h1>\r\n<p>Ici figurera l''aide de Papyrus!</p>', 2, 'Origine', '2004-10-14 17:57:29', 1); |
INSERT INTO `gen_menu_contenu` VALUES (2, 1, 5, 1, '<h1>Accessibilité</h1>\r\n<p>Ici figurera la charte d''accessibilité de Papyrus!</p>', 2, 'Origine', '2004-10-14 17:58:09', 1); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_relation` |
-- |
CREATE TABLE `gen_menu_relation` ( |
`gmr_id_menu_01` int(11) unsigned NOT NULL default '0', |
`gmr_id_menu_02` int(11) unsigned NOT NULL default '0', |
`gmr_id_valeur` int(11) unsigned NOT NULL default '0', |
`gmr_ordre` int(11) unsigned default NULL, |
PRIMARY KEY (`gmr_id_menu_01`,`gmr_id_menu_02`,`gmr_id_valeur`), |
KEY `gen_menu_relation_FKIndex2` (`gmr_id_menu_01`), |
KEY `gen_menu_relation_FKIndex3` (`gmr_id_valeur`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_menu_relation` |
-- |
INSERT INTO `gen_menu_relation` VALUES (1, 0, 1, 1); |
INSERT INTO `gen_menu_relation` VALUES (2, 1, 1, 1); |
INSERT INTO `gen_menu_relation` VALUES (3, 1, 1, 2); |
INSERT INTO `gen_menu_relation` VALUES (1, 1, 101, NULL); |
INSERT INTO `gen_menu_relation` VALUES (5, 5, 102, 1); |
INSERT INTO `gen_menu_relation` VALUES (6, 0, 1, 2); |
INSERT INTO `gen_menu_relation` VALUES (4, 4, 100, 4); |
INSERT INTO `gen_menu_relation` VALUES (4, 0, 1, 5); |
INSERT INTO `gen_menu_relation` VALUES (1, 1, 100, 2); |
INSERT INTO `gen_menu_relation` VALUES (2, 2, 100, 2); |
INSERT INTO `gen_menu_relation` VALUES (3, 3, 100, 2); |
INSERT INTO `gen_menu_relation` VALUES (5, 0, 1, 1); |
INSERT INTO `gen_menu_relation` VALUES (6, 6, 102, 2); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_menu_url_alternative` |
-- |
CREATE TABLE `gen_menu_url_alternative` ( |
`gmua_id_url` int(11) unsigned NOT NULL default '0', |
`gmua_ce_menu` int(11) unsigned NOT NULL default '0', |
`gmua_url` varchar(255) NOT NULL default '', |
PRIMARY KEY (`gmua_id_url`), |
KEY `gen_menu_url_alternative_FKIndex1` (`gmua_ce_menu`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_menu_url_alternative` |
-- |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site` |
-- |
CREATE TABLE `gen_site` ( |
`gs_id_site` int(11) unsigned NOT NULL default '0', |
`gs_ce_admin` int(11) unsigned NOT NULL default '0', |
`gs_ce_i18n` varchar(8) NOT NULL default '', |
`gs_ce_auth` int(11) unsigned NOT NULL default '0', |
`gs_code_num` int(11) NOT NULL default '0', |
`gs_code_alpha` varchar(20) NOT NULL default '', |
`gs_nom` varchar(100) NOT NULL default '', |
`gs_raccourci_clavier` char(1) default NULL, |
`gs_titre` varchar(255) default NULL, |
`gs_mots_cles` text, |
`gs_description` text, |
`gs_auteur` varchar(255) default NULL, |
`gs_date_creation` datetime default NULL, |
`gs_fichier_squelette` varchar(255) NOT NULL default '', |
PRIMARY KEY (`gs_id_site`), |
KEY `idx_fk_gsi_ce_auth` (`gs_ce_auth`), |
KEY `gen_site_FKIndex3` (`gs_ce_i18n`), |
KEY `gen_site_FKIndex4` (`gs_ce_admin`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_site` |
-- |
INSERT INTO `gen_site` VALUES (1, 2, 'fr', 1, 1, 'admin', 'Administration', '', 'Administration de Génésia.', 'Administration, Génésia.', 'Site de test de l''administration de Génésia.', 'Tela Botanica', '2004-07-06 19:06:16', 'admin.html'); |
INSERT INTO `gen_site` VALUES (2, 1, 'en', 1, 1, 'admin', 'Administration', '', 'Administration of Génésia.', 'Administration, Génésia.', 'Web administration interface of Génésia.', 'Tela Botanica', '2004-04-23 14:18:21', '../sites/admin/en/squelettes/admin.html'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_auth` |
-- |
CREATE TABLE `gen_site_auth` ( |
`gsa_id_auth` int(10) unsigned NOT NULL default '0', |
`gsa_nom` varchar(100) NOT NULL default '', |
`gsa_ce_auth_bdd` int(11) unsigned NOT NULL default '0', |
`gsa_ce_auth_ldap` int(10) unsigned NOT NULL default '0', |
`gsa_ce_type_auth` int(11) unsigned default NULL, |
PRIMARY KEY (`gsa_id_auth`), |
KEY `idx_fk_gsa_ce_auth_ldap` (`gsa_ce_auth_ldap`), |
KEY `idx_fk_gsa_ce_auth_bdd` (`gsa_ce_auth_bdd`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_site_auth` |
-- |
INSERT INTO `gen_site_auth` VALUES (0, 'Aucune identification', 0, 0, 0); |
INSERT INTO `gen_site_auth` VALUES (1, 'Administrateur de Papyrus', 1, 0, 1); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_auth_bdd` |
-- |
CREATE TABLE `gen_site_auth_bdd` ( |
`gsab_id_auth_bdd` int(11) unsigned NOT NULL default '0', |
`gsab_dsn` varchar(255) default NULL, |
`gsab_nom_table` varchar(100) default NULL, |
`gsab_nom_champ_login` varchar(100) default NULL, |
`gsab_nom_champ_mdp` varchar(100) default NULL, |
`gsab_cryptage_mdp` varchar(100) default NULL, |
PRIMARY KEY (`gsab_id_auth_bdd`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_site_auth_bdd` |
-- |
INSERT INTO `gen_site_auth_bdd` VALUES (0, NULL, NULL, NULL, NULL, NULL); |
INSERT INTO `gen_site_auth_bdd` VALUES (1, 'mysql://root:0000@127.0.0.1/tela_prod_genesia', 'gen_annuaire', 'ga_mail', 'ga_mot_de_passe', 'md5'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_auth_ldap` |
-- |
CREATE TABLE `gen_site_auth_ldap` ( |
`gsal_id_auth_ldap` int(10) unsigned NOT NULL default '0', |
`gsal_serveur` varchar(100) default NULL, |
`gsal_port` int(11) unsigned default NULL, |
`gsal_base_dn` varchar(255) default NULL, |
`gsal_uid` varchar(100) default NULL, |
PRIMARY KEY (`gsal_id_auth_ldap`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_site_auth_ldap` |
-- |
INSERT INTO `gen_site_auth_ldap` VALUES (0, NULL, NULL, NULL, NULL); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_categorie` |
-- |
CREATE TABLE `gen_site_categorie` ( |
`gsc_id_categorie` int(10) unsigned NOT NULL auto_increment, |
`gsc_intitule_categorie` varchar(255) default NULL, |
PRIMARY KEY (`gsc_id_categorie`) |
) TYPE=MyISAM AUTO_INCREMENT=3 ; |
-- |
-- Contenu de la table `gen_site_categorie` |
-- |
INSERT INTO `gen_site_categorie` VALUES (1, 'Relation entre sites'); |
INSERT INTO `gen_site_categorie` VALUES (2, 'Type de site'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_categorie_valeur` |
-- |
CREATE TABLE `gen_site_categorie_valeur` ( |
`gscv_id_valeur` int(11) unsigned NOT NULL auto_increment, |
`gsc_id_categorie` int(10) unsigned NOT NULL default '0', |
`gscv_intitule_valeur` varchar(255) default NULL, |
PRIMARY KEY (`gscv_id_valeur`) |
) TYPE=MyISAM AUTO_INCREMENT=103 ; |
-- |
-- Contenu de la table `gen_site_categorie_valeur` |
-- |
INSERT INTO `gen_site_categorie_valeur` VALUES (1, 1, 'avoir traduction'); |
INSERT INTO `gen_site_categorie_valeur` VALUES (101, 2, 'défaut'); |
INSERT INTO `gen_site_categorie_valeur` VALUES (2, 1, 'avoir suivant'); |
INSERT INTO `gen_site_categorie_valeur` VALUES (102, 2, 'principal'); |
-- -------------------------------------------------------- |
-- |
-- Structure de la table `gen_site_relation` |
-- |
CREATE TABLE `gen_site_relation` ( |
`gsr_id_site_01` int(11) unsigned NOT NULL default '0', |
`gsr_id_site_02` int(11) unsigned NOT NULL default '0', |
`gsr_id_valeur` int(11) unsigned NOT NULL default '0', |
`gsr_ordre` int(11) unsigned default NULL, |
PRIMARY KEY (`gsr_id_site_01`,`gsr_id_site_02`,`gsr_id_valeur`) |
) TYPE=MyISAM; |
-- |
-- Contenu de la table `gen_site_relation` |
-- |
INSERT INTO `gen_site_relation` VALUES (1, 1, 101, NULL); |
INSERT INTO `gen_site_relation` VALUES (1, 1, 102, 1); |
/branches/livraison_aha/papyrus/documentation/bdd_papyrus.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/branches/livraison_aha/papyrus/documentation/bdd_papyrus.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/livraison_aha/papyrus/documentation/modele/modele_papyrus_general.xml |
---|
New file |
0,0 → 1,1404 |
<?xml version="1.0" standalone="yes" ?> |
<DBMODEL Version="4.0"> |
<SETTINGS> |
<GLOBALSETTINGS ModelName="modele_genesia_general1" IDModel="0" IDVersion="0" VersionStr="1.0.0.0" Comments="" UseVersionHistroy="1" AutoIncVersion="1" DatabaseType="MySQL" ZoomFac="100.00" XPos="226" YPos="360" DefaultDataType="5" DefaultTablePrefix="0" DefSaveDBConn="" DefSyncDBConn="" DefQueryDBConn="" Printer="" HPageCount="4.0" PageAspectRatio="1.440892512336408" PageOrientation="1" PageFormat="A4 (210x297 mm, 8.26x11.7 inches)" SelectedPages="" UsePositionGrid="0" PositionGridX="20" PositionGridY="20" TableNameInRefs="0" DefaultTableType="0" ActivateRefDefForNewRelations="1" FKPrefix="" FKPostfix="" CreateFKRefDefIndex="1" DBQuoteCharacter="`" CreateSQLforLinkedObjects="0" DefModelFont="Nimbus Sans L" CanvasWidth="4096" CanvasHeight="2842" /> |
<DATATYPEGROUPS> |
<DATATYPEGROUP Name="Numeric Types" Icon="1" /> |
<DATATYPEGROUP Name="Date and Time Types" Icon="2" /> |
<DATATYPEGROUP Name="String Types" Icon="3" /> |
<DATATYPEGROUP Name="Blob and Text Types" Icon="4" /> |
<DATATYPEGROUP Name="User defined Types" Icon="5" /> |
<DATATYPEGROUP Name="Geographic Types" Icon="6" /> |
</DATATYPEGROUPS> |
<DATATYPES> |
<DATATYPE ID="1" IDGroup="0" TypeName="TINYINT" Description="A very small integer. The signed range is -128 to 127. The unsigned range is 0 to 255." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="1" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="2" IDGroup="0" TypeName="SMALLINT" Description="A small integer. The signed range is -32768 to 32767. The unsigned range is 0 to 65535." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="1" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="3" IDGroup="0" TypeName="MEDIUMINT" Description="A medium-size integer. The signed range is -8388608 to 8388607. The unsigned range is 0 to 16777215." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="1" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="4" IDGroup="0" TypeName="INT" Description="A normal-size integer. The signed range is -2147483648 to 2147483647. The unsigned range is 0 to 4294967295." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="1" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="0" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="5" IDGroup="0" TypeName="INTEGER" Description="A normal-size integer. The signed range is -2147483648 to 2147483647. The unsigned range is 0 to 4294967295." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="1" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="1" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="6" IDGroup="0" TypeName="BIGINT" Description="A large integer. The signed range is -9223372036854775808 to 9223372036854775807. The unsigned range is 0 to 18446744073709551615." ParamCount="1" OptionCount="2" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="UNSIGNED" Default="0" /> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="7" IDGroup="0" TypeName="FLOAT" Description="A small (single-precision) floating-point number. Cannot be unsigned. Allowable values are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to 3.402823466E+38." ParamCount="1" OptionCount="1" ParamRequired="1" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="precision" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="8" IDGroup="0" TypeName="FLOAT" Description="A small (single-precision) floating-point number. Cannot be unsigned. Allowable values are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to 3.402823466E+38." ParamCount="2" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="9" IDGroup="0" TypeName="DOUBLE" Description="A normal-size (double-precision) floating-point number. Cannot be unsigned. Allowable values are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to 1.7976931348623157E+308." ParamCount="2" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="2" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="10" IDGroup="0" TypeName="DOUBLE PRECISION" Description="This is a synonym for DOUBLE." ParamCount="2" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="2" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="11" IDGroup="0" TypeName="REAL" Description="This is a synonym for DOUBLE." ParamCount="2" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="2" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="12" IDGroup="0" TypeName="DECIMAL" Description="An unpacked floating-point number. Cannot be unsigned. Behaves like a CHAR column." ParamCount="2" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="3" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="13" IDGroup="0" TypeName="NUMERIC" Description="This is a synonym for DECIMAL." ParamCount="2" OptionCount="1" ParamRequired="1" EditParamsAsString="0" SynonymGroup="3" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
<PARAM Name="decimals" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="ZEROFILL" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="14" IDGroup="1" TypeName="DATE" Description="A date. The supported range is \a1000-01-01\a to \a9999-12-31\a." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="15" IDGroup="1" TypeName="DATETIME" Description="A date and time combination. The supported range is \a1000-01-01 00:00:00\a to \a9999-12-31 23:59:59\a." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="16" IDGroup="1" TypeName="TIMESTAMP" Description="A timestamp. The range is \a1970-01-01 00:00:00\a to sometime in the year 2037. The length can be 14 (or missing), 12, 10, 8, 6, 4, or 2 representing YYYYMMDDHHMMSS, ... , YYYYMMDD, ... , YY formats." ParamCount="1" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
</DATATYPE> |
<DATATYPE ID="17" IDGroup="1" TypeName="TIME" Description="A time. The range is \a-838:59:59\a to \a838:59:59\a." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="18" IDGroup="1" TypeName="YEAR" Description="A year in 2- or 4-digit format (default is 4-digit)." ParamCount="1" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
</DATATYPE> |
<DATATYPE ID="19" IDGroup="2" TypeName="CHAR" Description="A fixed-length string (1 to 255 characters) that is always right-padded with spaces to the specified length when stored. values are sorted and compared in case-insensitive fashion according to the default character set unless the BINARY keyword is given." ParamCount="1" OptionCount="1" ParamRequired="1" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="BINARY" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="20" IDGroup="2" TypeName="VARCHAR" Description="A variable-length string (1 to 255 characters). Values are sorted and compared in case-sensitive fashion unless the BINARY keyword is given." ParamCount="1" OptionCount="1" ParamRequired="1" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="length" /> |
</PARAMS> |
<OPTIONS> |
<OPTION Name="BINARY" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="21" IDGroup="2" TypeName="BIT" Description="This is a synonym for CHAR(1)." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="22" IDGroup="2" TypeName="BOOL" Description="This is a synonym for CHAR(1)." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="23" IDGroup="3" TypeName="TINYBLOB" Description="A column maximum length of 255 (2^8 - 1) characters. Values are sorted and compared in case-sensitive fashion." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="24" IDGroup="3" TypeName="BLOB" Description="A column maximum length of 65535 (2^16 - 1) characters. Values are sorted and compared in case-sensitive fashion." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="25" IDGroup="3" TypeName="MEDIUMBLOB" Description="A column maximum length of 16777215 (2^24 - 1) characters. Values are sorted and compared in case-sensitive fashion." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="26" IDGroup="3" TypeName="LONGBLOB" Description="A column maximum length of 4294967295 (2^32 - 1) characters. Values are sorted and compared in case-sensitive fashion." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="27" IDGroup="3" TypeName="TINYTEXT" Description="A column maximum length of 255 (2^8 - 1) characters." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="28" IDGroup="3" TypeName="TEXT" Description="A column maximum length of 65535 (2^16 - 1) characters." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="29" IDGroup="3" TypeName="MEDIUMTEXT" Description="A column maximum length of 16777215 (2^24 - 1) characters." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="30" IDGroup="3" TypeName="LONGTEXT" Description="A column maximum length of 4294967295 (2^32 - 1) characters." ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="31" IDGroup="3" TypeName="ENUM" Description="An enumeration. A string object that can have only one value, chosen from the list of values." ParamCount="1" OptionCount="0" ParamRequired="1" EditParamsAsString="1" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="values" /> |
</PARAMS> |
</DATATYPE> |
<DATATYPE ID="32" IDGroup="3" TypeName="SET" Description="A set. A string object that can have zero or more values, each of which must be chosen from the list of values." ParamCount="1" OptionCount="0" ParamRequired="1" EditParamsAsString="1" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<PARAMS> |
<PARAM Name="values" /> |
</PARAMS> |
</DATATYPE> |
<DATATYPE ID="33" IDGroup="4" TypeName="Varchar(20)" Description="" ParamCount="0" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<OPTIONS> |
<OPTION Name="BINARY" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="34" IDGroup="4" TypeName="Varchar(45)" Description="" ParamCount="0" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<OPTIONS> |
<OPTION Name="BINARY" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="35" IDGroup="4" TypeName="Varchar(255)" Description="" ParamCount="0" OptionCount="1" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
<OPTIONS> |
<OPTION Name="BINARY" Default="0" /> |
</OPTIONS> |
</DATATYPE> |
<DATATYPE ID="36" IDGroup="5" TypeName="GEOMETRY" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="38" IDGroup="5" TypeName="LINESTRING" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="39" IDGroup="5" TypeName="POLYGON" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="40" IDGroup="5" TypeName="MULTIPOINT" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="41" IDGroup="5" TypeName="MULTILINESTRING" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="42" IDGroup="5" TypeName="MULTIPOLYGON" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
<DATATYPE ID="43" IDGroup="5" TypeName="GEOMETRYCOLLECTION" Description="Geographic Datatype" ParamCount="0" OptionCount="0" ParamRequired="0" EditParamsAsString="0" SynonymGroup="0" PhysicalMapping="0" PhysicalTypeName="" > |
</DATATYPE> |
</DATATYPES> |
<COMMON_DATATYPES> |
<COMMON_DATATYPE ID="5" /> |
<COMMON_DATATYPE ID="8" /> |
<COMMON_DATATYPE ID="20" /> |
<COMMON_DATATYPE ID="15" /> |
<COMMON_DATATYPE ID="22" /> |
<COMMON_DATATYPE ID="28" /> |
<COMMON_DATATYPE ID="26" /> |
<COMMON_DATATYPE ID="33" /> |
<COMMON_DATATYPE ID="34" /> |
<COMMON_DATATYPE ID="35" /> |
</COMMON_DATATYPES> |
<TABLEPREFIXES> |
<TABLEPREFIX Name="Defaut (pas de pr\233fixe)" /> |
</TABLEPREFIXES> |
<REGIONCOLORS> |
<REGIONCOLOR Color="Red=#FFEEEC" /> |
<REGIONCOLOR Color="Yellow=#FEFDED" /> |
<REGIONCOLOR Color="Green=#EAFFE5" /> |
<REGIONCOLOR Color="Cyan=#ECFDFF" /> |
<REGIONCOLOR Color="Blue=#F0F1FE" /> |
<REGIONCOLOR Color="Magenta=#FFEBFA" /> |
</REGIONCOLORS> |
<POSITIONMARKERS> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
<POSITIONMARKER ZoomFac="-1.0" X="0" Y="0" /> |
</POSITIONMARKERS> |
</SETTINGS> |
<METADATA> |
<REGIONS> |
<REGION ID="6948" RegionName="G\233n\233sia - Abr\233viation : gen" XPos="2" YPos="3" Width="1773" Height="1715" RegionColor="0" TablePrefix="0" TableType="0" OverwriteTablePrefix="0" OverwriteTableType="0" Comments="Contient les tables du noyau de G\233n\233sia." IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="21" /> |
</REGIONS> |
<TABLES> |
<TABLE ID="6929" Tablename="gen_menu_cache" PrevTableName="CACHE" XPos="867" YPos="793" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\nChunks=2\nChunkSize=64\n" Comments="Contient les pages en cache du site." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6393" OrderPos="2" > |
<COLUMNS> |
<COLUMN ID="1034" ColName="gmcac_id_md5_url" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(32)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Valeur md5 de l\aurl."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6807" ColName="gmcac_ce_site" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1036" ColName="gmcac_corps" PrevColName="" Pos="3" idDatatype="26" DatatypeParams="" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Contenu sous forme de bits de la page compress\233."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1037" ColName="gmcac_date_heure" PrevColName="" Pos="4" idDatatype="15" DatatypeParams="" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="0000-00-00 00:00:00" Comments="Date et heure de ka mise en cache."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1038" ColName="gmcac_taille" PrevColName="" Pos="5" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Taille de la page avant compression."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1039" ColName="gmcac_gz_taille" PrevColName="" Pos="6" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Taille de la page compress\233e."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_END> |
<RELATION_END ID="6949" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="1040" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1034" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6827" IndexName="gen_menu_cache_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6418"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6807" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6930" Tablename="gen_menu_relation" PrevTableName="MENU_LEVEL_1" XPos="952" YPos="1193" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\nChunks=2\nChunkSize=64\n" Comments="Table permettant de connaitre les relations unissant les menus entre eux." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6396" OrderPos="3" > |
<COLUMNS> |
<COLUMN ID="6662" ColName="gmr_id_menu_01" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant du menu 01."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6664" ColName="gmr_id_menu_02" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant du menu 02."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6736" ColName="gmr_id_valeur" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6691" ColName="gmr_ordre" PrevColName="" Pos="3" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Ordre des relations quand on a le meme identifiant de menu 01 et le meme type de relation."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_END> |
<RELATION_END ID="6965" /> |
<RELATION_END ID="6966" /> |
<RELATION_END ID="6968" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="1273" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6662" LengthParam="0" /> |
<INDEXCOLUMN idColumn="6664" LengthParam="0" /> |
<INDEXCOLUMN idColumn="6736" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6663" IndexName="gen_menu_relation_FKIndex2" IndexKind="1" FKRefDef_Obj_id="6656"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6662" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6665" IndexName="gen_menu_relation_FKIndex3" IndexKind="1" FKRefDef_Obj_id="6659"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6664" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6737" IndexName="gen_menu_relation_FKIndex3" IndexKind="1" FKRefDef_Obj_id="6705"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6736" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6931" Tablename="gen_site" PrevTableName="PROJECT" XPos="583" YPos="290" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations sur les sites g\233r\233s par G\233n\233sia." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6397" OrderPos="4" > |
<COLUMNS> |
<COLUMN ID="1108" ColName="gs_id_site" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Indentifiant du site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6800" ColName="gs_ce_i18n" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(8)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Langue du site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6798" ColName="gs_ce_auth" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="0" Comments="Poss\232de une valeur diff\233rente de 0 si le site utilise l\aauthentification des utilisateurs."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1115" ColName="gs_fichier_squelette" PrevColName="" Pos="8" idDatatype="20" DatatypeParams="(255)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Chemin et nom du fichier squelette \224 utiliser par d\233faut pour ce site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6838" ColName="gs_code_num" PrevColName="" Pos="14" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Un site d\aorigine ainsi que ses traductions ont le meme code num\233rique."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5777" ColName="gs_code_alpha" PrevColName="gs_code" Pos="12" idDatatype="20" DatatypeParams="(20)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Un site d\aorigine ainsi que ses traductions ont le meme code alphanum\233rique."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5776" ColName="gs_nom" PrevColName="" Pos="11" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom du site dans la langue de ce site.."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6816" ColName="gs_raccourci_clavier" PrevColName="" Pos="10" idDatatype="19" DatatypeParams="(1)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Raccourci clavier pour acc\233der au lien menant vers ce site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6815" ColName="gs_titre" PrevColName="" Pos="11" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Titre par d\233faut des menus du site, dans la langue du site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6817" ColName="gs_mots_cles" PrevColName="gs_mot_cles" Pos="11" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Mots cl\233, dans la langue du site, d\233finissant le contenu g\233n\233ral de ce site. Utilis\233 par d\233faut pour les menus."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6189" ColName="gs_description" PrevColName="" Pos="10" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Description du contenu g\233n\233ral du site dans la langue de ce site. Utilis\233 par d\233faut pour les menus."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6818" ColName="gs_auteur" PrevColName="" Pos="12" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Auteur du site. G\233n\233ralement la structure \224 l\aorigine du site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6821" ColName="gs_date_creation" PrevColName="" Pos="15" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date de cr\233ation du site."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6801" ColName="gs_ce_admin" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant de l\aadministrateur \224 l\aorigine de ce site."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6949" /> |
<RELATION_START ID="6958" /> |
<RELATION_START ID="6971" /> |
<RELATION_START ID="6972" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6951" /> |
<RELATION_END ID="6957" /> |
<RELATION_END ID="6960" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="3637" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1108" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="5778" IndexName="idx_gsi_abreviation" IndexKind="2" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="5777" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6474" IndexName="idx_fk_gsi_ce_auth" IndexKind="1" FKRefDef_Obj_id="6426"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6798" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6609" IndexName="gen_site_FKIndex3" IndexKind="1" FKRefDef_Obj_id="6535"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6800" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6625" IndexName="gen_site_FKIndex4" IndexKind="1" FKRefDef_Obj_id="6623"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6801" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6932" Tablename="gen_annuaire" PrevTableName="annu_USERS" XPos="63" YPos="914" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations sur les administrateurs de G\233n\233sia." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6398" OrderPos="5" > |
<COLUMNS> |
<COLUMN ID="1164" ColName="ga_id_administrateur" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="0" Comments="Identifiant d\aune personne participant \224 l\aadministration de G\233n\233sia."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6565" ColName="ga_ce_i18n" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(8)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1167" ColName="ga_nom" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(32)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de la personne."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1168" ColName="ga_prenom" PrevColName="" Pos="5" idDatatype="20" DatatypeParams="(32)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Pr\233nom de la personne."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1172" ColName="ga_mot_de_passe" PrevColName="" Pos="9" idDatatype="20" DatatypeParams="(32)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="X X" Comments="Mot de passe pour acc\233der \224 l\ainterface d\aadministration."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1173" ColName="ga_mail" PrevColName="" Pos="10" idDatatype="20" DatatypeParams="(128)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Mail de la personne."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6950" /> |
<RELATION_START ID="6959" /> |
<RELATION_START ID="6960" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6956" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="1189" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1164" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6534" IndexName="gen_annuaire_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6532"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6565" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6933" Tablename="gen_application" PrevTableName="APPLICATION" XPos="1364" YPos="610" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations sur les applications ou les applettes disponibles pour G\233n\233sia.\nUne application est sp\233cifiquement appel\233e par un menu et ce menu lui transmet des param\232tres.\nUne applette est appell\233e via une balise pr\233sente dans un squelette et poss\232de ses propres param\232tres.\nUne applette sera donc commune \224 toutes les pages utilisant le squelette en question." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6399" OrderPos="6" > |
<COLUMNS> |
<COLUMN ID="5193" ColName="gap_id_application" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant de l\aapplication"> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5195" ColName="gap_nom" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(100)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de l\aapplication."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5196" ColName="gap_description" PrevColName="" Pos="4" idDatatype="29" DatatypeParams="" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Champs libre pour d\233crire une application."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5204" ColName="gap_chemin" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Chemin menant au fichier principal de l\aapplication (ancien nom : gp_chemin_application)."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5807" ColName="gap_bool_applette" PrevColName="" Pos="5" idDatatype="1" DatatypeParams="(1)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="0" Comments="Boul\233en permettant de savoir si on a \224 faire \224 une applette (1) ou pas (0)."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5800" ColName="gap_applette_balise" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Balise permettant d\aappeler l\aapplette depuis un squelette."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5808" ColName="gap_applette_arguments" PrevColName="" Pos="6" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Arguments \224 transmettre \224 l\aapplette."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6962" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="5201" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="5193" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6934" Tablename="gen_menu_url_alternative" PrevTableName="Table_10" XPos="680" YPos="1537" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les url alternative pour un menu d\aun site dans une langue donn\233e." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6400" OrderPos="7" > |
<COLUMNS> |
<COLUMN ID="5211" ColName="gmua_id_url" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="0" Comments="Identifiant num\233rique d\aun raccourci."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6630" ColName="gmua_ce_menu" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5214" ColName="gmua_url" PrevColName="" Pos="2" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Url du raccourci ou d\aune ancienne adresse."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_END> |
<RELATION_END ID="6961" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="5212" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="5211" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6629" IndexName="gen_menu_url_alternative_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6627"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6630" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6935" Tablename="gen_menu" PrevTableName="Table_12" XPos="497" YPos="787" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations sur les menus constituant un site.\nLes informations d\aun menu permettent de g\233n\233rer les entetes Dublin Core." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6403" OrderPos="8" > |
<COLUMNS> |
<COLUMN ID="5823" ColName="gm_id_menu" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aun menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6805" ColName="gm_ce_site" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6642" ColName="gm_ce_i18n" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(8)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6634" ColName="gm_ce_application" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant de l\aapplication g\233n\233rant le contenu de ce menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6670" ColName="gm_application_arguments" PrevColName="" Pos="36" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Argument de l\aapplication qui g\233n\232rera le contenu de ce menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6671" ColName="gm_fichier_squelette" PrevColName="" Pos="37" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Chemin d\aacc\232s au fichier de squelette de ce menu s\ail en poss\232de un."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6836" ColName="gm_code_num" PrevColName="" Pos="37" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Un menu d\aorigine ainsi que ses traductions ont le meme code num\233rique."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6583" ColName="gm_code_alpha" PrevColName="gm_code" Pos="30" idDatatype="20" DatatypeParams="(20)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Un menu d\aorigine, ainsi que ses traductions ont le meme code alphanum\233rique."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6688" ColName="gm_nom" PrevColName="" Pos="41" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom unique d\aun menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6672" ColName="gm_raccourci_clavier" PrevColName="" Pos="38" idDatatype="19" DatatypeParams="(1)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Raccourci clavier utilis\233 pour acc\233der \224 ce menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6356" ColName="gm_robot" PrevColName="" Pos="25" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="index,follow" Comments="Valeur pour l\aindexation par les robots."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5838" ColName="gm_titre" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Titre du document."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5839" ColName="gm_titre_alternatif" PrevColName="" Pos="2" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Titre alternatif du document."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5841" ColName="gm_mots_cles" PrevColName="" Pos="4" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Mots-clefs : utiliser des mots-clefs choisis dans le cadre d\aune politique de classement."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5843" ColName="gm_description_libre" PrevColName="" Pos="6" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Texte libre d\233crivant le document."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5842" ColName="gm_description_resume" PrevColName="" Pos="5" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Type MIME des feuilles de styles de la page."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5850" ColName="gm_description_table_matieres" PrevColName="" Pos="12" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Table des mati\232res du document."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5895" ColName="gm_source" PrevColName="" Pos="19" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Lien web (URI) vers la source du document pr\233sent."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5840" ColName="gm_auteur" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Auteur (cr\233ateur) du document : nom de la personne, de l\aorganisation ou du service \224 l\aorigine de la r\233daction du document."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5846" ColName="gm_contributeur" PrevColName="" Pos="8" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de la personne, de l\aorganisation ou du service ayant contribu\233 \224 l\a\233laboration du document. Plusieurs noms peuvent etre indiqu\233 en les s\233parant par des virgules eux meme encadr\233 d\aespace."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5845" ColName="gm_editeur" PrevColName="" Pos="7" idDatatype="28" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de la personne, de l\aorganisation ou du service \224 l\aorigine de la publication du document. Plusieurs noms peuvent etre indiqu\233 en les s\233parant par des virgules eux meme encadr\233 d\aespace."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5881" ColName="gm_date_creation" PrevColName="" Pos="13" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date de cr\233ation du document (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5887" ColName="gm_date_soumission" PrevColName="" Pos="17" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date de soumission du document (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5888" ColName="gm_date_acceptation" PrevColName="" Pos="18" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date d\aacceptation du document (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6579" ColName="gm_date_publication" PrevColName="" Pos="29" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date \224 laquelle la page a \233t\233 r\233ellement mise en ligne (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6586" ColName="gm_date_debut_validite" PrevColName="" Pos="31" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date de d\233but de validit\233 du document, \224 laquelle la page doit etre mise en ligne (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5882" ColName="gm_date_fin_validite" PrevColName="" Pos="14" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date de fin de validit\233 du document, \224 laquelle la page doit etre retir\233 de la mise en ligne (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5885" ColName="gm_date_copyright" PrevColName="" Pos="16" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date du copyright (format W3CDTF)."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5847" ColName="gm_licence" PrevColName="" Pos="9" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Lien web vers les droits relatifs \224 la ressource : permet de donner des informations sur le statut des droits du document, par exemple la pr\233sence d\aun copyright, ou un lien vers le d\233tenteur des droits. L\aabsence de cet \233l\233ment ne pr\233sume pas que le document est libre de droits."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6577" ColName="gm_categorie" PrevColName="" Pos="28" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Grande cat\233gorie de document."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5848" ColName="gm_public" PrevColName="" Pos="10" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Public vis\233 par le document : le public repr\233sente le groupe de personnes \224 qui le document est destin\233"> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5849" ColName="gm_public_niveau" PrevColName="" Pos="11" idDatatype="20" DatatypeParams="(45)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Niveau du public demand\233e pour ce document dans un contexte de formation."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5899" ColName="gm_ce_type_portee_spatiale" PrevColName="" Pos="21" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aun type de port\233e spatiale du document. 0 inconnu, 1 :iso-3166, 2 : point g\233ographique, 3 : r\233gion g\233ographique, 4 : TGN."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5900" ColName="gm_portee_spatiale" PrevColName="" Pos="22" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Valeur de la port\233e spatiale."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5901" ColName="gm_ce_type_portee_temporelle" PrevColName="" Pos="23" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aun type de port\233e temporelle du document. 0 : inconnu, 1 : Period, 2 W3CDTF."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="5902" ColName="gm_portee_temporelle" PrevColName="" Pos="24" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Valeur de la port\233e temporelle."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6622" ColName="gm_ce_admin" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant de l\aadministrateur cr\233ant, modifiant ou validant ce menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6961" /> |
<RELATION_START ID="6963" /> |
<RELATION_START ID="6965" /> |
<RELATION_START ID="6966" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6958" /> |
<RELATION_END ID="6959" /> |
<RELATION_END ID="6962" /> |
<RELATION_END ID="6964" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="5824" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="5823" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6621" IndexName="gen_menu_FKIndex2" IndexKind="1" FKRefDef_Obj_id="6619"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6622" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6633" IndexName="gen_menu_FKIndex3" IndexKind="1" FKRefDef_Obj_id="6631"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6634" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6641" IndexName="gen_menu_FKIndex4" IndexKind="1" FKRefDef_Obj_id="6639"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6642" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6828" IndexName="gen_menu_FKIndex4" IndexKind="1" FKRefDef_Obj_id="6615"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6805" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6936" Tablename="gen_menu_contenu" PrevTableName="Table_13" XPos="373" YPos="1537" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Permet de suivre l\a\233volution d\aune page et d\aobtenir ses informations d\aentete et son contenu associ\233." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6404" OrderPos="9" > |
<COLUMNS> |
<COLUMN ID="6611" ColName="gmc_id_contenu" PrevColName="" Pos="7" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aun contenu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6811" ColName="gmc_ce_admin" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6638" ColName="gmc_ce_menu" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant du menu poss\233dant ce contenu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6607" ColName="gmc_ce_type_contenu" PrevColName="" Pos="9" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Type du contenu : 1, pour XHTML, 2 pour WIKINI."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6608" ColName="gmc_contenu" PrevColName="" Pos="10" idDatatype="29" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Le contenu du menu."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6605" ColName="gmc_ce_type_modification" PrevColName="" Pos="7" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Type de modification effectu\233e sur le menu : 1 pour mineure, 2 pour majeure."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6606" ColName="gmc_resume_modification" PrevColName="" Pos="8" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="R\233sum\233 de la modification, si majeure."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6603" ColName="gmc_date_modification" PrevColName="" Pos="5" idDatatype="15" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Date et heure de modification du contenu."> |
<OPTIONSELECTED> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6604" ColName="gmc_bool_dernier" PrevColName="" Pos="6" idDatatype="1" DatatypeParams="(1)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="1" Comments="Bool\233\233n indiquant le dernier contenu pour le menu."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_END> |
<RELATION_END ID="6950" /> |
<RELATION_END ID="6963" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="6612" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6611" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6482" IndexName="idx_fk_gp_ce_admin" IndexKind="1" FKRefDef_Obj_id="6424"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6811" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6637" IndexName="gen_menu_contenu_FKIndex2" IndexKind="1" FKRefDef_Obj_id="6635"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6638" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6937" Tablename="gen_site_auth" PrevTableName="Table_15" XPos="1357" YPos="14" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations communes aux diff\233rents syst\232mes d\aidentification.\nLe type d\aidentification permet de savoir dans quel table chercher les informations d\aidentifications sp\233cifique au mode d\aidentification." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6406" OrderPos="10" > |
<COLUMNS> |
<COLUMN ID="6265" ColName="gsa_id_auth" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant des informations d\aidentification."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6267" ColName="gsa_ce_type_auth" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Type d\aidentification : 0 inconnu, 1 : base de donn\233es, 2 : ldap."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6840" ColName="gsa_nom" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de l\aauthentification."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6341" ColName="gsa_ce_auth_bdd" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant des informations pour un identification via une base de donn\233es. "> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6340" ColName="gsa_ce_auth_ldap" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant des informations pour un identification via LDAP. "> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6951" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6952" /> |
<RELATION_END ID="6953" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="6266" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6265" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6483" IndexName="idx_fk_gsa_ce_auth_ldap" IndexKind="1" FKRefDef_Obj_id="6427"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6340" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6484" IndexName="idx_fk_gsa_ce_auth_bdd" IndexKind="1" FKRefDef_Obj_id="6428"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6341" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6938" Tablename="gen_site_auth_bdd" PrevTableName="Table_16" XPos="1484" YPos="187" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations pour identification via une base de donn\233es." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6407" OrderPos="11" > |
<COLUMNS> |
<COLUMN ID="6279" ColName="gsab_id_auth_bdd" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aune identification par base de donn\233es."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6281" ColName="gsab_dsn" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Valeur du dsn."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6282" ColName="gsab_nom_table" PrevColName="" Pos="2" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom de la table o\249 sont stock\233s les logins et mot de passes."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6283" ColName="gsab_nom_champ_login" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom du champ o\249 se trouve les logins."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6284" ColName="gsab_nom_champ_mdp" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom du champ o\249 se trouve les mots de passe."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6285" ColName="gsab_cryptage_mdp" PrevColName="" Pos="5" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Type de cryptage du mot de passe."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6953" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="6280" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6279" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6939" Tablename="gen_site_auth_ldap" PrevTableName="Table_17" XPos="1241" YPos="191" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les information sp\233cifique \224 une identification via LDAP." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6408" OrderPos="12" > |
<COLUMNS> |
<COLUMN ID="6288" ColName="gsal_id_auth_ldap" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identfiant des informations d\aidentification via ldap."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6290" ColName="gsal_serveur" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Nom du serveur ldap."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6291" ColName="gsal_port" PrevColName="" Pos="2" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Port du serveur ldap."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6292" ColName="gsal_base_dn" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Base dn."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6293" ColName="gsal_uid" PrevColName="" Pos="4" idDatatype="20" DatatypeParams="(100)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Uid."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6952" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="6289" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6288" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6940" Tablename="gen_i18n" PrevTableName="LOCALE" XPos="105" YPos="199" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Contient les informations sur le couple langue / pays autrement appel\233 Internationalisation ou i18n." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6524" OrderPos="13" > |
<COLUMNS> |
<COLUMN ID="1015" ColName="gi_id_i18n" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(8)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant d\aune langue (voir RFC 1766). Exemple : fr-FR."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6558" ColName="gi_ce_langue" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(2)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant de la langue."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6556" ColName="gi_ce_pays" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(2)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments="Identifiant du pays."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1018" ColName="gi_jeu_de_caracteres" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(50)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Jeu de caract\232re de la langue. Exemple : iso-8859-15 pour le fran\231ais."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1021" ColName="gi_nom" PrevColName="" Pos="3" idDatatype="20" DatatypeParams="(255)" Width="0" Prec="0" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Informations sur la langue. Peut apparaitre dans l\aattribut alt de l\aimage repr\233sentant la langue."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6956" /> |
<RELATION_START ID="6957" /> |
<RELATION_START ID="6964" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6954" /> |
<RELATION_END ID="6955" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="1024" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1015" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6570" IndexName="gen_i18n_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6527"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6556" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6571" IndexName="gen_i18n_FKIndex2" IndexKind="1" FKRefDef_Obj_id="6528"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6558" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6941" Tablename="gen_i18n_pays" PrevTableName="Table_04" XPos="232" YPos="41" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Cette table contient les diff\233rents pays du monde et leur nom par d\233faut (en fran\231ais). Ainsi qu\aun nom de fichier pour le drapeaux." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6525" OrderPos="14" > |
<COLUMNS> |
<COLUMN ID="1092" ColName="gip_id_pays" PrevColName="" Pos="0" idDatatype="20" DatatypeParams="(2)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant du pays code iso639."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1098" ColName="gip_nom" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Le nom par d\233faut, en fran\231ais."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1108" ColName="gip_fichier_drapeau" PrevColName="" Pos="2" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Un fichier graphique pour le drapeau."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6954" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="1093" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1092" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6942" Tablename="gen_i18n_langue" PrevTableName="Table_05" XPos="8" YPos="42" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="Cette table contient les langues, leur noms par d\233faut, en fran\231ais en g\233n\233ral et la direction d\a\233criture (ltr left to right ou rtl right to left)" Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6526" OrderPos="15" > |
<COLUMNS> |
<COLUMN ID="1102" ColName="gil_id_langue" PrevColName="" Pos="0" idDatatype="20" DatatypeParams="(2)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Identifiant de la langue. Iso3166."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1104" ColName="gil_nom" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Le nom dans la langue par d\233faut."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="1106" ColName="gil_direction" PrevColName="" Pos="2" idDatatype="20" DatatypeParams="(20)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="La direction d\a\233criture ltr ou rtl."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6955" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="1103" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="1102" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6943" Tablename="gen_menu_categorie_valeur" PrevTableName="Table_18" XPos="952" YPos="1062" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="" Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6676" OrderPos="16" > |
<COLUMNS> |
<COLUMN ID="6693" ColName="gmcv_id_valeur" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="1" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6776" ColName="gmcv_id_categorie" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6695" ColName="gmcv_intitule_valeur" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6968" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6967" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="6694" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6693" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6738" IndexName="gen_menu_categorie_valeur_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6684"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6776" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6944" Tablename="gen_menu_categorie" PrevTableName="Table_19" XPos="943" YPos="963" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="" Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6677" OrderPos="17" > |
<COLUMNS> |
<COLUMN ID="6702" ColName="gmca_id_categorie" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="1" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6704" ColName="gmca_intitule_categorie" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6967" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="6703" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6702" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6945" Tablename="gen_site_relation" PrevTableName="MENU_LEVEL_1" XPos="991" YPos="373" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\nChunks=2\nChunkSize=64\n" Comments="Table permettant de connaitre les relations unissant les menus entre eux." Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6739" OrderPos="18" > |
<COLUMNS> |
<COLUMN ID="6809" ColName="gsr_id_site_01" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6808" ColName="gsr_id_site_02" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="0" Prec="0" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6784" ColName="gsr_id_valeur" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6743" ColName="gsr_ordre" PrevColName="" Pos="3" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments="Ordre des relations quand on a le meme identifiant de menu 01 et le meme type de relation."> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_END> |
<RELATION_END ID="6970" /> |
<RELATION_END ID="6971" /> |
<RELATION_END ID="6972" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="6774" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6809" LengthParam="0" /> |
<INDEXCOLUMN idColumn="6808" LengthParam="0" /> |
<INDEXCOLUMN idColumn="6784" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6829" IndexName="gen_site_relation_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6746"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6784" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6830" IndexName="gen_site_relation_FKIndex2" IndexKind="1" FKRefDef_Obj_id="6777"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6809" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6831" IndexName="gen_site_relation_FKIndex3" IndexKind="1" FKRefDef_Obj_id="6780"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6808" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6946" Tablename="gen_site_categorie_valeur" PrevTableName="Table_18" XPos="980" YPos="234" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="" Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6751" OrderPos="19" > |
<COLUMNS> |
<COLUMN ID="6752" ColName="gscv_id_valeur" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="(11)" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="1" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6799" ColName="gsc_id_categorie" PrevColName="" Pos="1" idDatatype="5" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="0" NotNull="1" AutoInc="0" IsForeignKey="1" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6754" ColName="gscv_intitule_valeur" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6970" /> |
</RELATIONS_START> |
<RELATIONS_END> |
<RELATION_END ID="6969" /> |
</RELATIONS_END> |
<INDICES> |
<INDEX ID="6756" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6752" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
<INDEX ID="6832" IndexName="gen_site_categorie_valeur_FKIndex1" IndexKind="1" FKRefDef_Obj_id="6755"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6799" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
<TABLE ID="6947" Tablename="gen_site_categorie" PrevTableName="Table_19" XPos="971" YPos="107" TableType="0" TablePrefix="0" nmTable="0" Temporary="0" UseStandardInserts="0" StandardInserts="\n" TableOptions="DelayKeyTblUpdates=0\nPackKeys=0\nRowChecksum=0\nRowFormat=0\nUseRaid=0\nRaidType=0\n" Comments="" Collapsed="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="6758" OrderPos="20" > |
<COLUMNS> |
<COLUMN ID="6759" ColName="gsc_id_categorie" PrevColName="" Pos="0" idDatatype="5" DatatypeParams="" Width="-1" Prec="-1" PrimaryKey="1" NotNull="1" AutoInc="1" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="1" /> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
<COLUMN ID="6760" ColName="gsc_intitule_categorie" PrevColName="" Pos="1" idDatatype="20" DatatypeParams="(255)" Width="-1" Prec="-1" PrimaryKey="0" NotNull="0" AutoInc="0" IsForeignKey="0" DefaultValue="" Comments=""> |
<OPTIONSELECTED> |
<OPTIONSELECT Value="0" /> |
</OPTIONSELECTED> |
</COLUMN> |
</COLUMNS> |
<RELATIONS_START> |
<RELATION_START ID="6969" /> |
</RELATIONS_START> |
<INDICES> |
<INDEX ID="6761" IndexName="PRIMARY" IndexKind="0" FKRefDef_Obj_id="-1"> |
<INDEXCOLUMNS> |
<INDEXCOLUMN idColumn="6759" LengthParam="0" /> |
</INDEXCOLUMNS> |
</INDEX> |
</INDICES> |
</TABLE> |
</TABLES> |
<RELATIONS> |
<RELATION ID="6949" RelationName="fk_GS_GMCAC" Kind="2" SrcTable="6931" DestTable="6929" FKFields="gs_id_site=gmcac_ce_site\n" FKFieldsComments="\n" relDirection="3" MidOffset="1" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="-48" StartIntervalOffsetX="11" StartIntervalOffsetY="-28" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6827" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="22" /> |
<RELATION ID="6950" RelationName="fk_GA_GMC" Kind="2" SrcTable="6932" DestTable="6936" FKFields="ga_id_administrateur=gmc_ce_admin\n" FKFieldsComments="\n" relDirection="3" MidOffset="215" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="-53" CaptionOffsetY="-23" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6482" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="23" /> |
<RELATION ID="6951" RelationName="fk_GSA_GS" Kind="2" SrcTable="6937" DestTable="6931" FKFields="gsa_id_auth=gs_ce_auth\n" FKFieldsComments="\n" relDirection="4" MidOffset="-236" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="-10" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="-9" EndIntervalOffsetY="-3" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6474" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="24" /> |
<RELATION ID="6952" RelationName="fk_GSAL_GSA" Kind="5" SrcTable="6939" DestTable="6937" FKFields="gsal_id_auth_ldap=gsa_ce_auth_ldap\n" FKFieldsComments="\n" relDirection="1" MidOffset="-1" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6483" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="25" /> |
<RELATION ID="6953" RelationName="fk_GSAB_GSA" Kind="5" SrcTable="6938" DestTable="6937" FKFields="gsab_id_auth_bdd=gsa_ce_auth_bdd\n" FKFieldsComments="\n" relDirection="1" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="-69" CaptionOffsetY="-8" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6484" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="26" /> |
<RELATION ID="6954" RelationName="fk_GIP_GI" Kind="2" SrcTable="6941" DestTable="6940" FKFields="gip_id_pays=gi_ce_pays\n" FKFieldsComments="\n" relDirection="3" MidOffset="1" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="3" CaptionOffsetY="-3" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6570" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="27" /> |
<RELATION ID="6955" RelationName="fk_GIL_GI" Kind="2" SrcTable="6942" DestTable="6940" FKFields="gil_id_langue=gi_ce_langue\n" FKFieldsComments="\n" relDirection="3" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="53" CaptionOffsetY="-22" StartIntervalOffsetX="6" StartIntervalOffsetY="4" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6571" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="28" /> |
<RELATION ID="6956" RelationName="fk_GI_GA" Kind="2" SrcTable="6940" DestTable="6932" FKFields="gi_id_i18n=ga_ce_i18n\n" FKFieldsComments="\n" relDirection="3" MidOffset="-30" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="47" CaptionOffsetY="-20" StartIntervalOffsetX="0" StartIntervalOffsetY="5" EndIntervalOffsetX="-3" EndIntervalOffsetY="-5" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6534" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="29" /> |
<RELATION ID="6957" RelationName="fk_GI_GS" Kind="2" SrcTable="6940" DestTable="6931" FKFields="gi_id_i18n=gs_ce_i18n\n" FKFieldsComments="\n" relDirection="2" MidOffset="5" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6609" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="30" /> |
<RELATION ID="6958" RelationName="fk_GS_GM" Kind="2" SrcTable="6931" DestTable="6935" FKFields="gs_id_site=gm_ce_site\n" FKFieldsComments="\n" relDirection="3" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6828" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="31" /> |
<RELATION ID="6959" RelationName="fk_GA_GM" Kind="2" SrcTable="6932" DestTable="6935" FKFields="ga_id_administrateur=gm_ce_admin\n" FKFieldsComments="\n" relDirection="2" MidOffset="3" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6621" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="32" /> |
<RELATION ID="6960" RelationName="fk_GA_GS" Kind="2" SrcTable="6932" DestTable="6931" FKFields="ga_id_administrateur=gs_ce_admin\n" FKFieldsComments="\n" relDirection="2" MidOffset="-40" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6625" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="33" /> |
<RELATION ID="6961" RelationName="fk_GM_GMUA" Kind="2" SrcTable="6935" DestTable="6934" FKFields="gm_id_menu=gmua_ce_menu\n" FKFieldsComments="\n" relDirection="3" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="-62" CaptionOffsetY="-6" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6629" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="34" /> |
<RELATION ID="6962" RelationName="fk_GAP_GM" Kind="2" SrcTable="6933" DestTable="6935" FKFields="gap_id_application=gm_ce_application\n" FKFieldsComments="\n" relDirection="4" MidOffset="190" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6633" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="35" /> |
<RELATION ID="6963" RelationName="fk_GM_GMC" Kind="2" SrcTable="6935" DestTable="6936" FKFields="gm_id_menu=gmc_ce_menu\n" FKFieldsComments="\n" relDirection="3" MidOffset="3" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="53" CaptionOffsetY="-5" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6637" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="36" /> |
<RELATION ID="6964" RelationName="fk_GI_GM" Kind="2" SrcTable="6940" DestTable="6935" FKFields="gi_id_i18n=gm_ce_i18n\n" FKFieldsComments="\n" relDirection="3" MidOffset="40" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6641" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="37" /> |
<RELATION ID="6965" RelationName="fk_GM_GMR_01" Kind="1" SrcTable="6935" DestTable="6930" FKFields="gm_id_menu=gmr_id_menu_01\n" FKFieldsComments="\n" relDirection="2" MidOffset="10" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="0" CaptionOffsetY="0" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="16" EndIntervalOffsetY="-5" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6663" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="38" /> |
<RELATION ID="6966" RelationName="fk_GM_GMR_02" Kind="1" SrcTable="6935" DestTable="6930" FKFields="gm_id_menu=gmr_id_menu_02\n" FKFieldsComments="\n" relDirection="2" MidOffset="9" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="1" CaptionOffsetY="-60" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="17" EndIntervalOffsetY="-6" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6665" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="39" /> |
<RELATION ID="6967" RelationName="fk_GMCA_GMVC" Kind="2" SrcTable="6944" DestTable="6943" FKFields="gmca_id_categorie=gmcv_id_categorie\n" FKFieldsComments="\n" relDirection="3" MidOffset="19" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="72" CaptionOffsetY="-23" StartIntervalOffsetX="1" StartIntervalOffsetY="5" EndIntervalOffsetX="1" EndIntervalOffsetY="-8" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6738" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="40" /> |
<RELATION ID="6968" RelationName="fk_GMCV_GMR" Kind="1" SrcTable="6943" DestTable="6930" FKFields="gmcv_id_valeur=gmr_id_valeur\n" FKFieldsComments="\n" relDirection="3" MidOffset="1" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="64" CaptionOffsetY="-28" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6737" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="41" /> |
<RELATION ID="6969" RelationName="fk_GSC_GSCV" Kind="2" SrcTable="6947" DestTable="6946" FKFields="gsc_id_categorie=gsc_id_categorie\n" FKFieldsComments="\n" relDirection="3" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="62" CaptionOffsetY="-20" StartIntervalOffsetX="0" StartIntervalOffsetY="5" EndIntervalOffsetX="1" EndIntervalOffsetY="-4" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6832" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="42" /> |
<RELATION ID="6970" RelationName="fk_GSCV_GSR" Kind="1" SrcTable="6946" DestTable="6945" FKFields="gscv_id_valeur=gsr_id_valeur\n" FKFieldsComments="\n" relDirection="3" MidOffset="-10" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="70" CaptionOffsetY="-24" StartIntervalOffsetX="0" StartIntervalOffsetY="0" EndIntervalOffsetX="0" EndIntervalOffsetY="0" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6829" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="43" /> |
<RELATION ID="6971" RelationName="fk_GS_GSR_01" Kind="1" SrcTable="6931" DestTable="6945" FKFields="gs_id_site=gsr_id_site_01\n" FKFieldsComments="\n" relDirection="2" MidOffset="0" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="-17" CaptionOffsetY="4" StartIntervalOffsetX="9" StartIntervalOffsetY="0" EndIntervalOffsetX="-12" EndIntervalOffsetY="-23" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6830" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="44" /> |
<RELATION ID="6972" RelationName="fk_GS_GSR_02" Kind="1" SrcTable="6931" DestTable="6945" FKFields="gs_id_site=gsr_id_site_02\n" FKFieldsComments="\n" relDirection="2" MidOffset="1" OptionalStart="0" OptionalEnd="0" CaptionOffsetX="-3" CaptionOffsetY="-53" StartIntervalOffsetX="11" StartIntervalOffsetY="0" EndIntervalOffsetX="-12" EndIntervalOffsetY="-27" CreateRefDef="1" Invisible="0" RefDef="Matching=0\nOnDelete=3\nOnUpdate=3\n" Comments="" FKRefDefIndex_Obj_id="6831" Splitted="0" IsLinkedObject="0" IDLinkedModel="-1" Obj_id_Linked="-1" OrderPos="45" /> |
</RELATIONS> |
<NOTES> |
</NOTES> |
<IMAGES> |
</IMAGES> |
</METADATA> |
<PLUGINDATA> |
<PLUGINDATARECORDS> |
</PLUGINDATARECORDS> |
</PLUGINDATA> |
<QUERYDATA> |
<QUERYRECORDS> |
</QUERYRECORDS> |
</QUERYDATA> |
<LINKEDMODELS> |
</LINKEDMODELS> |
</DBMODEL> |
/branches/livraison_aha/papyrus/documentation/modele/images/modele_papyrus_general.png |
---|
New file |
0,0 → 1,2618 |
PNG |
+IHDR â 5 = IDATxìÝlWº8üÇ+s5Â+ |
+®Á5¸æÉ®T ÀÔ5@!B!B!Ðݲ\QNÓ+;B!z -WTeïµq[¸×d×8÷;v5±ë@!ÐâQ¤R)Å!B!(ËU·®Ý(³QÉqS$IJ¼J)©R;'Ëôü0v]nÚ=Õ5($ ¥¤ s]^º;Ô° UU¨¤Ä®ÖÈIJ |
+Çb¼ (ãj_0̼Y3ð47³³ìr6Û{ï3µÚ¸úª@°ïHT:û^}fÌ{»Cö÷l³odÁÃ^ØcD!BÝ»J¦}ÊävËüÑP¶qìz.ýÞ{]Ë:Ûï\C1S¥¤H Ð$!¤Jä´åô²ó?.B-iú øÄ/ª8ÃË&¶%!6|ÂöY¹eS[ ç°Î8ûý,·×Õê +ÃßáAÅ4"LèÙ%óia¡ÂÎMÍ/ì1"B!îM |
+ âÆ?ËM!ÐB]BWiJJBD jÆ2B!î ÊT*%}Î9(VèlMáç*c9:äämM\v3zÍfó\fCåö-ú²ÛÌÖ ýBt¿µÄø¿ÍOÎgî¦;öB#B!Bè^Êl ,*%IRâUªä¾PrßEî*Ù5¹c]Þ÷õÜ»¦ @I$¡Tºü,¾4j bÈ&D*ðÐ}k¹¢*J)ôÓìt ¸×Üãk e_KÓ®&vÝmÍ3So¼4½ï÷>ý6]Þûä¦(%h¹ð>òE(v¦v«¥ ¼¿÷ß0ò_ù8¡*Ía]©í¥"Ás1Q"PÁèÝlxQçR,ú:"Ä P¬~Q·zn_ H,è;Mìï /üˬ}¿ SôÆú²fð«!À¬Ò¶TK¦âuæÍLÁ°c}þ0e°5d.WÄþì3FÛv¶tØÞ|é*Ü.«¥¦FÖOð bÀ®Ö_I¡3£Hõ~8<<Ì B©YË\èhxr¹þÔB!B·e¹¢êÚ?F; |
+ôp$¨ëÚçxããG^*°ÝöSdO6b¶Ý§+ªn]+wÇR¹b·uqnwR¹÷rî½| w¦w |
+bäthð(eÛÞ>r2¦ÛlbW2ÅÂæ^äBGà ÀãÎz8E¶¿kóþÞgÚ_>v|0äL¿52 O?clMgr%kØbÈ['} |
+;M&q!t<}i®?5B!ÐmJ¥RÂU~±£@~ê?6<Ï "^"RÀöSprÛ´ívJ´ÐýKÂ-,HØûÕ;=ßeÕ |
+³5½×2Q«Þ?Hnr¹Ð0Y@³!7 UÂðßÄìÆ×ì |
+ÕÓö£Rèä0!¢ |
+]%BÐw$S«gfíé»a êOþí0l1¥§FµÓ Ià pªÉ¡Ås³ |
+ ~%p/óú-öY,Éäÿgrx¦Ê©ÑT%À>y÷ B!*Rf¾ñóÙ?wÿ©ß¤aã±swWöÕÀzýÁN¾·¤Ñ°'½wÐ}xÈ¿47·4»¶u¯k9Üâ=Õ_Ë #/ٶٶröÔùso|¥}ªñ&_Ã;S¿lj}¥$Mð]¤¾ZJIÞ·dÉ65Ù¿v÷½7»N¯Í£ÿk JUlIR h |
+!B!tÛ |
+V5]l_SÉÄÇTè.âã²õ(o}ÓT«cq) H |
+z ½U¥\2·Lf·Â`ïó |ìN~ñÞeHí}.Ë¡Ä©RR$I hAIAR%@rú2BE(ó¦å^51|}Äð¬d !òßDìÞ¡ |
+^ÐRJÿÛ¹Ðý©xûE¶ÀgãN3·¥¿x2ÉܸGëBä«0L~1éoË4üUн ú,lÚªg@SÕBÍ?Ìe |
+OuÆóº¼Ê° |
+OG"GN©#)b|ÇçÕ½1>Ëú?²;7gjÓÎþXçúSC!B-lµsé®z |
+o¸¬)Y.ÐxT Æêìß´ûåêæßܯ{¤ö}7 EöÝ\òfÜtek¼x^z÷;·ï=Ø5¥¤IR.ý(ÚúoÚÈÄ bH@2&K>"tßR(7þYn |
+YîÐ%)t Öª¤!D$¢b$7/8§Ô&z¨dKxͱ1ï3ÿ{$|:HP§ÓØvk>ÈLÑí´È_?!I`ª9óoó¿ä)¼ýÊü¢æÜP(£Ûj^1oÑOÂ(5kØbbãßÁPvÖÓÒ¿F B7_«¡ñ"` K-úEì*e{~ ÷²ixñ%÷±ùû[³ |
+}âãß°Ø©_HÝk&ù¿ú]±¼Z8ÂBø«p^^õ¬É¤@©9ãv½p4\öpB!BwH69««á1°nÌ<Ç3¯Vh àâè(ùËL]â¹ôäîT¦å´Ö |
+T¹ÝËÌñ°¸½SÝWUõGGMªüÖ¹½CÃ/}ìå¸3½S ¤HP³\øVШ "q2È×G±Ú*F7Ý¿¤b¢ZíÈ<%×þ£G!BhQ0À |
+W3 (cZë><êÞ¬aãW]{\ÃãRº$oÞ§jð½kUS$ð£ëõèß} PõhMïß4©h R°æ G¶NI¡æ±ºß)Ó:66ìÛfï;ÿs£fÕxã md-ð¡LÔÂû&"UÚmM=§\[õâX¸½É§Ù&ºs¼_¡1ɸF-$@J>. $ É$& |