Subversion Repositories Applications.papyrus

Rev

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

Rev 1665 Rev 2076
Line 60... Line 60...
60
require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php';
60
require_once GEN_CHEMIN_BIBLIO.'pap_menu.fonct.php';
Line 61... Line 61...
61
 
61
 
62
// +------------------------------------------------------------------------------------------------------+
62
// +------------------------------------------------------------------------------------------------------+
63
// |                                            CORPS du PROGRAMME                                        |
63
// |                                            CORPS du PROGRAMME                                        |
-
 
64
// +------------------------------------------------------------------------------------------------------+
-
 
65
 
-
 
66
// Recherche de la présence de la valeur d'i18n dans l'url
-
 
67
if ( (isset($_GET[GEN_URL_CLE_I18N])) && (!empty($_GET[GEN_URL_CLE_I18N])) ) {
-
 
68
    $_GEN_commun['i18n'] = $_GET[GEN_URL_CLE_I18N];
-
 
69
} else {
-
 
70
  $_GEN_commun['i18n'] = GEN_I18N_ID_DEFAUT;
-
 
71
}
64
// +------------------------------------------------------------------------------------------------------+
72
 
65
// +------------------------------------------------------------------------------------------------------+
73
// +------------------------------------------------------------------------------------------------------+
66
// Gestion de la réecriture d'url et des url erreur 404
74
// Gestion de la réecriture d'url et des url erreur 404
67
if ((defined('PAP_URL_REECRITURE') AND PAP_URL_REECRITURE == '1' && (! isset($_GET[GEN_URL_CLE_SITE]) || empty($_GET[GEN_URL_CLE_SITE])) && (! isset($_GET[GEN_URL_CLE_MENU]) || empty($_GET[GEN_URL_CLE_MENU]))) ) {
75
if ((defined('PAP_URL_REECRITURE') AND PAP_URL_REECRITURE == '1' && (! isset($_GET[GEN_URL_CLE_SITE]) || empty($_GET[GEN_URL_CLE_SITE])) && (! isset($_GET[GEN_URL_CLE_MENU]) || empty($_GET[GEN_URL_CLE_MENU]))) ) {
68
	$tab_type_reecriture = array('MENU', 'SITE');
76
	$tab_type_reecriture = array('MENU', 'SITE');
Line 85... Line 93...
85
			}
93
			}
86
			// Nous cherchons à savoir si le raccourci est entièrement numérique ou pas.
94
			// Nous cherchons à savoir si le raccourci est entièrement numérique ou pas.
87
			if (preg_match('/^[0-9]+$/', $raccourci)) {
95
			if (preg_match('/^[0-9]+$/', $raccourci)) {
88
				// Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
96
				// Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
89
				if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') {
97
				if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') {
-
 
98
					if ($reecriture == 'SITE') {
-
 
99
						$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeAlpha', $db, $raccourci, $_GEN_commun['i18n']);
-
 
100
					} else {
90
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeAlpha', $db, $raccourci);
101
						$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeAlpha', $db, $raccourci);
-
 
102
					}
91
				} else {
103
				} else {
92
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci;
104
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci;
93
				}
105
				}
94
			} else {
106
			} else {
95
				// Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
107
				// Nous vérifions si nous utilisons les codes numériques ou alphanumérique dans les url
96
				if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') {
108
				if (constant('GEN_URL_ID_TYPE_'.$reecriture) != 'int') {
97
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci;
109
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = $raccourci;
98
				} else {
110
				} else {
-
 
111
					if ($reecriture == 'SITE') {
-
 
112
						$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeNum', $db, $raccourci, $_GEN_commun['i18n']);
-
 
113
					} else {
99
					$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeNum', $db, $raccourci);
114
						$_GET[constant('GEN_URL_CLE_'.$reecriture)] = call_user_func('GEN_retourner'.$reecriture.'CodeNum', $db, $raccourci);
-
 
115
					}
100
				}
116
				}
101
			}
117
			}
102
		}
118
		}
103
	}
119
	}
104
}
120
}
Line 194... Line 210...
194
            ? $_GEN_commun['info_site']->gs_code_num
210
            ? $_GEN_commun['info_site']->gs_code_num
195
            : $_GEN_commun['info_site']->gs_code_alpha;
211
            : $_GEN_commun['info_site']->gs_code_alpha;
196
        $resultat->free();
212
        $resultat->free();
197
    }
213
    }
198
} else {
214
} else {
199
    // Récupération de la valeur identifiant le site depuis l'url
215
	// Récupération de la valeur identifiant le site depuis l'url
200
    $_GEN_commun['url_site'] = $_GET[GEN_URL_CLE_SITE];
216
    $_GEN_commun['url_site'] = $_GET[GEN_URL_CLE_SITE];
Line 201... Line 217...
201
    
217
    
-
 
218
    // Récupération des informations sur le site
202
    // Récupération des informations sur le site
219
    // ATTENTION : pour fonctionner le site par dans la langue par défaut doit avoir une relation : id_site id_site id_valeur=1
203
    $requete =  'SELECT * '.
220
    $requete =  'SELECT gen_site.*, gsr01.* '.
204
                'FROM gen_site, gen_site_relation '.
221
                'FROM gen_site, gen_site_relation AS gsr01, gen_site_relation AS gsr02 '.
205
                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
222
                'WHERE gsr01.gsr_id_site_01 = gsr01.gsr_id_site_02 '.
206
                'AND gsr_id_valeur IN ('.$site_liste_id.') '.
223
                'AND gsr01.gsr_id_valeur IN ('.$site_liste_id.') '.
-
 
224
                'AND gsr01.gsr_id_site_01 = gs_id_site '.
-
 
225
    			'AND gsr02.gsr_id_site_01 = gs_id_site '.
-
 
226
    			'AND gsr02.gsr_id_site_01 = gsr02.gsr_id_site_02 '.
207
                'AND gsr_id_site_01 = gs_id_site '.
227
    			'AND gsr02.gsr_id_valeur = 1 '.
208
                'AND ';
228
                'AND ';
209
    $requete .= (GEN_URL_ID_TYPE_SITE == 'int')
229
    $requete .= (GEN_URL_ID_TYPE_SITE == 'int')
210
        ? 'gs_code_num = '.$_GEN_commun['url_site']
230
        ? 'gs_code_num = "'.$_GEN_commun['url_site'].'" '
Line 211... Line 231...
211
        : 'gs_code_alpha = "'.$_GEN_commun['url_site'].'"';
231
        : 'gs_code_alpha = "'.$_GEN_commun['url_site'].'" ';
212
    
232
    
213
    $resultat = $db->query($requete);
233
    $resultat = $db->query($requete);
214
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
234
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
Line 230... Line 250...
230
    // Gestion de la redirection pour les sites "externes"
250
    // Gestion de la redirection pour les sites "externes"
231
    header('Location:'.$_GEN_commun['info_site']->gs_url);
251
    header('Location:'.$_GEN_commun['info_site']->gs_url);
232
    exit(0);
252
    exit(0);
233
}
253
}
Line 234... Line -...
234
 
-
 
235
// Recherche de la présence de la valeur d'i18n dans l'url
-
 
236
if ( (isset($_GET[GEN_URL_CLE_I18N])) && (!empty($_GET[GEN_URL_CLE_I18N])) ) {
-
 
237
    $_GEN_commun['i18n'] = $_GET[GEN_URL_CLE_I18N];
-
 
238
} else {
-
 
239
  $_GEN_commun['i18n'] = GEN_I18N_ID_DEFAUT;
-
 
240
}
-
 
241
 
254
 
242
// Nous récupérons des informations sur l'internationalisation
255
// Nous récupérons des informations sur l'internationalisation
243
$requete =  'SELECT * '.
256
$requete =  'SELECT * '.
244
            'FROM gen_i18n '.
257
            'FROM gen_i18n '.
Line 271... Line 284...
271
$_GEN_commun['info_i18n_pays'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
284
$_GEN_commun['info_i18n_pays'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
272
$resultat->free();
285
$resultat->free();
Line 273... Line 286...
273
 
286
 
274
// +------------------------------------------------------------------------------------------------------+
287
// +------------------------------------------------------------------------------------------------------+
275
// Gestion des menus
288
// Gestion des menus
276
 
289
//
277
// Nous vérifions le cas où le code du menu est introuvable dans l'url.
290
// Nous vérifions le cas où le code du menu est introuvable dans l'url.
278
if ( (! isset($_GET[GEN_URL_CLE_MENU])) || (empty($_GET[GEN_URL_CLE_MENU])) ) {
291
if ( (! isset($_GET[GEN_URL_CLE_MENU])) || (empty($_GET[GEN_URL_CLE_MENU])) ) {
279
    // Recherche du premier menu du site courant:
292
    // Recherche du premier menu du site courant:
280
    $requete =  'SELECT gen_menu.* '.
293
    $requete =  'SELECT gen_menu.* '.