Subversion Repositories Applications.papyrus

Rev

Rev 448 | Rev 544 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 448 Rev 530
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.18 2005-09-22 14:02:49 ddelon Exp $
35
// CVS : $Id: pap_rendu.inc.php,v 1.19 2005-10-12 17:20:33 ddelon 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.18 $ $Date: 2005-09-22 14:02:49 $
51
*@version       $Revision: 1.19 $ $Date: 2005-10-12 17:20:33 $
52
// +------------------------------------------------------------------------------------------------------+
52
// +------------------------------------------------------------------------------------------------------+
53
*/
53
*/
Line 54... Line 54...
54
 
54
 
Line 304... Line 304...
304
        // de l'application pour permettre à l'appli de modifier certains paramêtres (identification, ordre des menus).
304
        // de l'application pour permettre à l'appli de modifier certains paramêtres (identification, ordre des menus).
305
        $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_balise = $GLOBALS['_GEN_commun']['info_applette_balise'];
305
        $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_balise = $GLOBALS['_GEN_commun']['info_applette_balise'];
306
        $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction = $GLOBALS['_GEN_commun']['info_applette_nom_fonction'];
306
        $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction = $GLOBALS['_GEN_commun']['info_applette_nom_fonction'];
307
    } else {
307
    } else {
308
        // Ne devrait pas arréter le programme! Mais instancier le gestionnaire de déboguage.
308
        // Ne devrait pas arréter le programme! Mais instancier le gestionnaire de déboguage.
309
        die('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'.
309
        echo('ERREUR Papyrus : Impossible de trouver le fichier de l\'applette. <br />'.
310
            'Nom applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_nom.' <br />'.
310
            'Nom applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_nom.' <br />'.
311
            'Chemin fichier applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_chemin.' <br />'.
311
            'Chemin fichier applette : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_chemin.' <br />'.
312
            'Ligne n° : '. __LINE__ .'<br />'.
312
            'Ligne n° : '. __LINE__ .'<br />'.
313
            'Fichier : '. __FILE__ );
313
            'Fichier : '. __FILE__ );
314
    }
314
    }
Line 375... Line 375...
375
// +------------------------------------------------------------------------------------------------------+
375
// +------------------------------------------------------------------------------------------------------+
376
// Gestion de l'espace de nom pour les balise Papyrus
376
// Gestion de l'espace de nom pour les balise Papyrus
377
$GLOBALS['_GEN_commun']['balise_prefixe'] = 'PAPYRUS_';
377
$GLOBALS['_GEN_commun']['balise_prefixe'] = 'PAPYRUS_';
Line 378... Line 378...
378
 
378
 
379
// +------------------------------------------------------------------------------------------------------+
379
// +------------------------------------------------------------------------------------------------------+
Line 380... Line 380...
380
// Gestion des appels des fonctions d'applettes
380
// Gestion des appels des fonctions d'applettes de papyrus
381
 
381
 
382
for ($i = 0; $i < count($GLOBALS['_GEN_commun']['info_applette']); $i++) {
382
for ($i = 0; $i < count($GLOBALS['_GEN_commun']['info_applette']); $i++) {
383
    // Recherche du nombre de balise d'une applette donnée présentes dans le squelette
383
    // Recherche du nombre de balise d'une applette donnée présentes dans le squelette
Line 414... Line 414...
414
                $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
414
                $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
415
                $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
415
                $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
416
    }
416
    }
417
}
417
}
Line -... Line 418...
-
 
418
 
-
 
419
 
-
 
420
 
-
 
421
// +------------------------------------------------------------------------------------------------------+
-
 
422
// Gestion des appels des fonctions d'applettes des applications clientes de papyrus
-
 
423
 
-
 
424
$GLOBALS['_GEN_commun']['balise_prefixe_client'] = 'CLIENT_';
-
 
425
 
-
 
426
for ($i = 0; $i < count($GLOBALS['_GEN_commun']['info_applette']); $i++) {
-
 
427
    // Recherche du nombre de balise d'une applette donnée présentes dans le squelette
-
 
428
    $GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] = preg_match_all(
-
 
429
        '/<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe_client'].'('.$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_balise.') -->/',
-
 
430
        $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'],
-
 
431
        $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'],
-
 
432
        PREG_SET_ORDER);
-
 
433
    // Si on trouve au moins une balise, on lance la boucle pour les remplacer
-
 
434
    for ($j = 0; $j <= ($GLOBALS['_PAPYRUS_']['applette']['nbr_balise'] - 1); $j++) {
-
 
435
        // Nous vérifions que le nom de la fonction principale de l'applette existe.
-
 
436
        if (function_exists($GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction)) {
-
 
437
            // Nous comptabilisons le nombre d'utilisation des applettes dans un squelette:
-
 
438
            if (!isset($GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction])) {
-
 
439
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction] = 1;
-
 
440
            } else {
-
 
441
                $GLOBALS['_PAPYRUS_']['applette']['comptage'][$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction]++;
-
 
442
            }
-
 
443
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
-
 
444
                call_user_func( $GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction, 
-
 
445
                                    $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j], 
-
 
446
                                    $GLOBALS['_GEN_commun']);
-
 
447
        } else {
-
 
448
            $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'] = 
-
 
449
                '<!-- '."\n".
-
 
450
                $GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' : '.
-
 
451
                'fonction de l\'applette "'.$GLOBALS['_GEN_commun']['info_applette'][$i]->gap_nom.'" introuvable! '."\n".
-
 
452
                'Fonction : '.$GLOBALS['_GEN_commun']['info_applette'][$i]->applette_fonction."\n".
-
 
453
                ' -->';
-
 
454
        }
-
 
455
        // Remplacement des balises d'applette de Génésia dans le squelette
-
 
456
        $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'] = 
-
 
457
            str_replace(   '<!-- '.$GLOBALS['_GEN_commun']['balise_prefixe_client'].$GLOBALS['_PAPYRUS_']['applette']['applet_arguments'][$j][1].' -->', 
-
 
458
                $GLOBALS['_PAPYRUS_']['applette']['contenu_applette'], 
-
 
459
                $GLOBALS['_PAPYRUS_']['general']['contenu_squelette']);
-
 
460
    }
-
 
461
}
418
 
462
 
419
// +------------------------------------------------------------------------------------------------------+
463
// +------------------------------------------------------------------------------------------------------+
Line 420... Line 464...
420
// Continuation recherche d'info provenant de Papyrus pour la complétion du squelette
464
// Continuation recherche d'info provenant de Papyrus pour la complétion du squelette
421
 
465
 
Line 455... Line 499...
455
$GLOBALS['_GEN_commun']['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
499
$GLOBALS['_GEN_commun']['sortie'] = $GLOBALS['_PAPYRUS_']['general']['contenu_squelette'];
Line 456... Line 500...
456
 
500
 
457
/* +--Fin du code ---------------------------------------------------------------------------------------+
501
/* +--Fin du code ---------------------------------------------------------------------------------------+
458
*
502
*
-
 
503
* $Log: not supported by cvs2svn $
-
 
504
* Revision 1.18  2005/09/22 14:02:49  ddelon
-
 
505
* nettoyage annuaire et php5
459
* $Log: not supported by cvs2svn $
506
*
460
* Revision 1.17  2005/09/20 17:01:22  ddelon
507
* Revision 1.17  2005/09/20 17:01:22  ddelon
461
* php5 et bugs divers
508
* php5 et bugs divers
462
*
509
*
463
* Revision 1.16  2005/07/12 09:13:15  alexandre_tb
510
* Revision 1.16  2005/07/12 09:13:15  alexandre_tb