Subversion Repositories Applications.papyrus

Rev

Rev 1147 | Rev 1169 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1147 Rev 1148
Line 30... Line 30...
30
 
30
 
31
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez 
31
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez 
32
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
32
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
33
// termes.
33
// termes.
34
// ----
34
// ----
35
// CVS : $Id: pap_rendu.inc.php,v 1.34 2006-12-12 13:56:33 jp_milcent Exp $
35
// CVS : $Id: pap_rendu.inc.php,v 1.35 2006-12-12 17:15:57 jp_milcent Exp $
36
/**
36
/**
37
* Rendu : programme traitant l'url demandée et retournant la page compressé au navigateur.
37
* Rendu : programme traitant l'url demandée et retournant la page compressé au navigateur.
38
*
38
*
39
* Ce programme contient la partie collectant les informations sur la page demandée par le navigateur client.
39
* Ce programme contient la partie collectant les informations sur la page demandée par le navigateur client.
Line 46... Line 46...
46
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
46
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
47
//Autres auteurs :
47
//Autres auteurs :
48
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
48
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
49
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
49
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
50
*@copyright     Tela-Botanica 2000-2004
50
*@copyright     Tela-Botanica 2000-2004
51
*@version       $Revision: 1.34 $ $Date: 2006-12-12 13:56:33 $
51
*@version       $Revision: 1.35 $ $Date: 2006-12-12 17:15:57 $
52
// +------------------------------------------------------------------------------------------------------+
52
// +------------------------------------------------------------------------------------------------------+
53
*/
53
*/
Line 54... Line 54...
54
 
54
 
Line 307... Line 307...
307
 
307
 
308
// +------------------------------------------------------------------------------------------------------+
308
// +------------------------------------------------------------------------------------------------------+
309
// Gestion des inclusions des fichiers d'applettes présentes dans le squelette
309
// Gestion des inclusions des fichiers d'applettes présentes dans le squelette
310
// TODO : Supprimer des fichiers du coeur de Papyrus, précédent ce fichier, la variable : $_GEN_commun['info_applette']
310
// TODO : Supprimer des fichiers du coeur de Papyrus, précédent ce fichier, la variable : $_GEN_commun['info_applette']
-
 
311
$GLOBALS['_PAPYRUS_']['info_applette'] = array();
311
$GLOBALS['_PAPYRUS_']['info_applette'] = array();
312
$PapRendu = new Pap_Rendu();
Line 312... Line 313...
312
Pap_Rendu::parserBaliseApplette($GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
313
$PapRendu->parserBaliseApplette($GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
313
 
314
 
Line 314... Line 315...
314
// +------------------------------------------------------------------------------------------------------+
315
// +------------------------------------------------------------------------------------------------------+
Line 417... Line 418...
417
$GLOBALS['_PAPYRUS_']['rendu']['STYLES'] = GEN_afficherStyle();
418
$GLOBALS['_PAPYRUS_']['rendu']['STYLES'] = GEN_afficherStyle();
418
// Nous récupérons tout le Javascript pour l'afficher dans l'entête de la page.
419
// Nous récupérons tout le Javascript pour l'afficher dans l'entête de la page.
419
$GLOBALS['_PAPYRUS_']['rendu']['SCRIPTS'] = GEN_afficherScript();
420
$GLOBALS['_PAPYRUS_']['rendu']['SCRIPTS'] = GEN_afficherScript();
Line 420... Line 421...
420
 
421
 
-
 
422
// +------------------------------------------------------------------------------------------------------+
-
 
423
// Remplacement des balises des applettes de Papyrus et des Clients dans le squelette avant les appli
-
 
424
$PapRendu->remplacerBaliseApplette();
-
 
425
 
421
// +------------------------------------------------------------------------------------------------------+
426
// +------------------------------------------------------------------------------------------------------+
422
// Gestion des inclusions des fichiers d'applettes présentes dans le contenu généré par l'application
427
// Gestion des inclusions des fichiers d'applettes présentes dans le contenu généré par l'application
423
if (!isset($GLOBALS['_PAPYRUS_']['applette']['analyse']) || $GLOBALS['_PAPYRUS_']['applette']['analyse'] == true) {
428
if (!isset($GLOBALS['_PAPYRUS_']['applette']['analyse']) || $GLOBALS['_PAPYRUS_']['applette']['analyse'] == true) {
424
	// Puisque l'application autorise l'analyse, nous l'effectuons:
429
	// Puisque l'application autorise l'analyse, nous l'effectuons:
425
	Pap_Rendu::parserBaliseApplette($GLOBALS['_PAPYRUS_']['general']['contenu_application']);
430
	$PapRendu->parserBaliseApplette($GLOBALS['_PAPYRUS_']['general']['contenu_application'], true);
426
}
-
 
Line 427... Line 431...
427
//echo '<pre>'.print_r($GLOBALS['_PAPYRUS_']['info_applette'], true).'</pre>';
431
}
428
 
-
 
429
// +------------------------------------------------------------------------------------------------------+
-
 
430
// Remplacement des balises des applettes de Papyrus et des Clients
-
 
431
foreach ($GLOBALS['_PAPYRUS_']['info_applette'] as $applette_id => $applette_val) {
-
 
432
    // Si on trouve au moins une balise, on lance la boucle pour les remplacer
-
 
433
    if (!isset($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'])) {
-
 
434
    	echo 'oc:'.$applette_id;
-
 
435
    }
-
 
436
    for ($j = 0; $j < count($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises']); $j++) {
-
 
437
        // TODO : supprimer cette particularité et utiliser la variable $GLOBALS['_PAPYRUS_']['info_applette'] 
-
 
438
        // Nous comptabilisons le nombre d'utilisation des applettes dans un squelette pour l'applette Menu:
-
 
439
        if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']])) {
-
 
440
            $GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']] = 1;
-
 
441
        } else {
-
 
442
            $GLOBALS['_PAPYRUS_']['applette']['comptage'][$applette_val['applette_fonction']]++;
-
 
443
        }
-
 
444
        // Nous vérifions que le nom de la fonction principale de l'applette existe.
-
 
445
        if (function_exists($GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction'])) {
-
 
446
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
-
 
447
                call_user_func( $GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction'], 
-
 
448
                                    $GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j], 
-
 
449
                                    $GLOBALS['_GEN_commun']);
-
 
450
        } else {
-
 
451
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
-
 
452
                '<!-- '."\n".
-
 
453
                $GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j][0].' : '.
-
 
454
                'fonction de l\'applette "'.$applette_id.'" introuvable! '."\n".
-
 
455
                'Fonction : '.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['applette_fonction']."\n".
-
 
456
                ' -->';
-
 
457
        }
-
 
458
        // Remplacement des balises d'applette de Papyrus dans le squelette
-
 
459
        $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
-
 
460
            preg_replace(	'/'.$GLOBALS['_PAPYRUS_']['info_applette'][$applette_id]['balises'][$j][0].'/', 
-
 
461
                			$GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
-
 
462
                			$GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
-
 
463
	}
-
 
464
}
-
 
465
 
432
 
466
// +------------------------------------------------------------------------------------------------------+
433
// +------------------------------------------------------------------------------------------------------+
467
// Remplacement des balises Papyrus dans le squelette
434
// Remplacement des balises Papyrus dans le squelette, le contenu généré par l'appli est remplacé.
468
foreach ($GLOBALS['_PAPYRUS_']['rendu'] as $GLOBALS['_PAPYRUS_']['tmp']['cle'] => $GLOBALS['_PAPYRUS_']['tmp']['val']) {
435
foreach ($GLOBALS['_PAPYRUS_']['rendu'] as $GLOBALS['_PAPYRUS_']['tmp']['cle'] => $GLOBALS['_PAPYRUS_']['tmp']['val']) {
469
    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
436
    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
470
                    str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['tmp']['cle'].' -->',
437
                    str_replace(   '<!-- '.$_GEN_commun['balise_prefixe'].$GLOBALS['_PAPYRUS_']['tmp']['cle'].' -->',
471
                                    $GLOBALS['_PAPYRUS_']['tmp']['val'], 
438
                                    $GLOBALS['_PAPYRUS_']['tmp']['val'], 
Line 472... Line 439...
472
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
439
                                    $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
-
 
440
}
-
 
441
 
-
 
442
// +------------------------------------------------------------------------------------------------------+
-
 
443
// Remplacement des balises des applettes de Papyrus et des Clients dans le contenu de l'application si nécessaire
-
 
444
if ($PapRendu->getBoolBaliseAppli()) {
-
 
445
	$PapRendu->remplacerBaliseApplette();
473
}
446
}
474
 
447
 
475
// +------------------------------------------------------------------------------------------------------+
448
// +------------------------------------------------------------------------------------------------------+
476
// Remplacement des actions Papyrus dans le squelette
449
// Remplacement des actions Papyrus dans le squelette
477
// Création d'un objet Text_Papyrus :
450
// Création d'un objet Text_Papyrus :
Line 486... Line 459...
486
$GLOBALS['_GEN_commun']['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
459
$GLOBALS['_GEN_commun']['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
Line 487... Line 460...
487
 
460
 
488
/* +--Fin du code ---------------------------------------------------------------------------------------+
461
/* +--Fin du code ---------------------------------------------------------------------------------------+
489
*
462
*
-
 
463
* $Log: not supported by cvs2svn $
-
 
464
* Revision 1.34  2006/12/12 13:56:33  jp_milcent
-
 
465
* Modification de l'ordre de remplacement des balises pour permettre aux apllettes d'intéragir sur le contenu de l'application.
490
* $Log: not supported by cvs2svn $
466
*
491
* Revision 1.33  2006/12/08 15:59:17  jp_milcent
467
* Revision 1.33  2006/12/08 15:59:17  jp_milcent
492
* Suppression de code inutile.
468
* Suppression de code inutile.
493
*
469
*
494
* Revision 1.32  2006/12/01 17:05:34  florian
470
* Revision 1.32  2006/12/01 17:05:34  florian