Line 24... |
Line 24... |
24 |
//Autres auteurs :
|
24 |
//Autres auteurs :
|
25 |
*@copyright Tela-Botanica 2000-2004
|
25 |
*@copyright Tela-Botanica 2000-2004
|
26 |
*@version 03 mai 2004
|
26 |
*@version 03 mai 2004
|
27 |
// +-----------------------------------------------------------------------------------------------+
|
27 |
// +-----------------------------------------------------------------------------------------------+
|
28 |
//
|
28 |
//
|
29 |
// $Id: cartographie.php,v 1.2 2005-11-24 16:17:52 florian Exp $
|
29 |
// $Id: cartographie.php,v 1.3 2006-04-04 12:23:05 florian Exp $
|
30 |
// FICHIER : $RCSfile: cartographie.php,v $
|
30 |
// FICHIER : $RCSfile: cartographie.php,v $
|
31 |
// AUTEUR : $Author: florian $
|
31 |
// AUTEUR : $Author: florian $
|
32 |
// VERSION : $Revision: 1.2 $
|
32 |
// VERSION : $Revision: 1.3 $
|
33 |
// DATE : $Date: 2005-11-24 16:17:52 $
|
33 |
// DATE : $Date: 2006-04-04 12:23:05 $
|
34 |
*/
|
34 |
*/
|
35 |
include_once PAP_CHEMIN_RACINE.'/client/bottin/configuration/bottin.config.inc.php';
|
35 |
include_once PAP_CHEMIN_RACINE.'/client/bottin/configuration/bottin.config.inc.php';
|
36 |
include_once INS_CHEMIN_APPLI.'configuration/cartographie.config.inc.php';
|
36 |
include_once INS_CHEMIN_APPLI.'configuration/cartographie.config.inc.php';
|
37 |
include_once INS_CHEMIN_APPLI.'bibliotheque/cartographie.fonct.php';
|
37 |
include_once INS_CHEMIN_APPLI.'bibliotheque/cartographie.fonct.php';
|
38 |
include_once INS_CHEMIN_APPLI.'bibliotheque/lib.carto.php';
|
38 |
include_once INS_CHEMIN_APPLI.'bibliotheque/lib.carto.php';
|
Line 52... |
Line 52... |
52 |
global $sendpwd;//utilisé dans liste_inscrit.php
|
52 |
global $sendpwd;//utilisé dans liste_inscrit.php
|
53 |
global $select;//utilisé dans liste_inscrit.php
|
53 |
global $select;//utilisé dans liste_inscrit.php
|
54 |
global $liste_zone_carte;
|
54 |
global $liste_zone_carte;
|
Line 55... |
Line 55... |
55 |
|
55 |
|
- |
|
56 |
//=================================================================================================
|
- |
|
57 |
//Gestion de la configuration
|
- |
|
58 |
$requete = 'SELECT * FROM carto_config WHERE cc_menu_id='.$_GET['menu'];
|
- |
|
59 |
$resultat = $GLOBALS['ins_db']->query($requete) ;
|
- |
|
60 |
if (DB::isError($resultat)) {
|
- |
|
61 |
die ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ;
|
- |
|
62 |
}
|
- |
|
63 |
if ($resultat->numRows()>0) {
|
- |
|
64 |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
|
- |
|
65 |
//valeurs par defaut enregistrees dans la table
|
- |
|
66 |
$titre=$ligne['cc_titre_carto'];
|
- |
|
67 |
$nom_table1=$ligne['cc_table1'];
|
- |
|
68 |
$nom_table2=$ligne['cc_table2'];
|
- |
|
69 |
$nom_champs_pays=$ligne['cc_pays'];
|
- |
|
70 |
$nom_champs_cp=$ligne['cc_cp'];
|
56 |
//=================================================================================================
|
71 |
$requete_sql=$ligne['cc_sql'];
|
- |
|
72 |
}
|
- |
|
73 |
|
57 |
$requete_01 =
|
74 |
//=================================================================================================
|
58 |
"SELECT CP_ID_Continent,count(cp_id_continent) AS nbr".
|
75 |
$requete_01 = 'SELECT CP_ID_Continent,count(cp_id_continent) AS nbr'.
|
- |
|
76 |
' FROM '.$nom_table1.', carto_PAYS';
|
59 |
" FROM ".INS_ANNUAIRE.", carto_PAYS".
|
77 |
if ($nom_table2!=0) $requete_01 .= ', '.$nom_table2;
|
- |
|
78 |
$requete_01 .= ' WHERE '.$nom_champs_pays.' = cp_id_pays';
|
60 |
" WHERE ".INS_CHAMPS_PAYS." = cp_id_pays".
|
79 |
if ($requete_sql!='') $requete_01 .= ' AND ('.$requete_sql.')';
|
61 |
" GROUP BY cp_id_continent";
|
80 |
$requete_01 .= ' GROUP BY cp_id_continent';
|
62 |
$resultat_01 = $GLOBALS['ins_db']->query($requete_01) ;
|
81 |
$resultat_01 = $GLOBALS['ins_db']->query($requete_01) ;
|
63 |
if (DB::isError($resultat_01)) {
|
82 |
if (DB::isError($resultat_01)) {
|
64 |
die ($resultat_01->getMessage().'<br />'.$resultat_01->getDebugInfo()) ;
|
83 |
die ($resultat_01->getMessage().'<br />'.$resultat_01->getDebugInfo()) ;
|
65 |
}
|
- |
|
66 |
|
84 |
}
|
67 |
$tableau_ad_continent=array();
|
- |
|
68 |
|
85 |
$tableau_ad_continent=array();
|
69 |
while ($ligne_01 = $resultat_01->fetchRow(DB_FETCHMODE_OBJECT)) {
|
86 |
while ($ligne_01 = $resultat_01->fetchRow(DB_FETCHMODE_OBJECT)) {
|
Line 70... |
Line 87... |
70 |
$tableau_ad_continent[$ligne_01->CP_ID_Continent] = $ligne_01->nbr;
|
87 |
$tableau_ad_continent[$ligne_01->CP_ID_Continent] = $ligne_01->nbr;
|
71 |
|
88 |
|
Line 87... |
Line 104... |
87 |
if (DB::isError($resultat_02)) {
|
104 |
if (DB::isError($resultat_02)) {
|
88 |
die ($resultat_02->getMessage().'<br />'.$resultat_02->getDebugInfo()) ;
|
105 |
die ($resultat_02->getMessage().'<br />'.$resultat_02->getDebugInfo()) ;
|
89 |
}
|
106 |
}
|
Line 90... |
Line 107... |
90 |
|
107 |
|
91 |
while ($ligne_02 = $resultat_02->fetchRow(DB_FETCHMODE_OBJECT)) {
|
- |
|
92 |
$requete_03 =
|
108 |
while ($ligne_02 = $resultat_02->fetchRow(DB_FETCHMODE_OBJECT)) {
|
93 |
'SELECT CP_ID_Pays, count(cp_id_pays) as nbr '.
|
109 |
$requete_03 = 'SELECT CP_ID_Pays, count(cp_id_pays) as nbr '.
|
- |
|
110 |
' FROM '.$nom_table1.', carto_PAYS';
|
94 |
' FROM '.INS_ANNUAIRE.', carto_PAYS'.
|
111 |
if ($nom_table2!=0) $requete_03 .= ', '.$nom_table2;
|
- |
|
112 |
$requete_03 .= ' WHERE '.$nom_champs_pays.'= cp_id_pays';
|
95 |
' WHERE '.INS_CHAMPS_PAYS.'= cp_id_pays'.
|
113 |
if ($requete_sql!='') $requete_03 .= ' AND ('.$requete_sql.')';
|
96 |
' AND cp_id_continent = "'.$ligne_02->CC_ID_Continent.'"'.
|
114 |
$requete_03 .= ' AND cp_id_continent = "'.$ligne_02->CC_ID_Continent.'"'.
|
97 |
' GROUP BY cp_id_pays';
|
- |
|
98 |
|
115 |
' GROUP BY cp_id_pays';
|
99 |
$resultat_03 = $GLOBALS['ins_db']->query($requete_03) ;
|
116 |
$resultat_03 = $GLOBALS['ins_db']->query($requete_03) ;
|
100 |
if (DB::isError($resultat_03)) {
|
117 |
if (DB::isError($resultat_03)) {
|
101 |
die ($resultat_03->getMessage().'<br />'.$resultat_03->getDebugInfo()) ;
|
118 |
die ($resultat_03->getMessage().'<br />'.$resultat_03->getDebugInfo()) ;
|
Line 102... |
Line 119... |
102 |
}
|
119 |
}
|
103 |
|
- |
|
104 |
$tableau_ad_pays = array();
|
120 |
|
105 |
|
121 |
$tableau_ad_pays = array();
|
106 |
while ($ligne_03 = $resultat_03->fetchRow(DB_FETCHMODE_OBJECT)) {
|
122 |
while ($ligne_03 = $resultat_03->fetchRow(DB_FETCHMODE_OBJECT)) {
|
Line 107... |
Line 123... |
107 |
$tableau_ad_pays[$ligne_03->CP_ID_Pays] = $ligne_03->nbr;
|
123 |
$tableau_ad_pays[$ligne_03->CP_ID_Pays] = $ligne_03->nbr;
|
Line 115... |
Line 131... |
115 |
$info_pays[$ligne_02->CC_ID_Continent]['nom_chp_bleu'] = 'CP_Couleur_B';
|
131 |
$info_pays[$ligne_02->CC_ID_Continent]['nom_chp_bleu'] = 'CP_Couleur_B';
|
116 |
$info_pays[$ligne_02->CC_ID_Continent]['nom_chp_zone_sup'] = 'CP_ID_Continent';
|
132 |
$info_pays[$ligne_02->CC_ID_Continent]['nom_chp_zone_sup'] = 'CP_ID_Continent';
|
117 |
$info_pays[$ligne_02->CC_ID_Continent]['tableau_valeurs_zone'] = $tableau_ad_pays;
|
133 |
$info_pays[$ligne_02->CC_ID_Continent]['tableau_valeurs_zone'] = $tableau_ad_pays;
|
118 |
}
|
134 |
}
|
119 |
//============================================================================================================
|
135 |
//============================================================================================================
|
120 |
//récupération du numéro de département à partir du code postal
|
136 |
//if (!isset($_POST['historique_cartes']) && INS_ECHELLE_DEPART!='france') {
|
121 |
$requete_cp = 'SELECT a_code_postal FROM '.INS_ANNUAIRE.' WHERE '.INS_CHAMPS_PAYS.' = "fr"';
|
137 |
$requete_04 = 'SELECT CD_ID_Departement, count(cd_id_departement) as nbr'.
|
122 |
$resultat_cp = $GLOBALS['ins_db']->query($requete_cp) ;
|
- |
|
123 |
if (DB::isError($resultat_cp)) {
|
- |
|
124 |
die('
|
- |
|
125 |
<h2 class="erreur">Erreur de requête</h2>'.
|
138 |
' FROM '.$nom_table1.', carto_DEPARTEMENT'.
|
126 |
'<b>Requete : </b>'.$requete_cp.
|
139 |
' WHERE '.$nom_champs_pays.' = "fr"'.
|
127 |
'<br/><br/><b>Erreur : </b>'.$resultat_cp->getMessage());
|
- |
|
128 |
}
|
- |
|
129 |
$tableau_ad_dpt_france = array();
|
- |
|
130 |
while ($ligne_cp = $resultat_cp->fetchRow(DB_FETCHMODE_ASSOC)) {
|
- |
|
131 |
if (preg_match("/^97|98[0-9]*/", $ligne_cp['a_code_postal'])) {
|
140 |
' AND SUBSTRING('.$nom_champs_cp.' FROM 1 FOR 2) = cd_id_Departement'.
|
132 |
$n_dpt = substr($ligne_cp['a_code_postal'], 0, 3) ;
|
- |
|
133 |
} else {
|
- |
|
134 |
$n_dpt = substr($ligne_cp['a_code_postal'], 0, 2) ;
|
- |
|
135 |
}
|
- |
|
136 |
$requete_04 = 'SELECT cd_id_departement '.
|
141 |
' GROUP BY cd_id_Departement';
|
137 |
' FROM '.INS_ANNUAIRE.', carto_DEPARTEMENT'.
|
- |
|
138 |
' WHERE '.INS_CHAMPS_PAYS.' = "fr"'.
|
- |
|
139 |
' AND cd_id_departement = '.$n_dpt;
|
- |
|
140 |
$resultat_04 = $GLOBALS['ins_db']->query($requete_04) ;
|
142 |
$resultat_04 = $GLOBALS['ins_db']->query ($requete_04) ;
|
141 |
if (DB::isError($resultat_04)) {
|
143 |
$tableau_ad_dpt_france = array();
|
142 |
die('
|
- |
|
143 |
<H2 class="erreur">Erreur de requête</H2>'.
|
- |
|
144 |
'<b>Requete : </b>'.$requete_04.
|
- |
|
145 |
'<br/><br/><b>Erreur : </b>'.$resultat_04->getMessage());
|
- |
|
146 |
}
|
- |
|
147 |
|
- |
|
148 |
while ($ligne_04 = $resultat_04->fetchRow(DB_FETCHMODE_OBJECT)) {
|
144 |
while ($ligne_04 = $resultat_04->fetchRow(DB_FETCHMODE_OBJECT)) {
|
149 |
$tableau_ad_dpt_france[$ligne_04->cd_id_departement] = $resultat_04->numRows();
|
145 |
$tableau_ad_dpt_france[$ligne_04->CD_ID_Departement] = $ligne_04->nbr;
|
150 |
}
|
- |
|
151 |
}
|
146 |
}
|
152 |
|
- |
|
153 |
$info_dpt_france['nom_table_zone'] = 'carto_DEPARTEMENT';
|
147 |
$info_dpt_france['nom_table_zone'] = 'carto_DEPARTEMENT';
|
154 |
$info_dpt_france['nom_chp_id_zone'] = 'CD_ID_Departement';
|
148 |
$info_dpt_france['nom_chp_id_zone'] = 'CD_ID_Departement';
|
155 |
$info_dpt_france['nom_chp_nom_zone'] = 'CD_Intitule_departement';
|
149 |
$info_dpt_france['nom_chp_nom_zone'] = 'CD_Intitule_departement';
|
156 |
$info_dpt_france['nom_chp_rouge'] = 'CD_Couleur_R';
|
150 |
$info_dpt_france['nom_chp_rouge'] = 'CD_Couleur_R';
|
157 |
$info_dpt_france['nom_chp_vert'] = 'CD_Couleur_V';
|
151 |
$info_dpt_france['nom_chp_vert'] = 'CD_Couleur_V';
|
158 |
$info_dpt_france['nom_chp_bleu'] = 'CD_Couleur_B';
|
152 |
$info_dpt_france['nom_chp_bleu'] = 'CD_Couleur_B';
|
159 |
$info_dpt_france['nom_chp_zone_sup'] = 'CD_ID_Pays';
|
153 |
$info_dpt_france['nom_chp_zone_sup'] = 'CD_ID_Pays';
|
160 |
$info_dpt_france['tableau_valeurs_zone'] = $tableau_ad_dpt_france;
|
154 |
$info_dpt_france['tableau_valeurs_zone'] = $tableau_ad_dpt_france;
|
- |
|
155 |
//}
|
Line 161... |
Line 156... |
161 |
|
156 |
|
Line 162... |
Line 157... |
162 |
//============================================================================================================
|
157 |
//============================================================================================================
|
163 |
|
158 |
|
Line 164... |
Line 159... |
164 |
|
159 |
|
165 |
//============================================================================================================
|
- |
|
166 |
// On cree tout d'abord l'arborescence
|
160 |
//============================================================================================================
|
167 |
|
- |
|
- |
|
161 |
// On cree tout d'abord l'arborescence
|
168 |
$monde = new Carto_Carte('continent', '', 'Monde', 'monde_masque5c.png', 'monde5c.png', INS_CHEMIN_APPLI.'presentations/fonds/', $info_continent);
|
162 |
|
- |
|
163 |
$monde = new Carto_Carte('continent', '', 'Monde', 'monde_masque5c.png', 'monde5c.png', INS_CHEMIN_APPLI.'presentations/fonds/', $info_continent);
|
- |
|
164 |
$monde->definirCouleurs('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
- |
|
165 |
if (isset($_POST['historique_cartes'])) {
|
169 |
|
166 |
$monde->historique_cartes = $_POST['historique_cartes'];
|
170 |
$monde->definirCouleurs('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
167 |
} else {
|
171 |
|
168 |
$monde->historique_cartes = INS_ECHELLE_DEPART;
|
172 |
$monde->historique_cartes = $historique_cartes;
|
169 |
}
|
Line 184... |
Line 181... |
184 |
" AND CA_ID_Carte_destination = CDC_ID_Carte";
|
181 |
" AND CA_ID_Carte_destination = CDC_ID_Carte";
|
Line 185... |
Line 182... |
185 |
|
182 |
|
186 |
$resultat_05 = $GLOBALS['ins_db']->query ($requete_05) ;
|
183 |
$resultat_05 = $GLOBALS['ins_db']->query ($requete_05) ;
|
187 |
if (DB::isError($resultat_05)) {
|
184 |
if (DB::isError($resultat_05)) {
|
188 |
die ($resultat_05->getMessage().'<br />'.$resultat_05->getDebugInfo()) ;
|
185 |
die ($resultat_05->getMessage().'<br />'.$resultat_05->getDebugInfo()) ;
|
189 |
}
|
- |
|
190 |
|
186 |
}
|
191 |
$ligne_05 = $resultat_05->fetchRow(DB_FETCHMODE_OBJECT);
|
- |
|
192 |
|
187 |
$ligne_05 = $resultat_05->fetchRow(DB_FETCHMODE_OBJECT);
|
193 |
$monde->ajouterFils($ligne_05->CDC_ID_Carte, $ligne_05->CDC_ID_Zone_geo_carte, $ligne_05->CDC_Titre_carte,
|
188 |
$monde->ajouterFils($ligne_05->CDC_ID_Carte, $ligne_05->CDC_ID_Zone_geo_carte, $ligne_05->CDC_Titre_carte,
|
194 |
$ligne_05->CDC_Carte_masque, $ligne_05->CDC_Carte_fond, $valeur);
|
189 |
$ligne_05->CDC_Carte_masque, $ligne_05->CDC_Carte_fond, $valeur);
|
195 |
$monde->fils[$ligne_05->CDC_ID_Carte]->definirCouleurs ('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
190 |
$monde->fils[$ligne_05->CDC_ID_Carte]->definirCouleurs ('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
Line 199... |
Line 194... |
199 |
$monde->fils['europe']->fils['france']->definirCouleurs ('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
194 |
$monde->fils['europe']->fils['france']->definirCouleurs ('255', '255', '255','255', '250', '130','255', '204', '0','255', '153', '0') ;
|
Line 200... |
Line 195... |
200 |
|
195 |
|
201 |
// Une fois l'arborescence créée on lance la methode donnerFormulaireImage() pour recuperer la carte
|
196 |
// Une fois l'arborescence créée on lance la methode donnerFormulaireImage() pour recuperer la carte
|
202 |
// (dans $img). S'il n'y a pas de carte a afficher donnerFormulaireImage() renvoi false. On peut alors recuperer
|
197 |
// (dans $img). S'il n'y a pas de carte a afficher donnerFormulaireImage() renvoi false. On peut alors recuperer
|
203 |
// le niveau ou on en est grace a $monde->historique (du type continent*namerique*ca).
|
- |
|
204 |
$res = '';
|
198 |
// le niveau ou on en est grace a $monde->historique (du type continent*namerique*ca).
|
205 |
|
- |
|
206 |
|
199 |
|
207 |
$img = false;
|
200 |
$img = false;
|
208 |
if ($mailer == 1 || $fin == true) {
|
201 |
if ($mailer == 1 || $fin == true) {
|
209 |
$objet_carte = $_SESSION['carte'] ;
|
202 |
$objet_carte = $_SESSION['carte'] ;
|
210 |
$monde = unserialize($objet_carte);}
|
203 |
$monde = unserialize($objet_carte);}
|
211 |
else {
|
204 |
else {
|
212 |
$img = $monde->donnerFormulaireImage();
|
205 |
$img = $monde->donnerFormulaireImage();
|
213 |
}
|
206 |
}
|
- |
|
207 |
|
- |
|
208 |
// Quoi qu'il arrive, on ouvre la balise formulaire
|
- |
|
209 |
if ($titre!='') $res = '<h1>'.$titre.'</h1>'."\n";
|
- |
|
210 |
else $res = '<h1>'.INS_CARTOGRAPHIE.'</h1>'."\n";
|
214 |
|
211 |
$res .= '<form action="'.$monde->url.'" method="post">'."\n";
|
- |
|
212 |
if ((INS_AFFICHE_ECHELLE)and($img)) {
|
- |
|
213 |
$historique_carte = new Carto_HistoriqueCarte ($monde, '>', 'chemin_carto');
|
215 |
// On teste donc img
|
214 |
$res .= $historique_carte->afficherHistoriqueCarte()."\n" ;
|
216 |
|
215 |
}
|
217 |
if (!$img ) {
|
216 |
if (!$img ) {
|
- |
|
217 |
//include 'bibliotheque/cartographie.fonct.liste_inscrit.php';
|
218 |
include 'bibliotheque/cartographie.fonct.liste_inscrit.php';
|
218 |
$res .= carto_liste_fiches($monde, $nom_table1, $nom_table2, $nom_champs_pays, $nom_champs_cp, $requete_sql);
|
219 |
return $res;
|
- |
|
220 |
}
|
219 |
return $res;
|
221 |
else {
|
- |
|
222 |
// Quoi qu'il arrive, on ouvre la balise formulaire
|
- |
|
223 |
$res = '<form action="'.$monde->url.'" method="post">'."\n";
|
- |
|
224 |
$historique_carte = new Carto_HistoriqueCarte ($monde, '>', 'chemin_carto');
|
- |
|
225 |
$res .= $historique_carte->afficherHistoriqueCarte()."\n" ;
|
220 |
} else {
|
226 |
$res .= $img;
|
- |
|
227 |
$res .= '</form>'."\n";
|
221 |
$res .= $img;
|
228 |
$res .= '<p style="text-align: center;">'."\n";
|
222 |
$res .= '<p class="zone_info">'."\n";
|
229 |
$res .= '<strong>'.INS_CLIQUER_ACCEDER.'</strong><br />'."\n";
|
223 |
$res .= '<strong>'.INS_CLIQUER_ACCEDER.'</strong><br />'."\n";
|
- |
|
224 |
$res .= INS_COULEUR."\n".'</p>'."\n";
|
- |
|
225 |
}
|
230 |
$res .= INS_COULEUR."\n".'</p>'."\n";
|
226 |
$res .= '</form>'."\n";
|
- |
|
227 |
return $res;
|
- |
|
228 |
|
- |
|
229 |
//----------------------------------------------------------------------------------------------------------------------
|
- |
|
230 |
// Cas ou la carto n'a pas encore ete configuree
|
- |
|
231 |
} else {
|
231 |
return $res;
|
232 |
return '<p class="zone_alert">'.INS_FAUT_CONFIGURER_CARTO.'</p>'."\n";
|
232 |
}
|
233 |
}
|
Line 233... |
Line 234... |
233 |
}
|
234 |
}
|
234 |
|
235 |
|
235 |
|
236 |
|
- |
|
237 |
//-- Fin du code source ------------------------------------------------------------
|
- |
|
238 |
/*
|
- |
|
239 |
* $Log: not supported by cvs2svn $
|
236 |
//-- Fin du code source ------------------------------------------------------------
|
240 |
* Revision 1.2 2005/11/24 16:17:52 florian
|
237 |
/*
|
241 |
* changement template inscription + modifs carto
|
238 |
* $Log: not supported by cvs2svn $
|
242 |
*
|
239 |
* Revision 1.1 2005/09/22 14:02:49 ddelon
|
243 |
* Revision 1.1 2005/09/22 14:02:49 ddelon
|
240 |
* nettoyage annuaire et php5
|
244 |
* nettoyage annuaire et php5
|