Line 27... |
Line 27... |
27 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
27 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
28 |
*@copyright Tela-Botanica 2000-2003
|
28 |
*@copyright Tela-Botanica 2000-2003
|
29 |
*@version 01 juillet 2002
|
29 |
*@version 01 juillet 2002
|
30 |
// +-----------------------------------------------------------------------------------------------+
|
30 |
// +-----------------------------------------------------------------------------------------------+
|
31 |
//
|
31 |
//
|
32 |
// $Id: lib.carto.php,v 1.6 2006-12-12 10:37:45 alexandre_tb Exp $
|
32 |
// $Id: lib.carto.php,v 1.7 2007-04-06 08:35:46 neiluj Exp $
|
33 |
// FICHIER : $RCSfile: lib.carto.php,v $
|
33 |
// FICHIER : $RCSfile: lib.carto.php,v $
|
34 |
// AUTEUR : $Author: alexandre_tb $
|
34 |
// AUTEUR : $Author: neiluj $
|
35 |
// VERSION : $Revision: 1.6 $
|
35 |
// VERSION : $Revision: 1.7 $
|
36 |
// DATE : $Date: 2006-12-12 10:37:45 $
|
36 |
// DATE : $Date: 2007-04-06 08:35:46 $
|
37 |
//
|
37 |
//
|
38 |
// +-----------------------------------------------------------------------------------------------+
|
38 |
// +-----------------------------------------------------------------------------------------------+
|
39 |
// A FAIRE :
|
39 |
// A FAIRE :
|
40 |
// 1.-Rendre cette classe indépendante de l'arborescence du site.
|
40 |
// 1.-Rendre cette classe indépendante de l'arborescence du site.
|
41 |
// On trouve encore des urls ou des chemins d'accé au fichier codé en dur dans l'appli
|
41 |
// On trouve encore des urls ou des chemins d'accé au fichier codé en dur dans l'appli
|
Line 96... |
Line 96... |
96 |
$res.= '<a ';
|
96 |
$res.= '<a ';
|
Line 97... |
Line 97... |
97 |
|
97 |
|
98 |
if (!empty($this->class_css)) {
|
98 |
if (!empty($this->class_css)) {
|
99 |
$res.='class="'.$this->class_css.'" ';
|
99 |
$res.='class="'.$this->class_css.'" ';
|
100 |
}
|
- |
|
- |
|
100 |
}
|
101 |
$GLOBALS['ins_url']->addQueryString('historique_cartes', $chemin);
|
101 |
|
102 |
$res.='href="'.$GLOBALS['ins_url']->getURL().'"> '.$this->caractere_separation.' '.$tabnom[$key].'</a>';
|
102 |
$res.='href="'.$this->url.'&historique_cartes='.$chemin.'"> '.$this->caractere_separation.' '.$tabnom[$key].'</a>';
|
103 |
}
|
103 |
}
|
104 |
$res.= '</div>'."\n";
|
104 |
$res.= '</div>'."\n";
|
Line 105... |
Line 105... |
105 |
return $res;
|
105 |
return $res;
|
Line 200... |
Line 200... |
200 |
$action['id_zone_geo'] = $ligne->$chp_id_zone_geo;
|
200 |
$action['id_zone_geo'] = $ligne->$chp_id_zone_geo;
|
201 |
$action['type_action'] = $ligne->$chp_action;
|
201 |
$action['type_action'] = $ligne->$chp_action;
|
202 |
$action['id_carte_destination'] = $ligne->$chp_id_carte_destination;
|
202 |
$action['id_carte_destination'] = $ligne->$chp_id_carte_destination;
|
Line 203... |
Line 203... |
203 |
|
203 |
|
204 |
return $action;
|
- |
|
205 |
} else {
|
- |
|
206 |
return array ('type_action' => 'Recharger');
|
204 |
return $action;
|
207 |
}
|
205 |
}
|
Line 208... |
Line 206... |
208 |
}//Fin de la méthode _consulterActionImage().
|
206 |
}//Fin de la méthode _consulterActionImage().
|
209 |
|
207 |
|
Line 317... |
Line 315... |
317 |
$this->masque = $chemin.$masque;
|
315 |
$this->masque = $chemin.$masque;
|
318 |
$this->fond = $chemin.$fond;
|
316 |
$this->fond = $chemin.$fond;
|
319 |
$this->chemin = $chemin;
|
317 |
$this->chemin = $chemin;
|
320 |
$this->_info_table_zg = $info_table;
|
318 |
$this->_info_table_zg = $info_table;
|
Line 321... |
Line -... |
321 |
|
- |
|
322 |
|
319 |
|
323 |
$this->_action = new Carto_Action($info_table['nom_table_zone'],$info_table['nom_chp_id_zone'],
|
- |
|
324 |
$info_table['nom_chp_rouge'], $info_table['nom_chp_vert'], $info_table['nom_chp_bleu'],
|
320 |
$this->_action = new Carto_Action($info_table['nom_table_zone'],$info_table['nom_chp_id_zone'], $info_table['nom_chp_rouge'], $info_table['nom_chp_vert'], $info_table['nom_chp_bleu'],
|
325 |
'carto_ACTION', 'CA_ID_Carte', 'CA_ID_Zone_geo', 'CA_Type_zone',
|
- |
|
326 |
'CA_Action', 'CA_ID_Carte_destination');
|
321 |
'carto_ACTION', 'CA_ID_Carte', 'CA_ID_Zone_geo', 'CA_Type_zone', 'CA_Action', 'CA_ID_Carte_destination');
|
327 |
$this->fils = array();
|
322 |
$this->fils = array();
|
328 |
$this->filiation = $id;
|
323 |
$this->filiation = $id;
|
329 |
$this->historique_cartes = '';
|
324 |
$this->historique_cartes = '';
|
330 |
$this->liste_zone_carte = '';
|
325 |
$this->liste_zone_carte = '';
|
Line 403... |
Line 398... |
403 |
// -soit false.
|
398 |
// -soit false.
|
404 |
//**********************************************************************************************************
|
399 |
//**********************************************************************************************************
|
Line 405... |
Line 400... |
405 |
|
400 |
|
406 |
function donnerFormulaireImage ()
|
401 |
function donnerFormulaireImage ()
|
- |
|
402 |
{
|
407 |
{
|
403 |
global $GS_GLOBAL;
|
Line 408... |
Line 404... |
408 |
$res = '';
|
404 |
$res = '';
|
409 |
|
405 |
|
410 |
// Nous commençons par tester tout d'abords si nous venons d'une autre carte. Pour cela nous vérifions,
|
406 |
// Nous commençons par tester tout d'abords si nous venons d'une autre carte. Pour cela nous vérifions,
|
Line 445... |
Line 441... |
445 |
}
|
441 |
}
|
Line 446... |
Line 442... |
446 |
|
442 |
|
Line 447... |
Line 443... |
447 |
// on regarde qu'est-ce qu'on doit faire grace a la methode _consulterAction() de l'objet Carto_Action
|
443 |
// on regarde qu'est-ce qu'on doit faire grace a la methode _consulterAction() de l'objet Carto_Action
|
448 |
|
444 |
|
449 |
$action = $this->_action->_consulterActionImage($this->image_x, $this->image_y, $this->masque, $this->id);
|
445 |
$action = $this->_action->_consulterActionImage($this->image_x, $this->image_y, $this->masque, $this->id);
|
450 |
|
446 |
|
451 |
// Nous distinguons 2 cas :
|
447 |
// Nous distinguons 2 cas :
|
Line 452... |
Line 448... |
452 |
//le cas ou il faut afficher une nouvelle carte ... :
|
448 |
//le cas ou il faut afficher une nouvelle carte ... :
|
453 |
if ($action['type_action'] == 'Aller_a') {
|
449 |
if ($action['type_action'] == 'Aller_a') {
|
454 |
|
- |
|
455 |
$id_carte_destination = $action['id_carte_destination'] ;
|
450 |
|
456 |
$this->fils[$id_carte_destination]->liste_zone_carte = $this->liste_zone_carte;
|
- |
|
457 |
if (INS_AFFICHE_ZONE_ROUGE) {
|
451 |
$id_carte_destination = $action['id_carte_destination'] ;
|
458 |
$res .= ''.$this->fils[$id_carte_destination]->_donnerListeZoneCarte()."<br />\n";
|
452 |
$this->fils[$id_carte_destination]->liste_zone_carte = $this->liste_zone_carte;
|
459 |
}
|
453 |
$res .= ''.$this->fils[$id_carte_destination]->_donnerListeZoneCarte()."<br />\n";
|
460 |
$res .= '<input type="image" src="';
|
454 |
$res .= '<input type="image" src="';
|
461 |
$id_image = $this->_donnerIdUnique();
|
455 |
$id_image = $this->_donnerIdUnique();
|
Line 469... |
Line 463... |
469 |
//Dans le cas où l'on veut rappeler une nouvelle carte, il se peut que la nouvelle carte à rappeler
|
463 |
//Dans le cas où l'on veut rappeler une nouvelle carte, il se peut que la nouvelle carte à rappeler
|
470 |
//soit la même que précédement.
|
464 |
//soit la même que précédement.
|
471 |
//Cette possibilité peut se présenter quand on clique sur un zone blanche d'une carte (càd dans la mer)
|
465 |
//Cette possibilité peut se présenter quand on clique sur un zone blanche d'une carte (càd dans la mer)
|
472 |
//Là, on recharge la carte précédente :
|
466 |
//Là, on recharge la carte précédente :
|
473 |
elseif ($action['type_action'] == 'Recharger') {
|
467 |
elseif ($action['type_action'] == 'Recharger') {
|
474 |
if (INS_AFFICHE_ZONE_ROUGE) {
|
- |
|
475 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
468 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
476 |
}
|
- |
|
477 |
$res .= '<input type="image" src="';
|
469 |
$res .= '<input type="image" src="';
|
478 |
$id_image = $this->_donnerIdUnique();
|
470 |
$id_image = $this->_donnerIdUnique();
|
479 |
$this->_lancerColoriage($id_image);
|
471 |
$this->_lancerColoriage($id_image);
|
480 |
$obj = serialize($this);
|
472 |
$obj = serialize($this);
|
481 |
$_SESSION['carte'] = $obj ;
|
473 |
$_SESSION['carte'] = $obj ;
|
Line 497... |
Line 489... |
497 |
if ($key != 0) {
|
489 |
if ($key != 0) {
|
498 |
$this = $this->fils[$value];
|
490 |
$this = $this->fils[$value];
|
499 |
}
|
491 |
}
|
500 |
}
|
492 |
}
|
501 |
$this->liste_zone_carte = $liste_zone_carte;
|
493 |
$this->liste_zone_carte = $liste_zone_carte;
|
502 |
if (INS_AFFICHE_ZONE_ROUGE) {
|
- |
|
- |
|
494 |
|
503 |
$res .= ''.$this->_donnerListeZoneCarte($this->liste_zone_carte)."<br />\n";
|
495 |
$res .= ''.$this->_donnerListeZoneCarte($this->liste_zone_carte)."<br />\n";
|
504 |
}
|
- |
|
505 |
$res .= '<input type="image" src="';
|
496 |
$res .= '<input type="image" src="';
|
506 |
$id_image = $this->_donnerIdUnique();
|
497 |
$id_image = $this->_donnerIdUnique();
|
507 |
$this->_lancerColoriage($id_image, '', $this->liste_zone_carte);
|
498 |
$this->_lancerColoriage($id_image, '', $this->liste_zone_carte);
|
508 |
$this->historique = $this->historique_cartes;
|
499 |
$this->historique = $this->historique_cartes;
|
509 |
$obj = serialize($this);
|
500 |
$obj = serialize($this);
|
Line 512... |
Line 503... |
512 |
// On teste maintenant si l'on vient d'un lien. Si c'est le cas on a recu un argument
|
503 |
// On teste maintenant si l'on vient d'un lien. Si c'est le cas on a recu un argument
|
513 |
// qui nous donne la "genealogie" de la carte que l'on doit afficher
|
504 |
// qui nous donne la "genealogie" de la carte que l'on doit afficher
|
514 |
else if ($this->historique_cartes) {
|
505 |
else if ($this->historique_cartes) {
|
515 |
// Nous chargons alors l'ojet approprié en descendant grâce a la généalogie
|
506 |
// Nous chargons alors l'ojet approprié en descendant grâce a la généalogie
|
516 |
$historique_cartes = explode('*',$this->historique_cartes);
|
507 |
$historique_cartes = explode('*',$this->historique_cartes);
|
517 |
|
- |
|
518 |
foreach ($historique_cartes as $key => $value) {
|
508 |
foreach ($historique_cartes as $key => $value) {
|
519 |
if ($key != 0) {
|
509 |
if ($key != 0) {
|
520 |
$this = $this->fils[$value];
|
510 |
$this = $this->fils[$value];
|
521 |
}
|
511 |
}
|
522 |
}
|
512 |
}
|
523 |
// une foit que l'on a charge le bon objet nous le colorions
|
513 |
// une foit que l'on a charge le bon objet nous le colorions
|
524 |
if (INS_AFFICHE_ZONE_ROUGE) {
|
- |
|
525 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
514 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
526 |
}
|
515 |
|
527 |
$res .= '<input type="image" src="';
|
516 |
$res .= '<input type="image" src="';
|
528 |
$id_image = $this->_donnerIdUnique();
|
517 |
$id_image = $this->_donnerIdUnique();
|
529 |
$this->_lancerColoriage($id_image);
|
518 |
$this->_lancerColoriage($id_image);
|
530 |
$this->historique = $this->historique_cartes;
|
519 |
$this->historique = $this->historique_cartes;
|
531 |
$obj = serialize($this);
|
520 |
$obj = serialize($this);
|
Line 533... |
Line 522... |
533 |
}
|
522 |
}
|
534 |
// Enfin si on ne vient pas d'une carte ou d'un lien c'est que l'on vient de l'onglet carto du menu
|
523 |
// Enfin si on ne vient pas d'une carte ou d'un lien c'est que l'on vient de l'onglet carto du menu
|
535 |
// et on affiche alors la premiere carte
|
524 |
// et on affiche alors la premiere carte
|
536 |
else {
|
525 |
else {
|
537 |
unset ($_SESSION['carte']) ;
|
526 |
unset ($_SESSION['carte']) ;
|
538 |
if (INS_AFFICHE_ZONE_ROUGE) {
|
- |
|
539 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
527 |
$res .= ''.$this->_donnerListeZoneCarte()."<br />\n";
|
540 |
}
|
528 |
|
541 |
$res .= '<input type="image" src="';
|
529 |
$res .= '<input type="image" src="';
|
542 |
$id_image = $this->_donnerIdUnique();
|
530 |
$id_image = $this->_donnerIdUnique();
|
543 |
$this->_lancerColoriage($id_image);
|
531 |
$this->_lancerColoriage($id_image);
|
544 |
$this->historique = $this->id;
|
532 |
$this->historique = $this->id;
|
545 |
$obj = serialize($this);
|
533 |
$obj = serialize($this);
|
Line 560... |
Line 548... |
560 |
$retour = '';
|
548 |
$retour = '';
|
Line 561... |
Line 549... |
561 |
|
549 |
|
562 |
$requete =
|
550 |
$requete =
|
563 |
'SELECT '.$this->_info_table_zg['nom_chp_id_zone'].', '.$this->_info_table_zg['nom_chp_nom_zone'].
|
551 |
'SELECT '.$this->_info_table_zg['nom_chp_id_zone'].', '.$this->_info_table_zg['nom_chp_nom_zone'].
|
564 |
' FROM '.$this->_info_table_zg['nom_table_zone'];
|
552 |
' FROM '.$this->_info_table_zg['nom_table_zone'];
|
565 |
if ($this->_info_table_zg['nom_chp_zone_sup'] != '' && $this->_id_zone_geo_carte != ''){
|
553 |
if ($this->_info_table_zg['nom_chp_zone_sup'] != ''){
|
566 |
if(ereg("[a-z]+",$this->_id_zone_geo_carte)){
|
554 |
if(ereg("[a-z]+",$this->_id_zone_geo_carte)){
|
567 |
$requete .=
|
555 |
$requete .=
|
568 |
' WHERE '.$this->_info_table_zg['nom_chp_zone_sup'].' = "'.$this->_id_zone_geo_carte.'"';
|
556 |
' WHERE '.$this->_info_table_zg['nom_chp_zone_sup'].' = "'.$this->_id_zone_geo_carte.'"';
|
569 |
}
|
557 |
}
|
Line 572... |
Line 560... |
572 |
' WHERE '.$this->_info_table_zg['nom_chp_zone_sup'].' = '.$this->_id_zone_geo_carte;
|
560 |
' WHERE '.$this->_info_table_zg['nom_chp_zone_sup'].' = '.$this->_id_zone_geo_carte;
|
573 |
}
|
561 |
}
|
574 |
}
|
562 |
}
|
575 |
$requete .=
|
563 |
$requete .=
|
576 |
' ORDER BY '.$this->_info_table_zg['nom_chp_nom_zone'].' ASC';
|
564 |
' ORDER BY '.$this->_info_table_zg['nom_chp_nom_zone'].' ASC';
|
577 |
$resultat = $GLOBALS['ins_db']->query ($requete) ;
|
565 |
$resultat = mysql_query ($requete) or die('
|
- |
|
566 |
<H2 style="text-align: center; font-weight: bold; font-size: 26px;">Erreur de requête</H2>'.
|
578 |
if (DB::isError($resultat)) {
|
567 |
'<b>Requete : </b>'.$requete.
|
579 |
echo BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) ;
|
568 |
'<br/><br/><b>Erreur : </b>'.mysql_error());
|
580 |
}
|
- |
|
581 |
|
569 |
|
582 |
$i=0;
|
570 |
$i=0;
|
Line 583... |
Line 571... |
583 |
|
571 |
|
584 |
$retour = '<select name="liste_zone_carte" style="float:right;" onchange="javascript:this.form.submit();">'."\n";
|
572 |
$retour = '<select name="liste_zone_carte" style="float:right;" onchange="javascript:this.form.submit();">'."\n";
|
Line 585... |
Line 573... |
585 |
$retour .= '<option value="">'.INS_VISUALISER_ZONE.'</option>'."\n";
|
573 |
$retour .= '<option value="">'.INS_VISUALISER_ZONE.'</option>'."\n";
|
586 |
|
574 |
|
Line 587... |
Line 575... |
587 |
$nom_chp_nom_zone = $this->_info_table_zg['nom_chp_nom_zone'];
|
575 |
$nom_chp_nom_zone = $this->_info_table_zg['nom_chp_nom_zone'];
|
588 |
$nom_chp_id_zone = $this->_info_table_zg['nom_chp_id_zone'];
|
576 |
$nom_chp_id_zone = $this->_info_table_zg['nom_chp_id_zone'];
|
589 |
|
577 |
|
590 |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
|
578 |
while ($ligne = mysql_fetch_object ($resultat)) {
|
591 |
if ($zone_par_defaut == $ligne->$nom_chp_id_zone){
|
579 |
if ($zone_par_defaut == $ligne->$nom_chp_id_zone){
|
592 |
$retour .= '<option value="'.$ligne->$nom_chp_id_zone.'" selected="selected">'.$ligne->$nom_chp_nom_zone.'</option>'."\n";
|
580 |
$retour .= '<option value="'.$ligne->$nom_chp_id_zone.'" selected="selected">'.$ligne->$nom_chp_nom_zone.'</option>'."\n";
|
Line 641... |
Line 629... |
641 |
//un tableau d'objets Carto_InformationCouleur (voir la description de la classe ci-dessus.
|
629 |
//un tableau d'objets Carto_InformationCouleur (voir la description de la classe ci-dessus.
|
Line 642... |
Line 630... |
642 |
|
630 |
|
643 |
$requete_01 =
|
631 |
$requete_01 =
|
644 |
'SELECT *'.
|
632 |
'SELECT *'.
|
645 |
' FROM '.$table_zone_geo;
|
633 |
' FROM '.$table_zone_geo;
|
646 |
if ($chp_zone_sup != '' && $this->_id_zone_geo_carte != ''){
|
634 |
if ($chp_zone_sup != ''){
|
647 |
if(ereg("[a-z]+",$this->_id_zone_geo_carte)){
|
635 |
if(ereg("[a-z]+",$this->_id_zone_geo_carte)){
|
648 |
$requete_01 .=
|
636 |
$requete_01 .=
|
649 |
' WHERE '.$chp_zone_sup.' = "'.$this->_id_zone_geo_carte.'"';
|
637 |
' WHERE '.$chp_zone_sup.' = "'.$this->_id_zone_geo_carte.'"';
|
650 |
}
|
638 |
}
|
Line 1196... |
Line 1184... |
1196 |
}
|
1184 |
}
|
Line 1197... |
Line 1185... |
1197 |
|
1185 |
|
1198 |
//-- Fin du code source ------------------------------------------------------------
|
1186 |
//-- Fin du code source ------------------------------------------------------------
|
1199 |
/*
|
1187 |
/*
|
1200 |
* $Log: not supported by cvs2svn $
|
- |
|
1201 |
* Revision 1.4 2006/04/04 12:23:05 florian
|
- |
|
1202 |
* modifs affichage fiches, généricité de la carto, modification totale de l'appli annuaire
|
- |
|
1203 |
*
|
1188 |
* $Log: not supported by cvs2svn $
|
1204 |
* Revision 1.3 2005/12/07 14:59:14 alexandre_tb
|
1189 |
* Revision 1.3 2005/12/07 14:59:14 alexandre_tb
|
1205 |
* suppression d'un echo
|
1190 |
* suppression d'un echo
|
1206 |
*
|
1191 |
*
|
1207 |
* Revision 1.2 2005/11/24 16:17:52 florian
|
1192 |
* Revision 1.2 2005/11/24 16:17:52 florian
|