Line 27... |
Line 27... |
27 |
// | de sécurité. |
|
27 |
// | de sécurité. |
|
28 |
// | |
|
28 |
// | |
|
29 |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la |
|
29 |
// | Le fait que vous puissiez accéder à cet en-tête signifie que vous avez pris connaissance de la |
|
30 |
// | licence CeCILL, et que vous en avez accepté les termes. |
|
30 |
// | licence CeCILL, et que vous en avez accepté les termes. |
|
31 |
// +------------------------------------------------------------------------------------------------------+
|
31 |
// +------------------------------------------------------------------------------------------------------+
|
32 |
// CVS : $Id: pap_rendu.class.php,v 1.5 2006-12-11 10:58:41 jp_milcent Exp $
|
32 |
// CVS : $Id: pap_rendu.class.php,v 1.6 2006-12-12 17:18:06 jp_milcent Exp $
|
33 |
/**
|
33 |
/**
|
34 |
* Classe : pap_rendu
|
34 |
* Classe : pap_rendu
|
35 |
*
|
35 |
*
|
36 |
* Fournit des méthodes pour le rendu.
|
36 |
* Fournit des méthodes pour le rendu.
|
37 |
*
|
37 |
*
|
Line 40... |
Line 40... |
40 |
//Auteur original :
|
40 |
//Auteur original :
|
41 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
41 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
42 |
//Autres auteurs :
|
42 |
//Autres auteurs :
|
43 |
*@author Aucun
|
43 |
*@author Aucun
|
44 |
*@copyright Tela-Botanica 2000-2006
|
44 |
*@copyright Tela-Botanica 2000-2006
|
45 |
*@version $Revision: 1.5 $ $Date: 2006-12-11 10:58:41 $
|
45 |
*@version $Revision: 1.6 $ $Date: 2006-12-12 17:18:06 $
|
46 |
// +------------------------------------------------------------------------------------------------------+
|
46 |
// +------------------------------------------------------------------------------------------------------+
|
47 |
*/
|
47 |
*/
|
Line 48... |
Line 48... |
48 |
|
48 |
|
49 |
// +------------------------------------------------------------------------------------------------------+
|
49 |
// +------------------------------------------------------------------------------------------------------+
|
50 |
// | ENTÊTE du PROGRAMME |
|
50 |
// | ENTÊTE du PROGRAMME |
|
Line 51... |
Line 51... |
51 |
// +------------------------------------------------------------------------------------------------------+
|
51 |
// +------------------------------------------------------------------------------------------------------+
|
52 |
|
52 |
|
- |
|
53 |
class Pap_Rendu {
|
- |
|
54 |
|
53 |
class Pap_Rendu {
|
55 |
var $bool_balise_appli = false;
|
54 |
|
56 |
|
Line 55... |
Line 57... |
55 |
function pap_rendu()
|
57 |
function pap_rendu()
|
- |
|
58 |
{
|
- |
|
59 |
|
- |
|
60 |
}
|
- |
|
61 |
|
- |
|
62 |
function getBoolBaliseAppli()
|
Line 56... |
Line 63... |
56 |
{
|
63 |
{
|
57 |
|
64 |
return $this->bool_balise_appli;
|
58 |
}
|
65 |
}
|
59 |
|
66 |
|
60 |
function parserBaliseApplette($contenu)
|
67 |
function parserBaliseApplette($contenu, $bool_appli = false)
|
61 |
{
|
68 |
{
|
62 |
$noms_applettes = 'IDENTIFICATION|MENU|MOTEUR_RECHERCHE|SELECTEUR_SITES|VOUS_ETES_ICI';// Compatibilité ancienne syntaxe
|
69 |
$noms_applettes = 'IDENTIFICATION|MENU|MOTEUR_RECHERCHE|SELECTEUR_SITES|VOUS_ETES_ICI';// Compatibilité ancienne syntaxe
|
63 |
$GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all(
|
70 |
$GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all(
|
- |
|
71 |
'/\{\{(\w+) ?[^}]*\}\}|<!-- (?:'.$GLOBALS['_GEN_commun']['balise_prefixe'].'|'.$GLOBALS['_GEN_commun']['balise_prefixe_client'].')('.$noms_applettes.')[^ ]* -->/',
|
- |
|
72 |
$contenu,
|
- |
|
73 |
$tab_decoupage,
|
64 |
'/\{\{(\w+) ?[^}]*\}\}|<!-- (?:'.$GLOBALS['_GEN_commun']['balise_prefixe'].'|'.$GLOBALS['_GEN_commun']['balise_prefixe_client'].')('.$noms_applettes.')[^ ]* -->/',
|
74 |
PREG_SET_ORDER);
|
65 |
$contenu,
|
75 |
if ($bool_appli && $GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] > 0) {
|
66 |
$tab_decoupage,
|
76 |
$this->bool_balise_appli = true;
|
67 |
PREG_SET_ORDER);
|
77 |
}
|
68 |
for ($i = 0; $i < $GLOBALS['_PAPYRUS_']['applette']['nbr_balise']; $i++) {
|
78 |
for ($i = 0; $i < $GLOBALS['_PAPYRUS_']['applette']['nbr_balise']; $i++) {
|
Line 120... |
Line 130... |
120 |
'<pre>'.print_r('/'.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_nom]['applette_balise'].'/', true).'</pre>';
|
130 |
'<pre>'.print_r('/'.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_nom]['applette_balise'].'/', true).'</pre>';
|
121 |
trigger_error($message, E_USER_ERROR);
|
131 |
trigger_error($message, E_USER_ERROR);
|
122 |
}
|
132 |
}
|
123 |
}
|
133 |
}
|
124 |
}
|
134 |
}
|
- |
|
135 |
|
- |
|
136 |
function remplacerBaliseApplette()
|
- |
|
137 |
{
|
- |
|
138 |
foreach ($GLOBALS['_PAPYRUS_']['info_applette'] as $applette_id => $applette_val) {
|
- |
|
139 |
// Si on trouve au moins une balise, on lance la boucle pour les remplacer
|
- |
|
140 |
if (!isset($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'])) {
|
- |
|
141 |
echo 'oc:'.$applette_id;
|
- |
|
142 |
}
|
- |
|
143 |
for ($j = 0; $j < count($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises']); $j++) {
|
- |
|
144 |
// TODO : supprimer cette particularité et utiliser la variable $GLOBALS['_PAPYRUS_']['info_applette']
|
- |
|
145 |
// Nous comptabilisons le nombre d'utilisation des applettes dans un squelette pour l'applette Menu:
|
- |
|
146 |
if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']])) {
|
- |
|
147 |
$GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']] = 1;
|
- |
|
148 |
} else {
|
- |
|
149 |
$GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']]++;
|
- |
|
150 |
}
|
- |
|
151 |
// Nous vérifions que le nom de la fonction principale de l'applette existe.
|
- |
|
152 |
if (function_exists($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction'])) {
|
- |
|
153 |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] =
|
- |
|
154 |
call_user_func( $GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction'],
|
- |
|
155 |
$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j],
|
- |
|
156 |
$GLOBALS['_GEN_commun']);
|
- |
|
157 |
} else {
|
- |
|
158 |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] =
|
- |
|
159 |
'<!-- '."\n".
|
- |
|
160 |
$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j][0].' : '.
|
- |
|
161 |
'fonction de l\'applette "'.$applette_id.'" introuvable! '."\n".
|
- |
|
162 |
'Fonction : '.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction']."\n".
|
- |
|
163 |
' -->';
|
- |
|
164 |
}
|
- |
|
165 |
// Remplacement des balises d'applette de Papyrus dans le squelette
|
- |
|
166 |
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] =
|
- |
|
167 |
preg_replace( '/'.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j][0].'/',
|
- |
|
168 |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'],
|
- |
|
169 |
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
|
- |
|
170 |
}
|
- |
|
171 |
}
|
- |
|
172 |
}
|
125 |
}
|
173 |
}
|
126 |
?>
|
174 |
?>
|
127 |
|
175 |
|