32,7 → 32,7 |
// pris connaissance de la licence CeCILL, et que vous en avez accepté les |
// termes. |
// ---- |
// CVS : $Id: pap_rendu.inc.php,v 1.18 2005-09-22 14:02:49 ddelon Exp $ |
// CVS : $Id: pap_rendu.inc.php,v 1.19 2005-10-12 17:20:33 ddelon Exp $ |
/** |
* Rendu : programme traitant l'url demandée et retournant la page compressé au navigateur. |
* |
48,7 → 48,7 |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <laurent.coudouneau@ema.fr> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.18 $ $Date: 2005-09-22 14:02:49 $ |
*@version $Revision: 1.19 $ $Date: 2005-10-12 17:20:33 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
306,7 → 306,7 |
$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction = $GLOBALS['_GEN_commun']['info_applette_nom_fonction']; |
} else { |
// Ne devrait pas arréter le programme! Mais instancier le gestionnaire de déboguage. |
die('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'. |
echo('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'. |
'Nom applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_nom.' <br />'. |
'Chemin fichier applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_chemin.' <br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
377,7 → 377,7 |
$GLOBALS['_GEN_commun']['balise_prefixe'] = 'PAPYRUS_'; |
|
// +------------------------------------------------------------------------------------------------------+ |
// Gestion des appels des fonctions d'applettes |
// Gestion des appels des fonctions d'applettes de papyrus |
|
for ($i = 0; $i < count($GLOBALS['_GEN_commun']['info_applette']); $i++) { |
// Recherche du nombre de balise d'une applette donnée présentes dans le squelette |
416,7 → 416,51 |
} |
} |
|
|
|
// +------------------------------------------------------------------------------------------------------+ |
// Gestion des appels des fonctions d'applettes des applications clientes de papyrus |
|
$GLOBALS['_GEN_commun']['balise_prefixe_client'] = 'CLIENT_'; |
|
for ($i = 0; $i < count($GLOBALS['_GEN_commun']['info_applette']); $i++) { |
// Recherche du nombre de balise d'une applette donnée présentes dans le squelette |
$GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all( |
'/<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe_client'].'('.$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_balise.') -->/', |
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette'], |
$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'], |
PREG_SET_ORDER); |
// Si on trouve au moins une balise, on lance la boucle pour les remplacer |
for ($j = 0; $j <= ($GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] - 1); $j++) { |
// Nous vérifions que le nom de la fonction principale de l'applette existe. |
if (function_exists($GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction)) { |
// Nous comptabilisons le nombre d'utilisation des applettes dans un squelette: |
if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction])) { |
$GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction] = 1; |
} else { |
$GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction]++; |
} |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = |
call_user_func( $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction, |
$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j], |
$GLOBALS['_GEN_commun']); |
} else { |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = |
'<!-- '."\n". |
$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' : '. |
'fonction de l\'applette "'.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_nom.'" introuvable! '."\n". |
'Fonction : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction."\n". |
' -->'; |
} |
// Remplacement des balises d'applette de Génésia dans le squelette |
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = |
str_replace( '<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe_client'].$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' -->', |
$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], |
$GLOBALS['_PAPYRUS_']['general']['contenu_squelette']); |
} |
} |
|
// +------------------------------------------------------------------------------------------------------+ |
// Continuation recherche d'info provenant de Papyrus pour la complétion du squelette |
|
// Une fois l'application appelé est executé nous affichons le contenu de l'entête qui a pu |
457,6 → 501,9 |
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.18 2005/09/22 14:02:49 ddelon |
* nettoyage annuaire et php5 |
* |
* Revision 1.17 2005/09/20 17:01:22 ddelon |
* php5 et bugs divers |
* |