Subversion Repositories Applications.papyrus

Rev

Rev 1053 | Rev 1172 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4 jpm 1
<?php
2
 
3
//vim: set expandtab tabstop=4 shiftwidth=4:
4
// +------------------------------------------------------------------------------------------------------+
5
// | PHP version 4.1                                                                                      |
6
// +------------------------------------------------------------------------------------------------------+
7
// | Copyright (C) 2003 Tela Botanica (accueil@tela-botanica.org)                                         |
8
// +------------------------------------------------------------------------------------------------------+
9
// |                                                                                                      |
10
// | This library is free software; you can redistribute it and/or                                        |
11
// | modify it under the terms of the GNU Lesser General Public                                           |
12
// | License as published by the Free Software Foundation; either                                         |
13
// | version 2.1 of the License, or (at your option) any later version.                                   |
14
// |                                                                                                      |
15
// | This library is distributed in the hope that it will be useful,                                      |
16
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
17
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
18
// | Lesser General Public License for more details.                                                      |
19
// |                                                                                                      |
20
// | You should have received a copy of the GNU Lesser General Public                                     |
21
// | License along with this library; if not, write to the Free Software                                  |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
23
// |                                                                                                      |
24
// +------------------------------------------------------------------------------------------------------+
1057 jp_milcent 25
// CVS : $Id: pap_config_avancee.inc.php,v 1.27 2006-11-20 17:48:33 jp_milcent Exp $
4 jpm 26
/**
67 jpm 27
* Page de configuration avancée de Papyrus
4 jpm 28
*
67 jpm 29
* La page contient différents paramêtre permettant de configurer, le chronométrage, le débogage, les url...
4 jpm 30
*
31
*@package Papyrus
32
*@subpackage Configuration
33
//Auteur original :
285 jpm 34
*@author            Jean-Pascal MILCENT <jpm@tela-botanica.org>
4 jpm 35
//Autres auteurs :
36
*@author            Alexandre GRANIER <alex@tela-botanica.org>
285 jpm 37
*@author            Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
4 jpm 38
*@copyright         Tela-Botanica 2000-2004
1057 jp_milcent 39
*@version           $Revision: 1.27 $ $Date: 2006-11-20 17:48:33 $
4 jpm 40
// +------------------------------------------------------------------------------------------------------+
41
*/
42
 
43
// +------------------------------------------------------------------------------------------------------+
44
// |                                            ENTÊTE du PROGRAMME                                       |
45
// +------------------------------------------------------------------------------------------------------+
46
 
933 florian 47
//test au cas ou il s'agirai d'une nouvelle installation ou si le fichier de conf n'existe pas
48
if (file_exists('papyrus/configuration/pap_config.inc.php') ) {include_once 'papyrus/configuration/pap_config.inc.php';}
49
if (!defined("PAP_CHEMIN_RACINE")) define('PAP_CHEMIN_RACINE','');
77 jpm 50
// +------------------------------------------------------------------------------------------------------+
51
// Paramétrage du mode d'écriture des fichiers sur le serveur
85 jpm 52
/** Booléen permetant de savoir si on utilise ou pas le ftp. */
77 jpm 53
define('GEN_FTP_UTILISE', true) ;//ini_get('safe_mode')
4 jpm 54
 
55
// +------------------------------------------------------------------------------------------------------+
56
// |                                            CORPS du PROGRAMME                                        |
57
// +------------------------------------------------------------------------------------------------------+
58
 
59
// +------------------------------------------------------------------------------------------------------+
67 jpm 60
// Paramétrage de la version : NE PAS MODIFIER MANUELLEMENT!
85 jpm 61
/** Constante stockant la version de Papyrus.*/
977 ddelon 62
define('GEN_VERSION', '0.24');
67 jpm 63
 
64
// +------------------------------------------------------------------------------------------------------+
4 jpm 65
// Paramétrage du débogage.
754 ddelon 66
 
85 jpm 67
/** Constante stockant une valeur booléen permettant de savoir si on veut déboguer le code (true) ou pas (false).*/
767 ddelon 68
define('GEN_DEBOGAGE', true);// true ou false
85 jpm 69
/** Constante stockant une valeur correspondant au niveau d'erreur à employer pour le code PHP
70
* de Papyrus et de ses applications.*/
4 jpm 71
define('GEN_DEBOGAGE_NIVEAU', E_ALL);// Voir le manuel de PHP pour les différents niveaux disponibles.
85 jpm 72
/** Constante permettant de savoir si on veut afficher le contexte des variables d'une erreur
73
* pour le code PHP de Papyrus et de ses applications.*/
74
define('GEN_DEBOGAGE_CONTEXTE', false);// true or false
75
/** Constante permettant de savoir la langue pour le débogage du code PHP de Papyrus et de ses
76
* applications.*/
77
define('GEN_DEBOGAGE_I18N', 'fr');
4 jpm 78
 
79
// +------------------------------------------------------------------------------------------------------+
1053 jp_milcent 80
// Paramétrage de l'identification : Auth
81
$tps = time()+3600*24*30;
82
// Mettre 0 pour "déconnecter en fin de session" sinon utiliser la variable $tps
1057 jp_milcent 83
define('PAP_AUTH_SESSION_DUREE', (int)0);
1053 jp_milcent 84
 
85
// +------------------------------------------------------------------------------------------------------+
4 jpm 86
// Paramétrage du nom du champ servant à identifier un site dans l'url
85 jpm 87
/** Type du code d'un site passé dans l'url.*/
4 jpm 88
define('GEN_URL_ID_TYPE_SITE', 'int');// string ou int
85 jpm 89
/** Type du code d'un menu passé dans l'url.*/
4 jpm 90
define('GEN_URL_ID_TYPE_MENU', 'int');// string ou int
342 jpm 91
/** Type du code d'un site pour les urls raccourcies.*/
92
define('GEN_URL_RACCOURCI_ID_TYPE_SITE', 'string');// string ou int
93
/** Type du code d'un menu pour les urls raccourcies.*/
94
define('GEN_URL_RACCOURCI_ID_TYPE_MENU', 'string');// string ou int
4 jpm 95
 
96
// +------------------------------------------------------------------------------------------------------+
97
// Paramétrage des clés de l'url
38 jpm 98
// Redéfini le séparateur utilisé lorsque PHP génère des URLs pour séparer les arguments. (compatible XHTML strict)
99
ini_set('arg_separator.output', '&amp;');
85 jpm 100
/** Nom de la variable passée dans l'url et contenant l'identifiant d'un site.*/
4 jpm 101
define('GEN_URL_CLE_SITE', 'site');
85 jpm 102
/** Nom de la variable passée dans l'url et contenant l'identifiant d'un menu.*/
4 jpm 103
define('GEN_URL_CLE_MENU', 'menu');
85 jpm 104
/** Nom de la variable passée dans l'url et contenant l'identifiant d'une internationalisation.*/
4 jpm 105
define('GEN_URL_CLE_I18N', 'langue');
85 jpm 106
/** Nom de la variable passée dans l'url et contenant une date.*/
4 jpm 107
define('GEN_URL_CLE_DATE', 'date');
85 jpm 108
/** Nom de la variable passée dans l'url et contenant un format.*/
4 jpm 109
define('GEN_URL_CLE_FORMAT', 'format');
110
 
111
// +------------------------------------------------------------------------------------------------------+
112
// Paramétrage des langues
85 jpm 113
/** Identifiant de l'I18N par défaut de Papyrus. */
4 jpm 114
define('GEN_I18N_ID_DEFAUT', 'fr');
115
 
116
// +------------------------------------------------------------------------------------------------------+
77 jpm 117
// Noms des sites
85 jpm 118
/** Nom du site par défaut d'administration de Papyrus.*/
77 jpm 119
define('GEN_SITE_DEFAUT', 'admin');
4 jpm 120
 
121
// +------------------------------------------------------------------------------------------------------+
1037 jp_milcent 122
// Paramétrage réecriture d'URL et erreur HTTP
1029 jp_milcent 123
/** Mot signalant une réecriture d'url présent à la base de l'url. */
124
define('PAP_URL_REECRITURE_MENU', 'page');
125
/** Mot signalant une réecriture d'url présent à la base de l'url. */
126
define('PAP_URL_REECRITURE_SITE', 'site');
127
/** Caractère séparant les informations constituant le permalien Papyrus. */
128
// Si vous utilisez "/", vous devrez indiquer le chemin depuis la racine pour les chemins présent dans les squelettes.
129
// Exemple : "/sites/commun..." et non "sites/commun..."
130
define('PAP_URL_REECRITURE_SEP', ':');
1037 jp_milcent 131
/** Chemin et nom du fichier affichant une erreur HTTP.*/
132
define('PAP_FICHIER_ERREUR_HTTP', PAP_CHEMIN_RACINE.'sites/commun/%s/http_erreurs/erreur%s.php');
1041 jp_milcent 133
/** URL absolue du fichier affichant une erreur HTTP.*/
134
define('PAP_URL_ERREUR_HTTP', '/sites/commun/%s/http_erreurs/erreur%s.php?url=%s');
1029 jp_milcent 135
 
136
// +------------------------------------------------------------------------------------------------------+
85 jpm 137
/** Séparateur dans les chemins d'accès aux fichiers.*/
77 jpm 138
define('GEN_SEP', '/');
85 jpm 139
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des api.*/
832 florian 140
define('GEN_CHEMIN_API', PAP_CHEMIN_RACINE.'api'.GEN_SEP);
324 jpm 141
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des api.*/
142
define('PAP_CHEMIN_API_PEAR', GEN_CHEMIN_API.'pear'.GEN_SEP);
85 jpm 143
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant le reste de l'application Papyrus.*/
90 jpm 144
define('GEN_CHEMIN_PAP', 'papyrus'.GEN_SEP);
145
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applications clientes.*/
146
define('GEN_CHEMIN_CLIENT', 'client'.GEN_SEP);
147
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des sites.*/
148
define('GEN_CHEMIN_SITES', 'sites'.GEN_SEP);
85 jpm 149
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers de configuration de Papyrus.*/
77 jpm 150
define('GEN_CHEMIN_CONFIG', GEN_CHEMIN_PAP.'configuration'.GEN_SEP);
85 jpm 151
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers sql d'installation de Papyrus.*/
77 jpm 152
define('GEN_CHEMIN_INSTAL', GEN_CHEMIN_PAP.'installation'.GEN_SEP);
85 jpm 153
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applications internes à Papyrus.*/
77 jpm 154
define('GEN_CHEMIN_APPLICATION', GEN_CHEMIN_PAP.'applications'.GEN_SEP);
85 jpm 155
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les applettes.*/
77 jpm 156
define('GEN_CHEMIN_APPLETTE', GEN_CHEMIN_PAP.'applettes'.GEN_SEP);
85 jpm 157
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant la bibliothèque de codes de Papyrus.*/
77 jpm 158
define('GEN_CHEMIN_BIBLIO', GEN_CHEMIN_PAP.'bibliotheque'.GEN_SEP.'fonctions'.GEN_SEP);
329 jpm 159
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant la bibliothèque de codes de Papyrus.*/
160
define('GEN_CHEMIN_BIBLIO_CLASSE', GEN_CHEMIN_PAP.'bibliotheque'.GEN_SEP.'classes'.GEN_SEP);
85 jpm 161
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les traductions de Papyrus.*/
162
define('GEN_CHEMIN_LANGUE', GEN_CHEMIN_PAP.'langues'.GEN_SEP);
163
/** Chemin vers le dossier Commun des sites.*/
77 jpm 164
define('GEN_CHEMIN_COMMUN', GEN_CHEMIN_SITES.'commun'.GEN_SEP);
85 jpm 165
/** Chemin vers le dossier contenant des fichiers temporaires.*/
4 jpm 166
define('GEN_CHEMIN_TMP', 'tmp');
167
 
168
// +------------------------------------------------------------------------------------------------------+
169
// Nom des dossiers d'un site présent dans le dossier de langue.
85 jpm 170
/** Nom du dossier contenant les squelettes d'un site donné.*/
4 jpm 171
define('GEN_DOSSIER_SQUELETTE', 'squelettes');
85 jpm 172
/** Nom du dossier contenant les feuilles de styles d'un site donné.*/
4 jpm 173
define('GEN_DOSSIER_STYLE', 'styles');
85 jpm 174
/** Nom du dossier contenant les scripts côté client d'un site donné.*/
4 jpm 175
define('GEN_DOSSIER_SCRIPT', 'scripts');
85 jpm 176
/** Nom du dossier contenant les images d'un site donné.*/
4 jpm 177
define('GEN_DOSSIER_IMAGE', 'images');
85 jpm 178
/** Nom du dossier contenant les documents d'un site donné.*/
4 jpm 179
define('GEN_DOSSIER_DOC', 'documents');
85 jpm 180
/** Nom du dossier contenant des dossiers et fichiers communs à plusieurs langues.*/
4 jpm 181
define('GEN_DOSSIER_GENERIQUE', 'generique');
182
 
77 jpm 183
// +------------------------------------------------------------------------------------------------------+
184
// Nom des fichiers par défaut d'un site présent dans le dossier de langue.
90 jpm 185
/** Nom du fichier de configuration principal de Papyrus.*/
186
define('GEN_FICHIER_CONFIG', 'pap_config.inc.php');
85 jpm 187
/** Nom du fichier squelette par défaut d'un site donné.*/
77 jpm 188
define('GEN_FICHIER_SQUELETTE', 'defaut.html');
85 jpm 189
/** Nom du fichier de styles par défaut d'un site donné.*/
77 jpm 190
define('GEN_FICHIER_STYLE', 'defaut.css');
754 ddelon 191
/** Chemin relatif par rapport au fichier papyrus.php vers le dossier contenant les fichiers des wikini*/
192
define('GEN_CHEMIN_WIKINI', 'wikini'.GEN_SEP);
77 jpm 193
 
754 ddelon 194
 
85 jpm 195
// +------------------------------------------------------------------------------------------------------+
196
// Nom des styles de Papyrus.
197
/** Style erreur.*/
198
define('GEN_CSS_ERREUR', 'pap_erreur');
352 jpm 199
// +------------------------------------------------------------------------------------------------------+
200
//Gestion des actions Papyrus
85 jpm 201
 
352 jpm 202
/** Les sites correspodant aux liens interwiki. */
203
$GLOBALS['_PAPYRUS_']['interwiki_sites'] = array(
204
    'Papyrus'       => 'http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['PHP_SELF'].'?menu=%s',
205
    'Weflore'       => 'http://wiki.tela-botanica.org/eflore/wakka.php?wiki=%s',
206
    'Wikipedia'     => 'http://fr.wikipedia.org/wiki/%s',
207
    'Wikipedia_fr'  => 'http://fr.wikipedia.org/wiki/%s'
208
);
85 jpm 209
 
352 jpm 210
/** Les sites correspodant à l'action inclure. */
211
$GLOBALS['_PAPYRUS_']['inclure_sites'] = array(
212
    'Papyrus' => array('preg' => '/<!-- start contenu -->(.*)<!-- end contenu -->/Umsi', 'url' => 'http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['PHP_SELF'].'?menu=%s'),
213
    'Wikipedia' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://fr.wikipedia.org/wiki/%s'),
214
    'Wikipedia_fr' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://fr.wikipedia.org/wiki/%s'),
215
    'Wikipedia_en' => array('preg' => '/<!-- start content -->(.*)<!-- end content -->/Umsi', 'url' => 'http://en.wikipedia.org/wiki/%s'),
216
    'Wikini_eFlore' => array('preg' => '/<div class="page">(.*)<\/div>.*<div class="commentsheader">/Umsi', 'url' => 'http://wiki.tela-botanica.org/eflore/wakka.php?wiki=%s'),
217
    'Wikini_isff' => array('preg' => '/<div class="page">(.*)<\/div>.*<div class="commentsheader">/Umsi', 'url' => 'http://wiki.tela-botanica.org/isff/wakka.php?wiki=%s')
218
);
4 jpm 219
/* +--Fin du code ---------------------------------------------------------------------------------------+
220
* $Log: not supported by cvs2svn $
1057 jp_milcent 221
* Revision 1.26  2006/11/20 17:29:04  jp_milcent
222
* Ajout d'une constante permettant de gérer la durée des session de Papyrus.
223
*
1053 jp_milcent 224
* Revision 1.25  2006/10/26 16:29:52  jp_milcent
225
* Correction erreur redirection en boucle.
226
*
1041 jp_milcent 227
* Revision 1.24  2006/10/18 10:18:04  jp_milcent
228
* Gestion des erreurs HTTP par Papyrus.
229
*
1037 jp_milcent 230
* Revision 1.23  2006/10/11 18:04:11  jp_milcent
231
* Gestion avancée de la réecriture d'URL.
232
*
1029 jp_milcent 233
* Revision 1.22  2006/10/05 13:17:47  ddelon
234
* Changement Version Papyrus : 0.21 --> 0.24
235
*
977 ddelon 236
* Revision 1.21  2006/09/13 12:31:18  florian
237
* ménage: fichier de config Papyrus, fichiers temporaires
238
*
933 florian 239
* Revision 1.20  2006/04/28 12:41:49  florian
240
* corrections erreurs chemin
241
*
832 florian 242
* Revision 1.19  2006/03/13 21:00:20  ddelon
243
* Suppression messages d'erreur multilinguisme
244
*
767 ddelon 245
* Revision 1.18  2006/03/02 10:49:49  ddelon
246
* Fusion branche multilinguisme dans branche principale
247
*
754 ddelon 248
* Revision 1.17.2.1  2005/12/01 23:31:57  ddelon
249
* Merge Head vers multilinguisme
443 ddelon 250
*
352 jpm 251
* Revision 1.14  2005/04/18 16:40:39  jpm
252
* Ajout de constantes pour contrôler les permaliens.
253
*
329 jpm 254
* Revision 1.12  2005/04/06 13:22:58  jpm
255
* Ajout du chemin vers l'API PEAR présente dans le dossier api.
256
*
324 jpm 257
* Revision 1.11  2005/02/28 11:12:24  jpm
258
* Modification des auteurs.
259
*
285 jpm 260
* Revision 1.10  2005/02/17 17:56:33  jpm
261
* Changement de version de 0.2 à 0.21.
262
*
263 jpm 263
* Revision 1.9  2004/10/25 16:26:19  jpm
264
* Changement de la valeur de la variable GEN_VERSION.
265
*
107 jpm 266
* Revision 1.8  2004/10/22 17:22:41  jpm
267
* Modification du au changement de place de l'inclusion de ce fichier dans Papyrus.
268
*
90 jpm 269
* Revision 1.7  2004/10/21 18:16:18  jpm
270
* Ajout de contantes pour le débogage et corrections de commentaires.
271
*
85 jpm 272
* Revision 1.6  2004/10/19 16:00:23  jpm
273
* Extraction de constante pour ajout dans le fichier de conf géré par l'installateur de Papyrus.
274
* Ajout de nouvelles constantes.
275
*
67 jpm 276
* Revision 1.4  2004/10/14 16:37:04  jpm
277
* Correction.
278
*
63 jpm 279
* Revision 1.3  2004/09/13 17:09:25  jpm
280
* Redéfini le séparateur utilisé lorsque PHP génère des URLs pour séparer les arguments. (compatible XHTML strict)
281
*
38 jpm 282
* Revision 1.2  2004/06/16 15:06:45  jpm
283
* Ajout de constantes de chemin.
284
*
9 jpm 285
* Revision 1.1  2004/06/15 15:19:56  jpm
286
* Changement de nom et d'arborescence de Genesia en Papyrus.
287
*
4 jpm 288
* Revision 1.10  2004/05/06 11:14:56  jpm
289
* Ajout de nouvelles constantes.
290
*
291
* Revision 1.8  2004/04/01 11:26:27  jpm
292
* Ajout et modification de commentaires pour PhpDocumentor.
293
*
294
* Revision 1.7  2004/03/31 16:55:44  jpm
295
* Ajout de constant gérant l'url.
296
*
297
* Revision 1.6  2004/03/27 11:09:21  jpm
298
* Transformation de variable en constante.
299
*
300
* Revision 1.5  2004/03/22 10:58:59  jpm
301
* Ajout de commentaires.
302
*
303
* Revision 1.4  2003/12/16 16:57:59  alex
304
* mise à jour pour compatibilité avec genesia
305
*
306
* Revision 1.3  2003/12/05 14:35:41  alex
307
* en cours
308
*
309
* Revision 1.2  2003/11/24 15:19:52  jpm
310
* Mise en conformité avec la convention de codage.
311
*
312
* +--Fin du code ----------------------------------------------------------------------------------------+
313
*/
314
?>