Subversion Repositories Applications.papyrus

Rev

Rev 184 | Rev 252 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 184 Rev 213
1
<?php
1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */ 
3
// +------------------------------------------------------------------------------------------------------+
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
10
// | License as published by the Free Software Foundation; either                                         |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | Lesser General Public License for more details.                                                      |
16
// | Lesser General Public License for more details.                                                      |
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | License along with this library; if not, write to the Free Software                                  |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: pap_rendu.inc.php,v 1.8 2004-11-26 19:02:07 jpm Exp $
22
// CVS : $Id: pap_rendu.inc.php,v 1.9 2004-12-06 19:39:40 jpm Exp $
23
/**
23
/**
24
* Rendu : programme traitant l'url demandée et retournant la page compressé au navigateur.
24
* Rendu : programme traitant l'url demandée et retournant la page compressé au navigateur.
25
*
25
*
26
* Ce programme contient la partie collectant les informations sur la page demandée par le navigateur client.
26
* Ce programme contient la partie collectant les informations sur la page demandée par le navigateur client.
27
* Elle vérifie que la page ne soit pas déjà présente en cache et la renvoie si elle est disponible.
27
* Elle vérifie que la page ne soit pas déjà présente en cache et la renvoie si elle est disponible.
28
* Elle recherche ensuite l'application liée à la page demandée. Elle exécute cette application et récupère le
28
* Elle recherche ensuite l'application liée à la page demandée. Elle exécute cette application et récupère le
29
* contenu XHTML à afficher, le stocke en cache, le compresse et le renvoi au navigateur client.
29
* contenu XHTML à afficher, le stocke en cache, le compresse et le renvoi au navigateur client.
30
*
30
*
31
*@package Papyrus
31
*@package Papyrus
32
//Auteur original :
32
//Auteur original :
33
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
33
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
34
//Autres auteurs :
34
//Autres auteurs :
35
*@author        Alexandre GRANIER <alexadandre@tela-botanica.org>
35
*@author        Alexandre GRANIER <alexadandre@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
37
*@copyright     Tela-Botanica 2000-2004
37
*@copyright     Tela-Botanica 2000-2004
38
*@version       $Revision: 1.8 $ $Date: 2004-11-26 19:02:07 $
38
*@version       $Revision: 1.9 $ $Date: 2004-12-06 19:39:40 $
39
// +------------------------------------------------------------------------------------------------------+
39
// +------------------------------------------------------------------------------------------------------+
40
*/
40
*/
41
 
41
 
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
43
// |                                            ENTÊTE du PROGRAMME                                       |
43
// |                                            ENTÊTE du PROGRAMME                                       |
44
// +------------------------------------------------------------------------------------------------------+
44
// +------------------------------------------------------------------------------------------------------+
45
 
45
 
46
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de meta informations pour une page donnée.*/
46
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de meta informations pour une page donnée.*/
47
include_once GEN_CHEMIN_BIBLIO.'pap_meta.fonct.php';
47
include_once GEN_CHEMIN_BIBLIO.'pap_meta.fonct.php';
48
 
48
 
49
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de styles pour une page donnée.*/
49
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de styles pour une page donnée.*/
50
include_once GEN_CHEMIN_BIBLIO.'pap_style.fonct.php';
50
include_once GEN_CHEMIN_BIBLIO.'pap_style.fonct.php';
51
 
51
 
52
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de scripts pour une page donnée.*/
52
/** <BR> Inclusion de la bibliothèque de fonctions servant à l'insertion de scripts pour une page donnée.*/
53
include_once GEN_CHEMIN_BIBLIO.'pap_script.fonct.php';
53
include_once GEN_CHEMIN_BIBLIO.'pap_script.fonct.php';
54
 
54
 
55
// +------------------------------------------------------------------------------------------------------+
55
// +------------------------------------------------------------------------------------------------------+
56
// |                                            CORPS du PROGRAMME                                        |
56
// |                                            CORPS du PROGRAMME                                        |
57
// +------------------------------------------------------------------------------------------------------+
57
// +------------------------------------------------------------------------------------------------------+
58
 
58
 
59
// +------------------------------------------------------------------------------------------------------+
59
// +------------------------------------------------------------------------------------------------------+
60
// Recherche du squelette de la page demandée.
60
// Recherche du squelette de la page demandée.
61
 
61
 
62
// Ouverture du squelette
62
// Ouverture du squelette
63
if (empty($_GEN_commun['info_menu']->gm_fichier_squelette)) {
63
if (empty($_GEN_commun['info_menu']->gm_fichier_squelette)) {
64
    if (isset($_GEN_commun['traduction_info_site'])) {
64
    if (isset($_GEN_commun['traduction_info_site'])) {
65
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['traduction_info_site']->gs_fichier_squelette;
65
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['traduction_info_site']->gs_fichier_squelette;
66
    } else {
66
    } else {
67
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['info_site']->gs_fichier_squelette;
67
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['info_site']->gs_fichier_squelette;
68
    }
68
    }
69
} else {
69
} else {
70
    if (isset($_GEN_commun['traduction_info_menu'])) {
70
    if (isset($_GEN_commun['traduction_info_menu'])) {
71
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['traduction_info_menu']->gs_fichier_squelette;
71
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['traduction_info_menu']->gs_fichier_squelette;
72
    } else {
72
    } else {
73
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['info_menu']->gm_fichier_squelette;
73
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $_GEN_commun['info_menu']->gm_fichier_squelette;
74
    }
74
    }
75
}
75
}
76
// Si l'information concernant le chemin est réellement un chemin
76
// Si l'information concernant le chemin est réellement un chemin
77
if (! file_exists($GLOBALS['_PAPYRUS_']['general']['chemin_squelette'])) {
77
if (! file_exists($GLOBALS['_PAPYRUS_']['general']['chemin_squelette'])) {
78
    //Si ce n'est qu'un nom de fichier squelette
78
    //Si ce n'est qu'un nom de fichier squelette
79
    $GLOBALS['_PAPYRUS_']['general']['chemin_test'] =  GEN_CHEMIN_SITES.
79
    $GLOBALS['_PAPYRUS_']['general']['chemin_test'] =  GEN_CHEMIN_SITES.
80
                    $_GEN_commun['info_site']->gs_code_alpha.'/'.
80
                    $_GEN_commun['info_site']->gs_code_alpha.'/'.
81
                    $_GEN_commun['i18n'].'/'.GEN_DOSSIER_SQUELETTE.'/'.$GLOBALS['_PAPYRUS_']['general']['chemin_squelette'];
81
                    $_GEN_commun['i18n'].'/'.GEN_DOSSIER_SQUELETTE.'/'.$GLOBALS['_PAPYRUS_']['general']['chemin_squelette'];
82
    if (! file_exists($GLOBALS['_PAPYRUS_']['general']['chemin_test'])) {
82
    if (! file_exists($GLOBALS['_PAPYRUS_']['general']['chemin_test'])) {
83
        die('ERREUR Papyrus : Impossible de trouver de fichier de squelette. <br />'.
83
        die('ERREUR Papyrus : Impossible de trouver de fichier de squelette. <br />'.
84
            'Chemin fichier squelette : '.$GLOBALS['_PAPYRUS_']['general']['chemin_squelette'].' <br />'.
84
            'Chemin fichier squelette : '.$GLOBALS['_PAPYRUS_']['general']['chemin_squelette'].' <br />'.
85
            'Ligne n° : '. __LINE__ .'<br />'.
85
            'Ligne n° : '. __LINE__ .'<br />'.
86
            'Fichier : '. __FILE__ );
86
            'Fichier : '. __FILE__ );
87
    } else {
87
    } else {
88
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $GLOBALS['_PAPYRUS_']['general']['chemin_test'];
88
        $GLOBALS['_PAPYRUS_']['general']['chemin_squelette'] = $GLOBALS['_PAPYRUS_']['general']['chemin_test'];
89
    }
89
    }
90
}
90
}
91
 
91
 
92
// +------------------------------------------------------------------------------------------------------+
92
// +------------------------------------------------------------------------------------------------------+
93
// Récupération du contenu du fichier de squelette de la page demandée.
93
// Récupération du contenu du fichier de squelette de la page demandée.
94
/*
94
/*
95
// Lecture du fichier de squelette XHTML en PHP 4.1.2
95
// Lecture du fichier de squelette XHTML en PHP 4.1.2
96
$tab_fichier_squelette = file($chemin_squelette);
96
$tab_fichier_squelette = file($chemin_squelette);
97
$contenu_squelette = '';
97
$contenu_squelette = '';
98
for ($i = 0; $i < count($tab_fichier_squelette); $i++) {
98
for ($i = 0; $i < count($tab_fichier_squelette); $i++) {
99
    $contenu_squelette .= $tab_fichier_squelette[$i];
99
    $contenu_squelette .= $tab_fichier_squelette[$i];
100
}
100
}
101
*/
101
*/
102
// Lecture du fichier de squelette XHTML en PHP 4.3
102
// Lecture du fichier de squelette XHTML en PHP 4.3
103
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = file_get_contents($GLOBALS['_PAPYRUS_']['general']['chemin_squelette']);
103
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = file_get_contents($GLOBALS['_PAPYRUS_']['general']['chemin_squelette']);
104
 
104
 
105
 
105
 
106
// +------------------------------------------------------------------------------------------------------+
106
// +------------------------------------------------------------------------------------------------------+
107
// Recherche des informations pour la complétion de l'entête du squelette de la page demandée.
107
// Recherche des informations pour la complétion de l'entête du squelette de la page demandée.
108
 
108
 
109
// Construction du titre.
109
// Construction du titre.
110
if (! empty($_GEN_commun['info_menu']->gm_titre)) {
110
if (! empty($_GEN_commun['info_menu']->gm_titre)) {
111
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_titre);
111
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_titre);
112
} else if (! empty($_GEN_commun['info_menu']->gm_titre_alternatif)) {
112
} else if (! empty($_GEN_commun['info_menu']->gm_titre_alternatif)) {
113
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_titre_alternatif);
113
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_titre_alternatif);
114
} else {
114
} else {
115
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_nom);
115
    $GLOBALS['_PAPYRUS_']['page']['titre'] = htmlentities($_GEN_commun['info_menu']->gm_nom);
116
}
116
}
117
$GLOBALS['_PAPYRUS_']['rendu']['TITRE_PAGE'] = $GLOBALS['_PAPYRUS_']['page']['titre'];
117
$GLOBALS['_PAPYRUS_']['rendu']['TITRE_PAGE'] = $GLOBALS['_PAPYRUS_']['page']['titre'];
118
 
118
 
119
// Construction des infos sur le site
119
// Construction des infos sur le site
120
$GLOBALS['_PAPYRUS_']['page']['nom_site'] = htmlentities($_GEN_commun['info_site']->gs_nom);
120
$GLOBALS['_PAPYRUS_']['page']['nom_site'] = htmlentities($_GEN_commun['info_site']->gs_nom);
121
$GLOBALS['_PAPYRUS_']['rendu']['SITE_NOM'] = $GLOBALS['_PAPYRUS_']['page']['nom_site'];
121
$GLOBALS['_PAPYRUS_']['rendu']['SITE_NOM'] = $GLOBALS['_PAPYRUS_']['page']['nom_site'];
122
$GLOBALS['_PAPYRUS_']['page']['langue_site'] = htmlentities($_GEN_commun['i18n']);
122
$GLOBALS['_PAPYRUS_']['page']['langue_site'] = htmlentities($_GEN_commun['i18n']);
123
$GLOBALS['_PAPYRUS_']['rendu']['SITE_LANGUE'] = $GLOBALS['_PAPYRUS_']['page']['langue_site'];
123
$GLOBALS['_PAPYRUS_']['rendu']['SITE_LANGUE'] = $GLOBALS['_PAPYRUS_']['page']['langue_site'];
124
$GLOBALS['_PAPYRUS_']['page']['code_alpha_site'] = htmlentities($_GEN_commun['info_site']->gs_code_alpha);
124
$GLOBALS['_PAPYRUS_']['page']['code_alpha_site'] = htmlentities($_GEN_commun['info_site']->gs_code_alpha);
125
$GLOBALS['_PAPYRUS_']['rendu']['SITE_CODE_ALPHA'] = $GLOBALS['_PAPYRUS_']['page']['code_alpha_site'];
125
$GLOBALS['_PAPYRUS_']['rendu']['SITE_CODE_ALPHA'] = $GLOBALS['_PAPYRUS_']['page']['code_alpha_site'];
126
 
126
 
127
// Construction des Meta "http-equiv".
127
// Construction des Meta "http-equiv".
128
$_GEN_commun['meta_http_equiv'] = array();
128
$_GEN_commun['meta_http_equiv'] = array();
129
$GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres'] = htmlentities($_GEN_commun['info_i18n']->gi_jeu_de_caracteres);
129
$GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres'] = htmlentities($_GEN_commun['info_i18n']->gi_jeu_de_caracteres);
130
$GLOBALS['_PAPYRUS_']['rendu']['SITE_JEU_DE_CARACTERES'] = $GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres'];
130
$GLOBALS['_PAPYRUS_']['rendu']['SITE_JEU_DE_CARACTERES'] = $GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres'];
131
$GLOBALS['_PAPYRUS_']['page']['langue'] = htmlentities($_GEN_commun['info_i18n_langue']->gil_id_langue);
131
$GLOBALS['_PAPYRUS_']['page']['langue'] = htmlentities($_GEN_commun['info_i18n_langue']->gil_id_langue);
132
$GLOBALS['_PAPYRUS_']['rendu']['SITE_LANGUE'] = $GLOBALS['_PAPYRUS_']['page']['langue'];
132
$GLOBALS['_PAPYRUS_']['rendu']['SITE_LANGUE'] = $GLOBALS['_PAPYRUS_']['page']['langue'];
133
GEN_stockerMetaHttpEquiv('Content-Type', 'text/html; charset='.$GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres']);
133
GEN_stockerMetaHttpEquiv('Content-Type', 'text/html; charset='.$GLOBALS['_PAPYRUS_']['page']['jeu_de_caracteres']);
134
GEN_stockerMetaHttpEquiv('Content-style-type', 'text/css');
134
GEN_stockerMetaHttpEquiv('Content-style-type', 'text/css');
135
GEN_stockerMetaHttpEquiv('Content-script-type', 'text/javascript');
135
GEN_stockerMetaHttpEquiv('Content-script-type', 'text/javascript');
136
GEN_stockerMetaHttpEquiv('Content-language', $GLOBALS['_PAPYRUS_']['page']['langue']);
136
GEN_stockerMetaHttpEquiv('Content-language', $GLOBALS['_PAPYRUS_']['page']['langue']);
137
 
137
 
138
// Construction des Meta "name".
138
// Construction des Meta "name".
139
$_GEN_commun['meta_name'] = array();
139
$_GEN_commun['meta_name'] = array();
140
$GLOBALS['_PAPYRUS_']['page']['robot'] = htmlentities($_GEN_commun['info_menu']->gm_robot);
140
$GLOBALS['_PAPYRUS_']['page']['robot'] = htmlentities($_GEN_commun['info_menu']->gm_robot);
141
$GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_menu']->gm_auteur);
141
$GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_menu']->gm_auteur);
142
if (empty($pap_auteur)) {
142
if (empty($pap_auteur)) {
143
    $GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_site']->gs_auteur);
143
    $GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_site']->gs_auteur);
144
}
144
}
145
$GLOBALS['_PAPYRUS_']['page']['mots_cles'] = htmlentities($_GEN_commun['info_menu']->gm_mots_cles);
145
$GLOBALS['_PAPYRUS_']['page']['mots_cles'] = htmlentities($_GEN_commun['info_menu']->gm_mots_cles);
146
if (empty($GLOBALS['_PAPYRUS_']['page']['mots_cles'])) {
146
if (empty($GLOBALS['_PAPYRUS_']['page']['mots_cles'])) {
147
    $GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_site']->gs_mots_cles);
147
    $GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_site']->gs_mots_cles);
148
}
148
}
149
$GLOBALS['_PAPYRUS_']['page']['description_libre'] = htmlentities($_GEN_commun['info_menu']->gm_description_libre);
149
$GLOBALS['_PAPYRUS_']['page']['description_libre'] = htmlentities($_GEN_commun['info_menu']->gm_description_libre);
150
if (empty($pap_description_libre)) {
150
if (empty($pap_description_libre)) {
151
    $GLOBALS['_PAPYRUS_']['page']['description_libre'] = htmlentities($_GEN_commun['info_site']->gs_description);
151
    $GLOBALS['_PAPYRUS_']['page']['description_libre'] = htmlentities($_GEN_commun['info_site']->gs_description);
152
}
152
}
153
GEN_stockerMetaName('revisit-after', '15 days');
153
GEN_stockerMetaName('revisit-after', '15 days');
154
GEN_stockerMetaName('robots', $GLOBALS['_PAPYRUS_']['page']['robot']);
154
GEN_stockerMetaName('robots', $GLOBALS['_PAPYRUS_']['page']['robot']);
155
GEN_stockerMetaName('author', $GLOBALS['_PAPYRUS_']['page']['auteur']);
155
GEN_stockerMetaName('author', $GLOBALS['_PAPYRUS_']['page']['auteur']);
156
GEN_stockerMetaName('keywords', $GLOBALS['_PAPYRUS_']['page']['mots_cles']);
156
GEN_stockerMetaName('keywords', $GLOBALS['_PAPYRUS_']['page']['mots_cles']);
157
GEN_stockerMetaName('description', $GLOBALS['_PAPYRUS_']['page']['description_libre']);
157
GEN_stockerMetaName('description', $GLOBALS['_PAPYRUS_']['page']['description_libre']);
158
 
158
 
159
// Construction des Meta Meta "name" du Dublin Core.
159
// Construction des Meta Meta "name" du Dublin Core.
160
$GLOBALS['_PAPYRUS_']['page']['titre_alternatif'] = htmlentities($_GEN_commun['info_menu']->gm_titre_alternatif);
160
$GLOBALS['_PAPYRUS_']['page']['titre_alternatif'] = htmlentities($_GEN_commun['info_menu']->gm_titre_alternatif);
161
$GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_menu']->gm_auteur);
161
$GLOBALS['_PAPYRUS_']['page']['auteur'] = htmlentities($_GEN_commun['info_menu']->gm_auteur);
162
$GLOBALS['_PAPYRUS_']['page']['description_resume'] = htmlentities($_GEN_commun['info_menu']->gm_description_resume);
162
$GLOBALS['_PAPYRUS_']['page']['description_resume'] = htmlentities($_GEN_commun['info_menu']->gm_description_resume);
163
$GLOBALS['_PAPYRUS_']['page']['description_table_matieres'] = htmlentities($_GEN_commun['info_menu']->gm_description_table_matieres);
163
$GLOBALS['_PAPYRUS_']['page']['description_table_matieres'] = htmlentities($_GEN_commun['info_menu']->gm_description_table_matieres);
164
$GLOBALS['_PAPYRUS_']['page']['publieur'] = htmlentities($_GEN_commun['info_menu']->gm_editeur);
164
$GLOBALS['_PAPYRUS_']['page']['publieur'] = htmlentities($_GEN_commun['info_menu']->gm_editeur);
165
$GLOBALS['_PAPYRUS_']['page']['contributeur'] = htmlentities($_GEN_commun['info_menu']->gm_contributeur);
165
$GLOBALS['_PAPYRUS_']['page']['contributeur'] = htmlentities($_GEN_commun['info_menu']->gm_contributeur);
166
$GLOBALS['_PAPYRUS_']['page']['date_creation'] = htmlentities($_GEN_commun['info_menu']->gm_date_creation);
166
$GLOBALS['_PAPYRUS_']['page']['date_creation'] = htmlentities($_GEN_commun['info_menu']->gm_date_creation);
167
$GLOBALS['_PAPYRUS_']['page']['date_soumission'] = htmlentities($_GEN_commun['info_menu']->gm_date_soumission);
167
$GLOBALS['_PAPYRUS_']['page']['date_soumission'] = htmlentities($_GEN_commun['info_menu']->gm_date_soumission);
168
$GLOBALS['_PAPYRUS_']['page']['date_acceptation'] = htmlentities($_GEN_commun['info_menu']->gm_date_acceptation);
168
$GLOBALS['_PAPYRUS_']['page']['date_acceptation'] = htmlentities($_GEN_commun['info_menu']->gm_date_acceptation);
169
$GLOBALS['_PAPYRUS_']['page']['periode_validite'] = htmlentities($_GEN_commun['info_menu']->gm_date_debut_validite);
169
$GLOBALS['_PAPYRUS_']['page']['periode_validite'] = htmlentities($_GEN_commun['info_menu']->gm_date_debut_validite);
170
$GLOBALS['_PAPYRUS_']['page']['date_copyright'] = htmlentities($_GEN_commun['info_menu']->gm_date_copyright);
170
$GLOBALS['_PAPYRUS_']['page']['date_copyright'] = htmlentities($_GEN_commun['info_menu']->gm_date_copyright);
171
$GLOBALS['_PAPYRUS_']['page']['source'] = htmlentities($_GEN_commun['info_menu']->gm_source);
171
$GLOBALS['_PAPYRUS_']['page']['source'] = htmlentities($_GEN_commun['info_menu']->gm_source);
-
 
172
if ($_GEN_commun['info_i18n_pays']->gip_id_pays != '') {
172
$GLOBALS['_PAPYRUS_']['page']['langue_rfc_3066'] = $GLOBALS['_PAPYRUS_']['page']['langue'].'-'.htmlentities($_GEN_commun['info_i18n_pays']->gip_id_pays);
173
    $GLOBALS['_PAPYRUS_']['page']['langue_rfc_3066'] = $GLOBALS['_PAPYRUS_']['page']['langue'].'-'.htmlentities($_GEN_commun['info_i18n_pays']->gip_id_pays);
-
 
174
} else {
-
 
175
    $GLOBALS['_PAPYRUS_']['page']['langue_rfc_3066'] = $GLOBALS['_PAPYRUS_']['page']['langue'];
-
 
176
}
173
$GLOBALS['_PAPYRUS_']['page']['type_portee_spatiale'] = htmlentities($_GEN_commun['info_menu']->gm_ce_type_portee_spatiale);
177
$GLOBALS['_PAPYRUS_']['page']['type_portee_spatiale'] = htmlentities($_GEN_commun['info_menu']->gm_ce_type_portee_spatiale);
174
$GLOBALS['_PAPYRUS_']['page']['portee_spatiale'] = htmlentities($_GEN_commun['info_menu']->gm_portee_spatiale);
178
$GLOBALS['_PAPYRUS_']['page']['portee_spatiale'] = htmlentities($_GEN_commun['info_menu']->gm_portee_spatiale);
175
$GLOBALS['_PAPYRUS_']['page']['type_portee_temporelle'] = htmlentities($_GEN_commun['info_menu']->gm_ce_type_portee_temporelle);
179
$GLOBALS['_PAPYRUS_']['page']['type_portee_temporelle'] = htmlentities($_GEN_commun['info_menu']->gm_ce_type_portee_temporelle);
176
$GLOBALS['_PAPYRUS_']['page']['portee_temporelle'] = htmlentities($_GEN_commun['info_menu']->gm_portee_temporelle);
180
$GLOBALS['_PAPYRUS_']['page']['portee_temporelle'] = htmlentities($_GEN_commun['info_menu']->gm_portee_temporelle);
177
$GLOBALS['_PAPYRUS_']['page']['licence'] = htmlentities($_GEN_commun['info_menu']->gm_licence);
181
$GLOBALS['_PAPYRUS_']['page']['licence'] = htmlentities($_GEN_commun['info_menu']->gm_licence);
178
$GLOBALS['_PAPYRUS_']['page']['public'] = htmlentities($_GEN_commun['info_menu']->gm_public);
182
$GLOBALS['_PAPYRUS_']['page']['public'] = htmlentities($_GEN_commun['info_menu']->gm_public);
179
$GLOBALS['_PAPYRUS_']['page']['public_niveau'] = htmlentities($_GEN_commun['info_menu']->gm_public_niveau);
183
$GLOBALS['_PAPYRUS_']['page']['public_niveau'] = htmlentities($_GEN_commun['info_menu']->gm_public_niveau);
180
GEN_stockerMetaNameDC('DC.Title', $GLOBALS['_PAPYRUS_']['page']['titre'], $GLOBALS['_PAPYRUS_']['page']['langue']);
184
GEN_stockerMetaNameDC('DC.Title', $GLOBALS['_PAPYRUS_']['page']['titre'], $GLOBALS['_PAPYRUS_']['page']['langue']);
181
GEN_stockerMetaNameDC('DC.Title.alternative', $GLOBALS['_PAPYRUS_']['page']['titre_alternatif'], $GLOBALS['_PAPYRUS_']['page']['langue']);
185
GEN_stockerMetaNameDC('DC.Title.alternative', $GLOBALS['_PAPYRUS_']['page']['titre_alternatif'], $GLOBALS['_PAPYRUS_']['page']['langue']);
182
GEN_stockerMetaNameDC('DC.Creator', $GLOBALS['_PAPYRUS_']['page']['auteur']);
186
GEN_stockerMetaNameDC('DC.Creator', $GLOBALS['_PAPYRUS_']['page']['auteur']);
183
GEN_stockerMetaNameDC('DC.Subject', $GLOBALS['_PAPYRUS_']['page']['mots_cles'], $GLOBALS['_PAPYRUS_']['page']['langue']);
187
GEN_stockerMetaNameDC('DC.Subject', $GLOBALS['_PAPYRUS_']['page']['mots_cles'], $GLOBALS['_PAPYRUS_']['page']['langue']);
184
GEN_stockerMetaNameDC('DC.Description', $GLOBALS['_PAPYRUS_']['page']['description_libre'], $GLOBALS['_PAPYRUS_']['page']['langue']);
188
GEN_stockerMetaNameDC('DC.Description', $GLOBALS['_PAPYRUS_']['page']['description_libre'], $GLOBALS['_PAPYRUS_']['page']['langue']);
185
GEN_stockerMetaNameDC('DC.Description.abstract', $GLOBALS['_PAPYRUS_']['page']['description_resume'], $GLOBALS['_PAPYRUS_']['page']['langue']);
189
GEN_stockerMetaNameDC('DC.Description.abstract', $GLOBALS['_PAPYRUS_']['page']['description_resume'], $GLOBALS['_PAPYRUS_']['page']['langue']);
186
GEN_stockerMetaNameDC('DC.Description.tableOfContents', $GLOBALS['_PAPYRUS_']['page']['description_table_matieres'], $GLOBALS['_PAPYRUS_']['page']['langue']);
190
GEN_stockerMetaNameDC('DC.Description.tableOfContents', $GLOBALS['_PAPYRUS_']['page']['description_table_matieres'], $GLOBALS['_PAPYRUS_']['page']['langue']);
187
GEN_stockerMetaNameDC('DC.Publisher', $GLOBALS['_PAPYRUS_']['page']['publieur']);
191
GEN_stockerMetaNameDC('DC.Publisher', $GLOBALS['_PAPYRUS_']['page']['publieur']);
188
GEN_stockerMetaNameDC('DC.Contributor', $GLOBALS['_PAPYRUS_']['page']['contributeur']);
192
GEN_stockerMetaNameDC('DC.Contributor', $GLOBALS['_PAPYRUS_']['page']['contributeur']);
189
GEN_stockerMetaNameDC('DC.Date.created', $GLOBALS['_PAPYRUS_']['page']['date_creation'], '', 'W3CDTF');
193
GEN_stockerMetaNameDC('DC.Date.created', $GLOBALS['_PAPYRUS_']['page']['date_creation'], '', 'W3CDTF');
190
GEN_stockerMetaNameDC('DC.Date.valid', $GLOBALS['_PAPYRUS_']['page']['periode_validite'], '', 'W3CDTF');
194
GEN_stockerMetaNameDC('DC.Date.valid', $GLOBALS['_PAPYRUS_']['page']['periode_validite'], '', 'W3CDTF');
191
//Ajouter la gestion des dates valid et available en utilisant les dates de la table gen_page_contenu.
195
//Ajouter la gestion des dates valid et available en utilisant les dates de la table gen_page_contenu.
192
GEN_stockerMetaNameDC('DC.Date.dateSubmitted', $GLOBALS['_PAPYRUS_']['page']['date_soumission'], '', 'W3CDTF');
196
GEN_stockerMetaNameDC('DC.Date.dateSubmitted', $GLOBALS['_PAPYRUS_']['page']['date_soumission'], '', 'W3CDTF');
193
GEN_stockerMetaNameDC('DC.Date.dateCopyrighted', $GLOBALS['_PAPYRUS_']['page']['date_copyright'], '', 'W3CDTF');
197
GEN_stockerMetaNameDC('DC.Date.dateCopyrighted', $GLOBALS['_PAPYRUS_']['page']['date_copyright'], '', 'W3CDTF');
194
GEN_stockerMetaNameDC('DC.Date.dateAccepted', $GLOBALS['_PAPYRUS_']['page']['date_acceptation'], '', 'W3CDTF');
198
GEN_stockerMetaNameDC('DC.Date.dateAccepted', $GLOBALS['_PAPYRUS_']['page']['date_acceptation'], '', 'W3CDTF');
195
GEN_stockerMetaNameDC('DC.Source', $GLOBALS['_PAPYRUS_']['page']['source'], '', 'URI');
199
GEN_stockerMetaNameDC('DC.Source', $GLOBALS['_PAPYRUS_']['page']['source'], '', 'URI');
196
GEN_stockerMetaNameDC('DC.Language', $GLOBALS['_PAPYRUS_']['page']['langue_rfc_3066'], '', 'RFC3066');
200
GEN_stockerMetaNameDC('DC.Language', $GLOBALS['_PAPYRUS_']['page']['langue_rfc_3066'], '', 'RFC3066');
197
GEN_stockerMetaNameDC('DC.Coverage.spatial', $GLOBALS['_PAPYRUS_']['page']['portee_spatiale'], '', $GLOBALS['_PAPYRUS_']['page']['type_portee_spatiale']);
201
GEN_stockerMetaNameDC('DC.Coverage.spatial', $GLOBALS['_PAPYRUS_']['page']['portee_spatiale'], '', $GLOBALS['_PAPYRUS_']['page']['type_portee_spatiale']);
198
GEN_stockerMetaNameDC('DC.Coverage.temporal', $GLOBALS['_PAPYRUS_']['page']['portee_temporelle'], '', $GLOBALS['_PAPYRUS_']['page']['type_portee_temporelle']);
202
GEN_stockerMetaNameDC('DC.Coverage.temporal', $GLOBALS['_PAPYRUS_']['page']['portee_temporelle'], '', $GLOBALS['_PAPYRUS_']['page']['type_portee_temporelle']);
199
GEN_stockerMetaNameDC('DC.Rights', $GLOBALS['_PAPYRUS_']['page']['licence'], '', 'URI');
203
GEN_stockerMetaNameDC('DC.Rights', $GLOBALS['_PAPYRUS_']['page']['licence'], '', 'URI');
200
GEN_stockerMetaNameDC('DC.Audience', $GLOBALS['_PAPYRUS_']['page']['public']);
204
GEN_stockerMetaNameDC('DC.Audience', $GLOBALS['_PAPYRUS_']['page']['public']);
201
GEN_stockerMetaNameDC('DC.Audience.educationLevel', $GLOBALS['_PAPYRUS_']['page']['public_niveau']);
205
GEN_stockerMetaNameDC('DC.Audience.educationLevel', $GLOBALS['_PAPYRUS_']['page']['public_niveau']);
202
 
206
 
203
// Construction des CSS
207
// Construction des CSS
204
// Déclaration des constantes contenant les CSS à afficher sur la page.
208
// Déclaration des constantes contenant les CSS à afficher sur la page.
205
$_GEN_commun['style_type']  = 'text/css';
209
$_GEN_commun['style_type']  = 'text/css';
206
$_GEN_commun['style_integree']  = '';
210
$_GEN_commun['style_integree']  = '';
207
$_GEN_commun['style_externe']   = array();
211
$_GEN_commun['style_externe']   = array();
208
if (GEN_DEBOGAGE) {
212
if (GEN_DEBOGAGE) {
209
    GEN_stockerStyleExterne('Débogage', GEN_CHEMIN_PAP.'presentations/css/debogage.css');
213
    GEN_stockerStyleExterne('Débogage', GEN_CHEMIN_PAP.'presentations/css/debogage.css');
210
}
214
}
211
 
215
 
212
// Construction du Javascript
216
// Construction du Javascript
213
// Déclaration des constantes contenant le Javascript à afficher sur la page.
217
// Déclaration des constantes contenant le Javascript à afficher sur la page.
214
$_GEN_commun['script_type']    = 'text/javascript';
218
$_GEN_commun['script_type']    = 'text/javascript';
215
$_GEN_commun['script_code']     = '';
219
$_GEN_commun['script_code']     = '';
216
$_GEN_commun['script_fonction'] = array();
220
$_GEN_commun['script_fonction'] = array();
217
$_GEN_commun['script_fichier']  = array();
221
$_GEN_commun['script_fichier']  = array();
218
 
222
 
219
// +------------------------------------------------------------------------------------------------------+
223
// +------------------------------------------------------------------------------------------------------+
220
// Gestion des inclusions des fichiers d'applettes
224
// Gestion des inclusions des fichiers d'applettes
221
 
225
 
222
for ($i = 0; $i < count($_GEN_commun['info_applette']); $i++) {
226
for ($i = 0; $i < count($_GEN_commun['info_applette']); $i++) {
223
    // Nous vérifions que le chemin vers l'applette existe.
227
    // Nous vérifions que le chemin vers l'applette existe.
224
    if (file_exists($_GEN_commun['info_applette'][$i]->gap_chemin)) {
228
    if (file_exists($_GEN_commun['info_applette'][$i]->gap_chemin)) {
225
        include_once($_GEN_commun['info_applette'][$i]->gap_chemin);
229
        include_once($_GEN_commun['info_applette'][$i]->gap_chemin);
226
        // Nous récupérons l'expression régulière de la balise pour l'utiliser lors de l'appel
230
        // Nous récupérons l'expression régulière de la balise pour l'utiliser lors de l'appel
227
        // de la fonction de l'applette. L'appel des fonctions des applettes à lieu aprés l'appel
231
        // de la fonction de l'applette. L'appel des fonctions des applettes à lieu aprés l'appel
228
        // de l'application pour permettre à l'appli de modifier certains paramêtres (identification, ordre des menus).
232
        // de l'application pour permettre à l'appli de modifier certains paramêtres (identification, ordre des menus).
229
        $_GEN_commun['info_applette'][$i]->applette_balise = $_GEN_commun['info_applette_balise'];
233
        $_GEN_commun['info_applette'][$i]->applette_balise = $_GEN_commun['info_applette_balise'];
230
        $_GEN_commun['info_applette'][$i]->applette_fonction = $_GEN_commun['info_applette_nom_fonction'];
234
        $_GEN_commun['info_applette'][$i]->applette_fonction = $_GEN_commun['info_applette_nom_fonction'];
231
    } else {
235
    } else {
232
        // Ne devrait pas arréter le programme! Mais instancier le gestionnaire de déboguage.
236
        // Ne devrait pas arréter le programme! Mais instancier le gestionnaire de déboguage.
233
        die('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'.
237
        die('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'.
234
            'Nom applette : '.$_GEN_commun['info_applette'][$i]->gap_nom.' <br />'.
238
            'Nom applette : '.$_GEN_commun['info_applette'][$i]->gap_nom.' <br />'.
235
            'Chemin fichier applette : '.$_GEN_commun['info_applette'][$i]->gap_chemin.' <br />'.
239
            'Chemin fichier applette : '.$_GEN_commun['info_applette'][$i]->gap_chemin.' <br />'.
236
            'Ligne n° : '. __LINE__ .'<br />'.
240
            'Ligne n° : '. __LINE__ .'<br />'.
237
            'Fichier : '. __FILE__ );
241
            'Fichier : '. __FILE__ );
238
    }
242
    }
239
}
243
}
240
 
244
 
241
// +------------------------------------------------------------------------------------------------------+
245
// +------------------------------------------------------------------------------------------------------+
242
// Gestion de l'intégration de l'application liée au menu
246
// Gestion de l'intégration de l'application liée au menu
243
 
247
 
244
// Une fois les applettes appelées est executées nous appelons l'application qui peut avoir
248
// Une fois les applettes appelées est executées nous appelons l'application qui peut avoir
245
// besoins des infos des applettes (c'est le cas, pour l'applette IDENTIFICATION).
249
// besoins des infos des applettes (c'est le cas, pour l'applette IDENTIFICATION).
246
$GLOBALS['_PAPYRUS_']['general']['application_chemin'] = '';
250
$GLOBALS['_PAPYRUS_']['general']['application_chemin'] = '';
247
if (isset($_GEN_commun['info_application']->gap_chemin)) {
251
if (isset($_GEN_commun['info_application']->gap_chemin)) {
248
    $GLOBALS['_PAPYRUS_']['general']['application_chemin'] = $_GEN_commun['info_application']->gap_chemin;
252
    $GLOBALS['_PAPYRUS_']['general']['application_chemin'] = $_GEN_commun['info_application']->gap_chemin;
249
}
253
}
250
 
254
 
251
// $application_chemin contient le chemin de l'application
255
// $application_chemin contient le chemin de l'application
252
// Si $application_chemin est vide, on défini putFrame comme ne retournant rien.
256
// Si $application_chemin est vide, on défini putFrame comme ne retournant rien.
253
 
257
 
254
if (empty($GLOBALS['_PAPYRUS_']['general']['application_chemin']) ) {
258
if (empty($GLOBALS['_PAPYRUS_']['general']['application_chemin']) ) {
255
    function afficherContenuCorps()
259
    function afficherContenuCorps()
256
    {
260
    {
257
        return '<p class="pap_erreur">'.'Pas d\'application.'.'</p>';
261
        return '<p class="pap_erreur">'.'Pas d\'application.'.'</p>';
258
    }
262
    }
259
} else {
263
} else {
260
    if (file_exists($GLOBALS['_PAPYRUS_']['general']['application_chemin'])) {
264
    if (file_exists($GLOBALS['_PAPYRUS_']['general']['application_chemin'])) {
261
        include_once($GLOBALS['_PAPYRUS_']['general']['application_chemin']); 
265
        include_once($GLOBALS['_PAPYRUS_']['general']['application_chemin']); 
262
    } else {
266
    } else {
263
        die('ERREUR Papyrus : application impossible à charger. <br />'.
267
        die('ERREUR Papyrus : application impossible à charger. <br />'.
264
            'Chemin application : '.$GLOBALS['_PAPYRUS_']['general']['application_chemin'].' <br />'.
268
            'Chemin application : '.$GLOBALS['_PAPYRUS_']['general']['application_chemin'].' <br />'.
265
            'Ligne n° : '. __LINE__ .'<br />'.
269
            'Ligne n° : '. __LINE__ .'<br />'.
266
            'Fichier : '. __FILE__ );
270
            'Fichier : '. __FILE__ );
267
    }
271
    }
268
}
272
}
269
 
273
 
270
// +------------------------------------------------------------------------------------------------------+
274
// +------------------------------------------------------------------------------------------------------+
271
// Recherche des informations provenant de l'application pour la complétion du squelette
275
// Recherche des informations provenant de l'application pour la complétion du squelette
272
 
276
 
273
// Contenu navigation
277
// Contenu navigation
274
// Appel de la fonction afficherContenuNavigation() si elle existe.
278
// Appel de la fonction afficherContenuNavigation() si elle existe.
275
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_NAVIGATION'] = (function_exists('afficherContenuNavigation') ? afficherContenuNavigation() : '<!-- '.'Aucune navigation'.' -->');
279
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_NAVIGATION'] = (function_exists('afficherContenuNavigation') ? afficherContenuNavigation() : '<!-- '.'Aucune navigation'.' -->');
276
 
280
 
277
// Contenu tête
281
// Contenu tête
278
// Appel de la fonction afficherContenuTete() si elle existe.
282
// Appel de la fonction afficherContenuTete() si elle existe.
279
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_TETE'] = (function_exists('afficherContenuTete') ? afficherContenuTete() : '<!-- '.'Aucun contenu tête'.' -->');
283
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_TETE'] = (function_exists('afficherContenuTete') ? afficherContenuTete() : '<!-- '.'Aucun contenu tête'.' -->');
280
 
284
 
281
// Contenu corps
285
// Contenu corps
282
// Appel de la fonction afficherContenuCorps().
286
// Appel de la fonction afficherContenuCorps().
283
if (function_exists('afficherContenuCorps') ) {
287
if (function_exists('afficherContenuCorps') ) {
284
    $GLOBALS['_PAPYRUS_']['rendu']['CONTENU_CORPS'] = afficherContenuCorps();
288
    $GLOBALS['_PAPYRUS_']['rendu']['CONTENU_CORPS'] = afficherContenuCorps();
285
} else {
289
} else {
286
    $GLOBALS['_PAPYRUS_']['rendu']['CONTENU_CORPS'] = 
290
    $GLOBALS['_PAPYRUS_']['rendu']['CONTENU_CORPS'] = 
287
        'ERREUR Papyrus : fonction afficherContenuCorps() introuvable dans l\'application demandée. <br />'.
291
        'ERREUR Papyrus : fonction afficherContenuCorps() introuvable dans l\'application demandée. <br />'.
288
        'Ligne n° : '. __LINE__ .'<br />'.
292
        'Ligne n° : '. __LINE__ .'<br />'.
289
        'Fichier : '. __FILE__;
293
        'Fichier : '. __FILE__;
290
}
294
}
291
// Contenu pied
295
// Contenu pied
292
// Appel de la fonction afficherContenuPied() si elle existe.
296
// Appel de la fonction afficherContenuPied() si elle existe.
293
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_PIED'] = (function_exists('afficherContenuPied') ? afficherContenuPied() : '<!-- '.'Aucun contenu pied'.' -->');
297
$GLOBALS['_PAPYRUS_']['rendu']['CONTENU_PIED'] = (function_exists('afficherContenuPied') ? afficherContenuPied() : '<!-- '.'Aucun contenu pied'.' -->');
294
 
298
 
295
// +------------------------------------------------------------------------------------------------------+
299
// +------------------------------------------------------------------------------------------------------+
296
// Gestion de l'espace de nom pour les balise Papyrus
300
// Gestion de l'espace de nom pour les balise Papyrus
297
$_GEN_commun['balise_prefixe'] = 'PAPYRUS_';
301
$_GEN_commun['balise_prefixe'] = 'PAPYRUS_';
298
 
302
 
299
// +------------------------------------------------------------------------------------------------------+
303
// +------------------------------------------------------------------------------------------------------+
300
// Gestion des appels des fonctions d'applettes
304
// Gestion des appels des fonctions d'applettes
301
 
305
 
302
for ($i = 0; $i < count($_GEN_commun['info_applette']); $i++) {
306
for ($i = 0; $i < count($_GEN_commun['info_applette']); $i++) {
303
    // Recherche du nombre de balise d'une applette donnée présentes dans le squelette
307
    // Recherche du nombre de balise d'une applette donnée présentes dans le squelette
304
    $GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all(   '/<!-- '.$_GEN_commun['balise_prefixe'].'('.$_GEN_commun['info_applette'][$i]->applette_balise.') -->/',
308
    $GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all(   '/<!-- '.$_GEN_commun['balise_prefixe'].'('.$_GEN_commun['info_applette'][$i]->applette_balise.') -->/',
305
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'],
309
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'],
306
                                    $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'],
310
                                    $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'],
307
                                    PREG_SET_ORDER);
311
                                    PREG_SET_ORDER);
308
    // Si on trouve au moins une balise, on lance la boucle pour les remplacer
312
    // Si on trouve au moins une balise, on lance la boucle pour les remplacer
309
    for ($j = 0; $j <= ($GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] - 1); $j++) {
313
    for ($j = 0; $j <= ($GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] - 1); $j++) {
310
        // Nous vérifions que le nom de la fonction principale de l'applette existe.
314
        // Nous vérifions que le nom de la fonction principale de l'applette existe.
311
        if (function_exists($_GEN_commun['info_applette'][$i]->applette_fonction)) {
315
        if (function_exists($_GEN_commun['info_applette'][$i]->applette_fonction)) {
312
            // Nous comptabilisons le nombre d'utilisation des applettes dans un squelette:
316
            // Nous comptabilisons le nombre d'utilisation des applettes dans un squelette:
313
            if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction])) {
317
            if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction])) {
314
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction] = 1;
318
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction] = 1;
315
            } else {
319
            } else {
316
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction]++;
320
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$_GEN_commun['info_applette'][$i]->applette_fonction]++;
317
            }
321
            }
318
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
322
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
319
                call_user_func( $_GEN_commun['info_applette'][$i]->applette_fonction, 
323
                call_user_func( $_GEN_commun['info_applette'][$i]->applette_fonction, 
320
                                    $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j], 
324
                                    $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j], 
321
                                    $_GEN_commun);
325
                                    $_GEN_commun);
322
        } else {
326
        } else {
323
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
327
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
324
                                '<!-- '."\n".
328
                                '<!-- '."\n".
325
                                $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' : '.
329
                                $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' : '.
326
                                'fonction de l\'applette "'.$_GEN_commun['info_applette'][$i]->gap_nom.'" introuvable! '."\n".
330
                                'fonction de l\'applette "'.$_GEN_commun['info_applette'][$i]->gap_nom.'" introuvable! '."\n".
327
                                'Fonction : '.$_GEN_commun['info_applette'][$i]->applette_fonction."\n".
331
                                'Fonction : '.$_GEN_commun['info_applette'][$i]->applette_fonction."\n".
328
                                ' -->';
332
                                ' -->';
329
        }
333
        }
330
        // Remplacement des balises d'applette de Génésia dans le squelette
334
        // Remplacement des balises d'applette de Génésia dans le squelette
331
        $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
335
        $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
332
                            str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' -->', 
336
                            str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' -->', 
333
                                            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
337
                                            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
334
                                            $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
338
                                            $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
335
    }
339
    }
336
}
340
}
337
 
341
 
338
// +------------------------------------------------------------------------------------------------------+
342
// +------------------------------------------------------------------------------------------------------+
339
// Continuation recherche d'info provenant de Papyrus pour la complétion du squelette
343
// Continuation recherche d'info provenant de Papyrus pour la complétion du squelette
340
 
344
 
341
// Une fois l'application appelé est executé nous affichons le contenu de l'entête qui a pu 
345
// Une fois l'application appelé est executé nous affichons le contenu de l'entête qui a pu 
342
// être modifié par l'application.
346
// être modifié par l'application.
343
$GLOBALS['_PAPYRUS_']['rendu']['META_HTTP_EQUIV'] = GEN_afficherMeta('http-equiv');
347
$GLOBALS['_PAPYRUS_']['rendu']['META_HTTP_EQUIV'] = GEN_afficherMeta('http-equiv');
344
$GLOBALS['_PAPYRUS_']['rendu']['META_NAME'] = GEN_afficherMeta('name');
348
$GLOBALS['_PAPYRUS_']['rendu']['META_NAME'] = GEN_afficherMeta('name');
345
$GLOBALS['_PAPYRUS_']['rendu']['META_NAME_DC'] = GEN_afficherMeta('dc');
349
$GLOBALS['_PAPYRUS_']['rendu']['META_NAME_DC'] = GEN_afficherMeta('dc');
346
// Nous récupérons tout les styles CSS pour l'afficher dans l'entête de la page.
350
// Nous récupérons tout les styles CSS pour l'afficher dans l'entête de la page.
347
$GLOBALS['_PAPYRUS_']['rendu']['STYLES'] = GEN_afficherStyle();
351
$GLOBALS['_PAPYRUS_']['rendu']['STYLES'] = GEN_afficherStyle();
348
// Nous récupérons tout le Javascript pour l'afficher dans l'entête de la page.
352
// Nous récupérons tout le Javascript pour l'afficher dans l'entête de la page.
349
$GLOBALS['_PAPYRUS_']['rendu']['SCRIPTS'] = GEN_afficherScript();
353
$GLOBALS['_PAPYRUS_']['rendu']['SCRIPTS'] = GEN_afficherScript();
350
 
354
 
351
// +------------------------------------------------------------------------------------------------------+
355
// +------------------------------------------------------------------------------------------------------+
352
// Remplacement des balises Papyrus dans le squelette
356
// Remplacement des balises Papyrus dans le squelette
353
foreach ($GLOBALS['_PAPYRUS_']['rendu'] as $GLOBALS['_PAPYRUS_']['tmp']['cle'] => $GLOBALS['_PAPYRUS_']['tmp']['val']) {
357
foreach ($GLOBALS['_PAPYRUS_']['rendu'] as $GLOBALS['_PAPYRUS_']['tmp']['cle'] => $GLOBALS['_PAPYRUS_']['tmp']['val']) {
354
    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
358
    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
355
                    str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['tmp']['cle'].' -->',
359
                    str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['tmp']['cle'].' -->',
356
                                    $GLOBALS['_PAPYRUS_']['tmp']['val'], 
360
                                    $GLOBALS['_PAPYRUS_']['tmp']['val'], 
357
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
361
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
358
}
362
}
359
 
363
 
360
// +------------------------------------------------------------------------------------------------------+
364
// +------------------------------------------------------------------------------------------------------+
361
// Stokage du squelette dans un variable globale aprés avoir remplacer les balises Papyrus.
365
// Stokage du squelette dans un variable globale aprés avoir remplacer les balises Papyrus.
362
$_GEN_commun['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
366
$_GEN_commun['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
363
 
367
 
364
/* +--Fin du code ---------------------------------------------------------------------------------------+
368
/* +--Fin du code ---------------------------------------------------------------------------------------+
365
*
369
*
366
* $Log: not supported by cvs2svn $
370
* $Log: not supported by cvs2svn $
-
 
371
* Revision 1.8  2004/11/26 19:02:07  jpm
-
 
372
* Comptabilisation du nombre d'appel de chaque applette dans le squelette.
-
 
373
*
367
* Revision 1.7  2004/11/24 18:33:29  jpm
374
* Revision 1.7  2004/11/24 18:33:29  jpm
368
* Encapsulation des variables dans le tableau global _PAPYRUS_.
375
* Encapsulation des variables dans le tableau global _PAPYRUS_.
369
*
376
*
370
* Revision 1.6  2004/11/15 17:40:21  jpm
377
* Revision 1.6  2004/11/15 17:40:21  jpm
371
* Gestion d'un espace de nom pour les balises Papyrus.
378
* Gestion d'un espace de nom pour les balises Papyrus.
372
*
379
*
373
* Revision 1.5  2004/10/26 18:42:54  jpm
380
* Revision 1.5  2004/10/26 18:42:54  jpm
374
* Gestion de la fonction de navigation pour les appli Papyrus.
381
* Gestion de la fonction de navigation pour les appli Papyrus.
375
*
382
*
376
* Revision 1.4  2004/10/25 16:28:47  jpm
383
* Revision 1.4  2004/10/25 16:28:47  jpm
377
* Ajout de nouvelles balises Papyrus, ajout vérification mise à jour de Papyrus, meilleure gestion des sessions...
384
* Ajout de nouvelles balises Papyrus, ajout vérification mise à jour de Papyrus, meilleure gestion des sessions...
378
*
385
*
379
* Revision 1.3  2004/10/22 17:23:35  jpm
386
* Revision 1.3  2004/10/22 17:23:35  jpm
380
* Amélioration de la gestion de l'erreur si pas d'appli.
387
* Amélioration de la gestion de l'erreur si pas d'appli.
381
*
388
*
382
* Revision 1.2  2004/06/17 08:04:44  jpm
389
* Revision 1.2  2004/06/17 08:04:44  jpm
383
* Changement de constante pour les chemin d'accès à la biblio de code de Papyrus.
390
* Changement de constante pour les chemin d'accès à la biblio de code de Papyrus.
384
*
391
*
385
* Revision 1.1  2004/06/16 08:13:58  jpm
392
* Revision 1.1  2004/06/16 08:13:58  jpm
386
* Changement de nom de Génésia en Papyrus.
393
* Changement de nom de Génésia en Papyrus.
387
* Changement de l'arborescence.
394
* Changement de l'arborescence.
388
*
395
*
389
* Revision 1.32  2004/05/10 12:24:55  jpm
396
* Revision 1.32  2004/05/10 12:24:55  jpm
390
* Amélioration de la recherche des fichiers de squelette.
397
* Amélioration de la recherche des fichiers de squelette.
391
*
398
*
392
* Revision 1.31  2004/05/05 10:42:35  jpm
399
* Revision 1.31  2004/05/05 10:42:35  jpm
393
* Amélioration de la gestion de l'internationalisation.
400
* Amélioration de la gestion de l'internationalisation.
394
*
401
*
395
* Revision 1.30  2004/05/05 08:25:37  jpm
402
* Revision 1.30  2004/05/05 08:25:37  jpm
396
* Modification de la façon d'ajouter la feuille de style de débogage pour qu'elle soit prise en compte par défaut.
403
* Modification de la façon d'ajouter la feuille de style de débogage pour qu'elle soit prise en compte par défaut.
397
*
404
*
398
* Revision 1.29  2004/05/03 14:12:04  jpm
405
* Revision 1.29  2004/05/03 14:12:04  jpm
399
* Suppression du fichier bibliothèquie de fonctions sur gen_menu.
406
* Suppression du fichier bibliothèquie de fonctions sur gen_menu.
400
*
407
*
401
* Revision 1.28  2004/05/03 11:21:58  jpm
408
* Revision 1.28  2004/05/03 11:21:58  jpm
402
* Fin de la gestion des applettes et suppression de l'info_menu_hierarchie de _GEN_commun.
409
* Fin de la gestion des applettes et suppression de l'info_menu_hierarchie de _GEN_commun.
403
*
410
*
404
* Revision 1.27  2004/05/01 17:22:55  jpm
411
* Revision 1.27  2004/05/01 17:22:55  jpm
405
* Appel de la bibliothèque de fonctions concernant les menus.
412
* Appel de la bibliothèque de fonctions concernant les menus.
406
*
413
*
407
* Revision 1.26  2004/05/01 16:19:36  jpm
414
* Revision 1.26  2004/05/01 16:19:36  jpm
408
* Suppression du code ayant pu être transformé en applettes (menu multi-niveaux, menu unique, menu commun, identification, sélecteur de sites).
415
* Suppression du code ayant pu être transformé en applettes (menu multi-niveaux, menu unique, menu commun, identification, sélecteur de sites).
409
*
416
*
410
* Revision 1.25  2004/05/01 11:39:38  jpm
417
* Revision 1.25  2004/05/01 11:39:38  jpm
411
* Déplacement du code gérant les applettes et du code de récupération du contenu du fichier squelette.
418
* Déplacement du code gérant les applettes et du code de récupération du contenu du fichier squelette.
412
*
419
*
413
* Revision 1.24  2004/04/28 12:04:31  jpm
420
* Revision 1.24  2004/04/28 12:04:31  jpm
414
* Changement du modèle de la base de données.
421
* Changement du modèle de la base de données.
415
*
422
*
416
* Revision 1.23  2004/04/22 08:30:47  jpm
423
* Revision 1.23  2004/04/22 08:30:47  jpm
417
* Transformation de $GS_GLOBAL en $_GEN_commun.
424
* Transformation de $GS_GLOBAL en $_GEN_commun.
418
*
425
*
419
* Revision 1.22  2004/04/21 07:55:02  jpm
426
* Revision 1.22  2004/04/21 07:55:02  jpm
420
* Ajout de la feuille de style de débogage si le débogage de Génésia est activé.
427
* Ajout de la feuille de style de débogage si le débogage de Génésia est activé.
421
*
428
*
422
* Revision 1.19  2004/04/09 16:20:54  jpm
429
* Revision 1.19  2004/04/09 16:20:54  jpm
423
* Extraction de la gestion du cache et de l'envoi.
430
* Extraction de la gestion du cache et de l'envoi.
424
* Gestion des tables i18n.
431
* Gestion des tables i18n.
425
*
432
*
426
* Revision 1.18  2004/04/08 12:29:48  jpm
433
* Revision 1.18  2004/04/08 12:29:48  jpm
427
* Début amélioration de la gestion du cache et de la compression des pages de Génésia.
434
* Début amélioration de la gestion du cache et de la compression des pages de Génésia.
428
*
435
*
429
* Revision 1.17  2004/04/05 16:38:04  jpm
436
* Revision 1.17  2004/04/05 16:38:04  jpm
430
* Utilisation des nouvelles fonctions gérant l'insertion du Javascript.
437
* Utilisation des nouvelles fonctions gérant l'insertion du Javascript.
431
*
438
*
432
* Revision 1.16  2004/04/02 16:30:56  jpm
439
* Revision 1.16  2004/04/02 16:30:56  jpm
433
* Gestion de la balise Génésia IDENTIFICATION permettant l'envoie d'un formulaire de login.
440
* Gestion de la balise Génésia IDENTIFICATION permettant l'envoie d'un formulaire de login.
434
*
441
*
435
* Revision 1.15  2004/04/01 11:27:13  jpm
442
* Revision 1.15  2004/04/01 11:27:13  jpm
436
* Ajout et modification de commentaires pour PhpDocumentor.
443
* Ajout et modification de commentaires pour PhpDocumentor.
437
*
444
*
438
* Revision 1.14  2004/03/31 16:50:10  jpm
445
* Revision 1.14  2004/03/31 16:50:10  jpm
439
* Prise en compte du nouveau modèle de Génésia révision 1.9.
446
* Prise en compte du nouveau modèle de Génésia révision 1.9.
440
*
447
*
441
* Revision 1.13  2004/03/27 11:07:45  jpm
448
* Revision 1.13  2004/03/27 11:07:45  jpm
442
* Modification des commentaires vis à vis du nouveau modèle.
449
* Modification des commentaires vis à vis du nouveau modèle.
443
* Mise en conformité avec la convention de codage.
450
* Mise en conformité avec la convention de codage.
444
* Amélioration du code.
451
* Amélioration du code.
445
*
452
*
446
* Revision 1.12  2004/03/23 17:06:44  jpm
453
* Revision 1.12  2004/03/23 17:06:44  jpm
447
* Ajout de commentaire dans l'entête.
454
* Ajout de commentaire dans l'entête.
448
* Mise en conformité avec la convention de codage.
455
* Mise en conformité avec la convention de codage.
449
*
456
*
450
* +-- Fin du code ----------------------------------------------------------------------------------------+
457
* +-- Fin du code ----------------------------------------------------------------------------------------+
451
*/
458
*/
452
?>
459
?>