Subversion Repositories Applications.papyrus

Rev

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

Rev 656 Rev 693
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_envoi.inc.php,v 1.6 2005-12-09 16:01:53 ddelon Exp $
22
// CVS : $Id: pap_envoi.inc.php,v 1.7 2006-01-12 16:37:01 ddelon Exp $
23
/**
23
/**
24
* Gestion de l'envoie des pages à afficher.
24
* Gestion de l'envoie des pages à afficher.
25
*
25
*
26
* Ce fichier envoi les données en les compressant si possible.
26
* Ce fichier envoi les données en les compressant si possible.
27
*
27
*
28
*@package Papyrus
28
*@package Papyrus
29
//Auteur original :
29
//Auteur original :
30
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
30
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
31
//Autres auteurs :
31
//Autres auteurs :
32
*@author        Laurent COUDOUNEAU <lc@gsite.org>
32
*@author        Laurent COUDOUNEAU <lc@gsite.org>
33
*@copyright     Tela-Botanica 2000-2004
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.6 $ $Date: 2005-12-09 16:01:53 $
34
*@version       $Revision: 1.7 $ $Date: 2006-01-12 16:37:01 $
35
// +------------------------------------------------------------------------------------------------------+
35
// +------------------------------------------------------------------------------------------------------+
36
*/
36
*/
37
 
37
 
38
// +------------------------------------------------------------------------------------------------------+
38
// +------------------------------------------------------------------------------------------------------+
39
// |                                            ENTÊTE du PROGRAMME                                       |
39
// |                                            ENTÊTE du PROGRAMME                                       |
40
// +------------------------------------------------------------------------------------------------------+
40
// +------------------------------------------------------------------------------------------------------+
41
 
41
 
-
 
42
function pap_compress_output($output)
42
/** <BR> Inclusion de la bibliothèque de fonctions de compression des données à envoyer.*/
43
{
-
 
44
            return gzencode($output);
43
include_once GEN_CHEMIN_BIBLIO.'pap_compression.fonct.php';
45
}
44
 
46
 
-
 
47
// Check if the browser supports gzip encoding, HTTP_ACCEPT_ENCODING
45
// +------------------------------------------------------------------------------------------------------+
48
if (strstr ($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip') && function_exists('gzencode') )
-
 
49
{
-
 
50
            // Start output buffering, and register compress_output() (see
46
// |                                            CORPS du PROGRAMME                                        |
-
 
47
// +------------------------------------------------------------------------------------------------------+
-
 
48
 
-
 
49
$page_gzippe = GEN_compresserDonneesZLIB($_GEN_commun['sortie']);
-
 
50
// Nous mettons à jour le cache
-
 
51
if (!empty($_GEN_commun['info_application']) && $_GEN_commun['info_application']->cache) {
-
 
52
    // Mise en cache de la page demandée
-
 
53
    if ( ($page_gzippe != false) ) {
51
            // below)
54
        $contenu_en_cache = (empty($page_gzippe)) ? $_GEN_commun['sortie'] : $page_gzippe;
-
 
55
        $requete =  'INSERT INTO gen_page_cache '.
-
 
56
                    'SET    gpc_id_md5_url = "'.GEN_donnerMD5UriPostSession().'", '.
-
 
57
                    '       gpc_ce_site = '.$_GEN_commun['site_info']->gsi_id_site.', '.
52
            ob_start ("pap_compress_output");
58
                    '       gpc_ce_i18n = "'.$_GEN_commun['site_info']->gsi_id_i18n.'", '.
-
 
59
                    '       gpc_corps = "'.mysql_escape_string($contenu_en_cache).'", '.
-
 
60
                    '       gpc_date_heure = NOW(), '.
-
 
61
                    '       gpc_taille = '.strlen($_GEN_commun['sortie']).', '.
-
 
62
                    '       gpc_gz_taille = '.strlen($contenu_en_cache);
-
 
63
 
-
 
64
        $resultat = $db->query($requete);
-
 
65
        (DB::isError($resultat))
-
 
66
            ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
-
 
67
            : '';
-
 
68
    }
-
 
69
}
-
 
70
// Si les données sont compréssées, nous essayons de réaliser un envoi au client.
-
 
71
if (!empty($page_gzippe)) {
-
 
72
    if (GEN_envoyerDonneesCompressees($page_gzippe)) {
53
 
73
        exit();
-
 
74
    }
-
 
75
}
54
                    // Tell the browser the content is compressed with gzip
76
 
55
                    header ("Content-Encoding: gzip");
77
// La compression ne fonctionne pas ou les données ne sont pas compressées,
56
}
78
// nous envoyons directement la page.
57
 
79
echo($_GEN_commun['sortie']);
58
echo($_GEN_commun['sortie']);
80
 
59
 
81
/* +--Fin du code ----------------------------------------------------------------------------------------+
60
/* +--Fin du code ----------------------------------------------------------------------------------------+
82
*
61
*
83
* $Log: not supported by cvs2svn $
62
* $Log: not supported by cvs2svn $
-
 
63
* Revision 1.6  2005/12/09 16:01:53  ddelon
-
 
64
* retablissement compression
-
 
65
*
84
* Revision 1.5  2005/11/25 14:33:08  ddelon
66
* Revision 1.5  2005/11/25 14:33:08  ddelon
85
* desactivation compression
67
* desactivation compression
86
*
68
*
87
* Revision 1.4  2005/02/28 11:20:42  jpm
69
* Revision 1.4  2005/02/28 11:20:42  jpm
88
* Modification des auteurs.
70
* Modification des auteurs.
89
*
71
*
90
* Revision 1.3  2004/10/15 18:29:19  jpm
72
* Revision 1.3  2004/10/15 18:29:19  jpm
91
* Modif pour gérer l'appli installateur de Papyrus.
73
* Modif pour gérer l'appli installateur de Papyrus.
92
*
74
*
93
* Revision 1.2  2004/06/16 15:07:56  jpm
75
* Revision 1.2  2004/06/16 15:07:56  jpm
94
* Correction d'un chemin et nom de fichier.
76
* Correction d'un chemin et nom de fichier.
95
*
77
*
96
* Revision 1.1  2004/06/16 08:11:37  jpm
78
* Revision 1.1  2004/06/16 08:11:37  jpm
97
* Changement de nom de Génésia en Papyrus.
79
* Changement de nom de Génésia en Papyrus.
98
* Changement de l'arborescence.
80
* Changement de l'arborescence.
99
*
81
*
100
* Revision 1.3  2004/04/28 12:04:31  jpm
82
* Revision 1.3  2004/04/28 12:04:31  jpm
101
* Changement du modèle de la base de données.
83
* Changement du modèle de la base de données.
102
*
84
*
103
* Revision 1.2  2004/04/22 08:31:43  jpm
85
* Revision 1.2  2004/04/22 08:31:43  jpm
104
* Transformation de $GS_GLOBAL en $_GEN_commun.
86
* Transformation de $GS_GLOBAL en $_GEN_commun.
105
*
87
*
106
* Revision 1.1  2004/04/09 16:19:23  jpm
88
* Revision 1.1  2004/04/09 16:19:23  jpm
107
* Ajout du fichier indépendant d'envoi avec gestion des tables i18n.
89
* Ajout du fichier indépendant d'envoi avec gestion des tables i18n.
108
*
90
*
109
*
91
*
110
* +-- Fin du code ----------------------------------------------------------------------------------------+
92
* +-- Fin du code ----------------------------------------------------------------------------------------+
111
*/
93
*/
112
?>
94
?>