Subversion Repositories Applications.papyrus

Rev

Rev 2080 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2080 Rev 2089
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_site.fonct.php,v 1.8 2007-04-04 15:15:22 neiluj Exp $
22
// CVS : $Id: pap_site.fonct.php,v 1.8 2007-04-04 15:15:22 neiluj Exp $
23
/**
23
/**
24
* Bibliothèque de fonctions concernant les sites.
24
* Bibliothèque de fonctions concernant les sites.
25
*
25
*
26
* Bibliothèque de fonctions permettant de manipuler les tables :
26
* Bibliothèque de fonctions permettant de manipuler les tables :
27
* - gen_site,
27
* - gen_site,
28
* - gen_site_auth,
28
* - gen_site_auth,
29
* - gen_site_auth_bdd,
29
* - gen_site_auth_bdd,
30
* - gen_site_auth_ldap,
30
* - gen_site_auth_ldap,
31
* - gen_site_categorie,
31
* - gen_site_categorie,
32
* - gen_site_categorie_valeur.
32
* - gen_site_categorie_valeur.
33
*
33
*
34
*@package Papyrus
34
*@package Papyrus
35
*@subpackage Fonctions
35
*@subpackage Fonctions
36
//Auteur original :
36
//Auteur original :
37
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
37
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
38
//Autres auteurs :
38
//Autres auteurs :
39
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
39
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
40
*@copyright     Tela-Botanica 2000-2004
40
*@copyright     Tela-Botanica 2000-2004
41
*@version       $Revision: 1.8 $ $Date: 2007-04-04 15:15:22 $
41
*@version       $Revision: 1.8 $ $Date: 2007-04-04 15:15:22 $
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
43
*/
43
*/
44
 
44
 
45
// +------------------------------------------------------------------------------------------------------+
45
// +------------------------------------------------------------------------------------------------------+
46
// |                                           LISTE de FONCTIONS                                         |
46
// |                                           LISTE de FONCTIONS                                         |
47
// +------------------------------------------------------------------------------------------------------+
47
// +------------------------------------------------------------------------------------------------------+
48
 
48
 
49
/** Fonction GEN_lireInfoSites() - Renvoie un tableau contenant les lignes de la table gen_site
49
/** Fonction GEN_lireInfoSites() - Renvoie un tableau contenant les lignes de la table gen_site
50
*
50
*
51
* Retourne un tableau contenant les lignes de la table gen_site pour les sites "classiques".
51
* Retourne un tableau contenant les lignes de la table gen_site pour les sites "classiques".
52
*
52
*
53
* @param  mixed  une instance de la classse Pear DB.
53
* @param  mixed  une instance de la classse Pear DB.
54
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du menu.
54
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du menu.
55
* @param  integer le type de site (par défaut 102 = site "principal")
55
* @param  integer le type de site (par défaut 102 = site "principal")
56
* @return array  un tableau contenant les lignes de la table gen_site pour les sites "principaux".
56
* @return array  un tableau contenant les lignes de la table gen_site pour les sites "principaux".
57
*/
57
*/
58
function GEN_lireInfoSites(&$bdd, $mode = DB_FETCHMODE_OBJECT, $type_site = 102)
58
function GEN_lireInfoSites(&$bdd, $mode = DB_FETCHMODE_OBJECT, $type_site = 102)
59
{
59
{
60
    $aso_sites = array();
60
    $aso_sites = array();
61
    
61
    
62
    $requete =  'SELECT gen_site.* '.
62
    $requete =  'SELECT gen_site.* '.
63
                'FROM gen_site, gen_site_relation '.
63
                'FROM gen_site, gen_site_relation '.
64
                'WHERE gs_id_site = gsr_id_site_01 '.
64
                'WHERE gs_id_site = gsr_id_site_01 '.
65
                'AND gsr_id_site_01 = gsr_id_site_02 '.
65
                'AND gsr_id_site_01 = gsr_id_site_02 '.
66
                'AND gsr_id_valeur = '.$type_site.' '; // 102 = par défaut site "principal"
66
                'AND gsr_id_valeur = '.$type_site.' '; // 102 = par défaut site "principal"
67
    
67
    
68
    $resultat = $bdd->query($requete);
68
    $resultat = $bdd->query($requete);
69
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
69
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
70
    
70
    
71
    if ($resultat->numRows() > 0) {
71
    if ($resultat->numRows() > 0) {
72
        while ($ligne = $resultat->fetchRow($mode)) { 
72
        while ($ligne = $resultat->fetchRow($mode)) { 
73
            array_push($aso_sites, $ligne);
73
            array_push($aso_sites, $ligne);
74
        }
74
        }
75
    }
75
    }
76
    $resultat->free();
76
    $resultat->free();
77
    
77
    
78
    return $aso_sites;
78
    return $aso_sites;
79
}
79
}
80
 
80
 
81
/** Fonction GEN_lireInfoSitePrincipal() - Renvoie un objet contenant une ligne de la table gen_site
81
/** Fonction GEN_lireInfoSitePrincipal() - Renvoie un objet contenant une ligne de la table gen_site
82
*
82
*
83
* Retourne la ligne de la table gen_site concernant le site principal ayant pour identifiant la valeur
83
* Retourne la ligne de la table gen_site concernant le site principal ayant pour identifiant la valeur
84
* passée en paramètre.
84
* passée en paramètre.
85
*
85
*
86
* @param  mixed   une instance de la classse Pear DB.
86
* @param  mixed   une instance de la classse Pear DB.
87
* @param  string  l'identifiant du site.
87
* @param  string  l'identifiant du site.
88
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du menu.
88
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du menu.
89
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
89
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
90
*/
90
*/
91
function GEN_lireInfoSitePrincipal(&$objet_pear_db, $site_id, $mode = DB_FETCHMODE_OBJECT)
91
function GEN_lireInfoSitePrincipal(&$objet_pear_db, $site_id, $mode = DB_FETCHMODE_OBJECT)
92
{
92
{
93
    
93
    
94
    $requete =  'SELECT * '.
94
    $requete =  'SELECT * '.
95
                'FROM gen_site, gen_site_relation '.
95
                'FROM gen_site, gen_site_relation '.
96
                'WHERE gs_id_site = '.$site_id.' '.
96
                'WHERE gs_id_site = '.$site_id.' '.
97
                'AND gs_id_site = gsr_id_site_01 '.
97
                'AND gs_id_site = gsr_id_site_01 '.
98
                'AND gsr_id_site_01 = gsr_id_site_02 '.
98
                'AND gsr_id_site_01 = gsr_id_site_02 '.
99
                'AND gsr_id_valeur = 102'; // 102 = site "principal"
99
                'AND gsr_id_valeur = 102'; // 102 = site "principal"
100
    
100
    
101
    $resultat = $objet_pear_db->query($requete);
101
    $resultat = $objet_pear_db->query($requete);
102
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
102
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
103
    
103
    
104
    if ($resultat->numRows() != 1) {
104
    if ($resultat->numRows() != 1) {
105
        // Impossible de récupérer des informations sur le site principal ayant pour code alpha $code_alpha
105
        // Impossible de récupérer des informations sur le site principal ayant pour code alpha $code_alpha
106
        return false;
106
        return false;
107
    }
107
    }
108
    
108
    
109
    $info_site_principal = $resultat->fetchRow($mode);
109
    $info_site_principal = $resultat->fetchRow($mode);
110
    $resultat->free();
110
    $resultat->free();
111
    
111
    
112
    return $info_site_principal;
112
    return $info_site_principal;
113
}
113
}
114
 
114
 
115
/** Fonction GEN_lireInfoSitePrincipalCodeAlpha() - Renvoie un objet contenant une ligne de la table gen_site
115
/** Fonction GEN_lireInfoSitePrincipalCodeAlpha() - Renvoie un objet contenant une ligne de la table gen_site
116
*
116
*
117
* Retourne la ligne de la table gen_site concernant le site principal ayant pour code alphanumérique la valeur
117
* Retourne la ligne de la table gen_site concernant le site principal ayant pour code alphanumérique la valeur
118
* passée en paramètre.
118
* passée en paramètre.
119
* Ancien nom : getProjectInfos()
119
* Ancien nom : getProjectInfos()
120
*
120
*
121
* @param  mixed   une instance de la classse Pear DB.
121
* @param  mixed   une instance de la classse Pear DB.
122
* @param  string  le code alphanumérique du site.
122
* @param  string  le code alphanumérique du site.
123
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du site.
123
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du site.
124
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
124
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
125
*/
125
*/
126
function GEN_lireInfoSitePrincipalCodeAlpha(&$objet_pear_db, $code_alpha, $mode = DB_FETCHMODE_OBJECT)
126
function GEN_lireInfoSitePrincipalCodeAlpha(&$objet_pear_db, $code_alpha, $mode = DB_FETCHMODE_OBJECT)
127
{
127
{
128
    
128
    
129
    $requete =  'SELECT * '.
129
    $requete =  'SELECT * '.
130
                'FROM gen_site, gen_site_relation '.
130
                'FROM gen_site, gen_site_relation '.
131
                'WHERE gs_code_alpha = "'.$code_alpha.'" '.
131
                'WHERE gs_code_alpha = "'.$code_alpha.'" '.
132
                'AND gs_id_site = gsr_id_site_01 '.
132
                'AND gs_id_site = gsr_id_site_01 '.
133
                'AND gsr_id_site_01 = gsr_id_site_02 '.
133
                'AND gsr_id_site_01 = gsr_id_site_02 '.
134
                'AND gsr_id_valeur = 102 '. // 102 = site "principal"
134
                'AND gsr_id_valeur = 102 '. // 102 = site "principal"
135
    			'AND gs_id_site NOT IN ('.// Nous tenons pas compte des sites traduits!
135
    			'AND gs_id_site NOT IN ('.// Nous tenons pas compte des sites traduits!
136
    			'	SELECT gsr_id_site_02 '.
136
    			'	SELECT gsr_id_site_02 '.
137
    			'	FROM gen_site_relation '.
137
    			'	FROM gen_site_relation '.
138
    			'	WHERE gsr_id_site_01 != gsr_id_site_02 '.
138
    			'	WHERE gsr_id_site_01 != gsr_id_site_02 '.
139
    			'		AND gsr_id_valeur = 1 )';
139
    			'		AND gsr_id_valeur = 1 )';
140
    
140
    
141
    $resultat = $objet_pear_db->query($requete);
141
    $resultat = $objet_pear_db->query($requete);
142
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
142
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
143
    
143
    
144
    if ($resultat->numRows() != 1) {
144
    if ($resultat->numRows() != 1) {
145
        // Impossible de récupérer des informations sur le site principal ayant pour code alpha $code_alpha
145
        // Impossible de récupérer des informations sur le site principal ayant pour code alpha $code_alpha
146
        return false;
146
        return false;
147
    }
147
    }
148
    
148
    
149
    $info_site_principal = $resultat->fetchRow($mode);
149
    $info_site_principal = $resultat->fetchRow($mode);
150
    $resultat->free();
150
    $resultat->free();
151
    
151
    
152
    return $info_site_principal;
152
    return $info_site_principal;
153
}
153
}
154
 
154
 
155
/** Fonction GEN_lireInfoSiteI18nCodeAlpha() - Renvoie un objet contenant une ligne de la table gen_site
155
/** Fonction GEN_lireInfoSiteI18nCodeAlpha() - Renvoie un objet contenant une ligne de la table gen_site
156
*
156
*
157
* Retourne la ligne de la table gen_site concernant un site ayant pour code alphanumérique et identifiant
157
* Retourne la ligne de la table gen_site concernant un site ayant pour code alphanumérique et identifiant
158
* i18n les valeurs passées en paramètres.
158
* i18n les valeurs passées en paramètres.
159
* Ancien nom :getSiteI18nInfos():
159
* Ancien nom :getSiteI18nInfos():
160
*
160
*
161
* @param  mixed   une instance de la classse Pear DB.
161
* @param  mixed   une instance de la classse Pear DB.
162
* @param  string  le code alphanumérique du site recherché.
162
* @param  string  le code alphanumérique du site recherché.
163
* @param  string  l'identifiant i18n possédé par le site recherché.
163
* @param  string  l'identifiant i18n possédé par le site recherché.
164
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du site.
164
* @param  string  le mode dans Pear DB dans lequel on veut recevoir les infos du site.
165
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
165
* @return  mixed  un objet résultat de Pear DB contenant une ligne de la table gen_site, ou false en cas d'erreur.
166
*/
166
*/
167
function GEN_lireInfoSiteI18nCodeAlpha(&$objet_pear_db, $code_alpha, $i18n, $mode = DB_FETCHMODE_OBJECT)
167
function GEN_lireInfoSiteI18nCodeAlpha(&$objet_pear_db, $code_alpha, $i18n, $mode = DB_FETCHMODE_OBJECT)
168
{
168
{
169
    $requete =  'SELECT * '.
169
    $requete =  'SELECT * '.
170
                'FROM gen_site '.
170
                'FROM gen_site '.
171
                'WHERE gs_code_alpha = "'.$code_alpha.'" '.
171
                'WHERE gs_code_alpha = "'.$code_alpha.'" '.
172
                'AND gs_ce_i18n = "'.$i18n.'" ';
172
                'AND gs_ce_i18n = "'.$i18n.'" ';
173
    
173
    
174
    $resultat = $objet_pear_db->query($requete);
174
    $resultat = $objet_pear_db->query($requete);
175
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
175
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
176
    
176
    
177
    if ($resultat->numRows() != 1) {
177
    if ($resultat->numRows() != 1) {
178
        return false;
178
        return false;
179
    }
179
    }
180
    
180
    
181
    $info_site = $resultat->fetchRow($mode);
181
    $info_site = $resultat->fetchRow($mode);
182
    $resultat->free();
182
    $resultat->free();
183
    
183
    
184
    return $info_site;
184
    return $info_site;
185
}
185
}
186
 
186
 
187
/** Fonction GEN_retournerTableauTypeSiteExterne() - Renvoie un tableau des types site externe
187
/** Fonction GEN_retournerTableauTypeSiteExterne() - Renvoie un tableau des types site externe
188
*
188
*
189
* Retourne un tableau de tableaux associatifs contenant les valeurs des types des sites externes.
189
* Retourne un tableau de tableaux associatifs contenant les valeurs des types des sites externes.
190
*
190
*
191
* @param  mixed   une instance de la classse Pear DB.
191
* @param  mixed   une instance de la classse Pear DB.
192
* @return  mixed  un tableau de tableaux associatifs contenant les valeurs des types des sites externes
192
* @return  mixed  un tableau de tableaux associatifs contenant les valeurs des types des sites externes
193
*/
193
*/
194
function GEN_retournerTableauTypeSiteExterne(&$objet_pear_db)
194
function GEN_retournerTableauTypeSiteExterne(&$objet_pear_db)
195
{
195
{
196
    $requete =  'SELECT * '.
196
    $requete =  'SELECT * '.
197
                'FROM gen_site_categorie_valeur '.
197
                'FROM gen_site_categorie_valeur '.
198
                'WHERE gscv_id_categorie = 3 ';// 3 = type de site externe
198
                'WHERE gscv_id_categorie = 3 ';// 3 = type de site externe
199
    
199
    
200
    $resultat = $objet_pear_db->query($requete);
200
    $resultat = $objet_pear_db->query($requete);
201
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
201
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
202
    
202
    
203
    if ($resultat->numRows() == 0) {
203
    if ($resultat->numRows() == 0) {
204
        return false;
204
        return false;
205
    }
205
    }
206
    $tab_type = array();
206
    $tab_type = array();
207
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
207
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
208
        $aso_type_site_externe = array('id' => $ligne->gscv_id_valeur, 'intitule' => $ligne->gscv_intitule_valeur);
208
        $aso_type_site_externe = array('id' => $ligne->gscv_id_valeur, 'intitule' => $ligne->gscv_intitule_valeur);
209
        array_push($tab_type, $aso_type_site_externe);
209
        array_push($tab_type, $aso_type_site_externe);
210
    }
210
    }
211
    $resultat->free();
211
    $resultat->free();
212
    
212
    
213
    return $tab_type;
213
    return $tab_type;
214
}
214
}
215
 
215
 
216
/** Fonction GEN_retournerSiteCodeNum() - Renvoie le code num d'un site en fonction du code Alphanumérique
216
/** Fonction GEN_retournerSiteCodeNum() - Renvoie le code num d'un site en fonction du code Alphanumérique
217
*
217
*
218
* Retourne le code numérique d'un site en fonction du code alphanumérique.
218
* Retourne le code numérique d'un site en fonction du code alphanumérique.
219
*
219
*
220
* @param  mixed  une instance de la classe Pear DB.
220
* @param  mixed  une instance de la classe Pear DB.
221
* @param  string le code alphanumérique d'un site.
221
* @param  string le code alphanumérique d'un site.
222
* @param  string le code de la langue pour l'i18n (fr, en, ...).
222
* @param  string le code de la langue pour l'i18n (fr, en, ...).
223
* @return mixed le code numérique du site sinon false.
223
* @return mixed le code numérique du site sinon false.
224
*/
224
*/
225
function GEN_retournerSiteCodeNum(&$db, $code_alphanum, $i18n = null)
225
function GEN_retournerSiteCodeNum($db, $code_alphanum, $i18n = null)
226
{
226
{
227
    //----------------------------------------------------------------------------
227
    //----------------------------------------------------------------------------
228
    // Recherche des informations sur le menu
228
    // Recherche des informations sur le menu
229
    $requete =  'SELECT gs_code_num '.
229
    $requete =  'SELECT gs_code_num '.
230
                'FROM gen_site '.
230
                'FROM gen_site '.
231
                'WHERE gs_code_alpha = "'.$code_alphanum.'" '.
231
                'WHERE gs_code_alpha = "'.$code_alphanum.'" '.
232
    			(is_null($i18n) ? '' : 'AND gs_ce_i18n = "'.$i18n.'" ');
232
    			(is_null($i18n) ? '' : 'AND gs_ce_i18n = "'.$i18n.'" ');
233
 
233
 
234
    $resultat = $db->query($requete);
234
    $resultat = $db->query($requete);
235
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
235
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
236
 
236
 
237
    if ($resultat->numRows() != 1) {
237
    if ($resultat->numRows() != 1) {
238
        return false;
238
        return false;
239
    }
239
    }
240
 
240
 
241
    //----------------------------------------------------------------------------
241
    //----------------------------------------------------------------------------
242
    // Récupération des infos
242
    // Récupération des infos
243
    $info_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
243
    $info_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
244
    $code_num = $info_site->gs_code_num;
244
    $code_num = $info_site->gs_code_num;
245
    $resultat->free();
245
    $resultat->free();
246
 
246
 
247
    return $code_num;
247
    return $code_num;
248
}
248
}
249
 
249
 
250
/** Fonction GEN_retournerSiteCodeAlpha() - Renvoie le code alphanumérique d'un site en fonction du code numérique
250
/** Fonction GEN_retournerSiteCodeAlpha() - Renvoie le code alphanumérique d'un site en fonction du code numérique
251
*
251
*
252
* Retourne le code alphanumérique d'un site en fonction du code numérique.
252
* Retourne le code alphanumérique d'un site en fonction du code numérique.
253
*
253
*
254
* @param  mixed  une instance de la classse Pear DB.
254
* @param  mixed  une instance de la classse Pear DB.
255
* @param  string le code numérique d'un site.
255
* @param  string le code numérique d'un site.
256
* @param  string le code de la langue pour l'i18n (fr, en, ...).
256
* @param  string le code de la langue pour l'i18n (fr, en, ...).
257
* @return mixed le code alphanumérique du site sinon false.
257
* @return mixed le code alphanumérique du site sinon false.
258
*/
258
*/
259
function GEN_retournerSiteCodeAlpha(&$db, $code_num, $i18n = null)
259
function GEN_retournerSiteCodeAlpha($db, $code_num, $i18n = null)
260
{
260
{
261
 
261
 
262
	//----------------------------------------------------------------------------
262
	//----------------------------------------------------------------------------
263
    // Recherche des informations sur le menu
263
    // Recherche des informations sur le menu
264
    $requete =  'SELECT gs_code_alpha '.
264
    $requete =  'SELECT gs_code_alpha '.
265
                'FROM gen_site '.
265
                'FROM gen_site '.
266
                'WHERE gs_code_num = '.$code_num.' '.
266
                'WHERE gs_code_num = '.$code_num.' '.
267
    			(is_null($i18n) ? '' : 'AND gs_ce_i18n = "'.$i18n.'" ');
267
    			(is_null($i18n) ? '' : 'AND gs_ce_i18n = "'.$i18n.'" ');
268
 
268
 
269
    $resultat = $db->query($requete);
269
    $resultat = $db->query($requete);
270
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
270
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
271
 
271
 
272
    if ($resultat->numRows() != 1) {
272
    if ($resultat->numRows() != 1) {
273
        return false;
273
        return false;
274
    }
274
    }
275
 
275
 
276
    //----------------------------------------------------------------------------
276
    //----------------------------------------------------------------------------
277
    // Récupération des infos
277
    // Récupération des infos
278
    $info_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
278
    $info_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
279
    $code_alphanum = $info_site->gs_code_alpha;
279
    $code_alphanum = $info_site->gs_code_alpha;
280
    $resultat->free();
280
    $resultat->free();
281
 
281
 
282
    return $code_alphanum;
282
    return $code_alphanum;
283
}
283
}
284
 
284
 
285
/* +--Fin du code ----------------------------------------------------------------------------------------+
285
/* +--Fin du code ----------------------------------------------------------------------------------------+
286
*
286
*
287
* $Log: not supported by cvs2svn $
287
* $Log: not supported by cvs2svn $
288
* Revision 1.7  2006/12/08 20:15:21  jp_milcent
288
* Revision 1.7  2006/12/08 20:15:21  jp_milcent
289
* Correction bogue requete sql dans fonction GEN_lireInfoSiteI18nCodeAlpha().
289
* Correction bogue requete sql dans fonction GEN_lireInfoSiteI18nCodeAlpha().
290
*
290
*
291
* Revision 1.6  2006/12/08 18:48:43  jp_milcent
291
* Revision 1.6  2006/12/08 18:48:43  jp_milcent
292
* Amélioration du mode de reception des données pour GEN_lireInfoSiteI18nCodeAlpha().
292
* Amélioration du mode de reception des données pour GEN_lireInfoSiteI18nCodeAlpha().
293
*
293
*
294
* Revision 1.5  2006/10/11 18:04:11  jp_milcent
294
* Revision 1.5  2006/10/11 18:04:11  jp_milcent
295
* Gestion avancée de la réecriture d'URL.
295
* Gestion avancée de la réecriture d'URL.
296
*
296
*
297
* Revision 1.4  2005/04/19 17:21:19  jpm
297
* Revision 1.4  2005/04/19 17:21:19  jpm
298
* Utilisation des références d'objets.
298
* Utilisation des références d'objets.
299
*
299
*
300
* Revision 1.3  2004/12/03 19:22:30  jpm
300
* Revision 1.3  2004/12/03 19:22:30  jpm
301
* Ajout d'une fonction retournant les types de sites externes gérés par Papyrus.
301
* Ajout d'une fonction retournant les types de sites externes gérés par Papyrus.
302
*
302
*
303
* Revision 1.2  2004/11/04 12:25:35  jpm
303
* Revision 1.2  2004/11/04 12:25:35  jpm
304
* Ajout d'une fonction permettant de récupérer les infos sur un site à partir de son id.
304
* Ajout d'une fonction permettant de récupérer les infos sur un site à partir de son id.
305
*
305
*
306
* Revision 1.1  2004/06/15 15:13:37  jpm
306
* Revision 1.1  2004/06/15 15:13:37  jpm
307
* Changement de nom et d'arborescence de Genesia en Papyrus.
307
* Changement de nom et d'arborescence de Genesia en Papyrus.
308
*
308
*
309
* Revision 1.1  2004/05/03 16:26:07  jpm
309
* Revision 1.1  2004/05/03 16:26:07  jpm
310
* Ajout de la bibliothèque de fonctions permettant de manipuler les informations issues des tables "gen_site_..." de Papyrus.
310
* Ajout de la bibliothèque de fonctions permettant de manipuler les informations issues des tables "gen_site_..." de Papyrus.
311
*
311
*
312
*
312
*
313
* +-- Fin du code ----------------------------------------------------------------------------------------+
313
* +-- Fin du code ----------------------------------------------------------------------------------------+
314
*/
314
*/
315
?>
315
?>