Subversion Repositories Sites.obs-saisons.fr

Rev

Rev 277 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 277 Rev 327
Line 10... Line 10...
10
 * @license     http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
10
 * @license     http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
11
 * @license     http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
11
 * @license     http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
12
 * @version     SVN: $Id: Espece.php 152 2010-09-06 16:19:12Z jpm $
12
 * @version     SVN: $Id: Espece.php 152 2010-09-06 16:19:12Z jpm $
13
 */
13
 */
14
class Rendu extends aControleur {
14
class Rendu extends aControleur {
15
	
15
 
16
    public function __construct()  {
16
    public function __construct()  {
17
    	
17
 
18
		parent::__construct();
18
		parent::__construct();
19
        $this->initialiser();
19
        $this->initialiser();
20
    }
20
    }
21
    
21
 
22
    public function executerActionParDefaut() {
22
    public function executerActionParDefaut() {
23
    	return $this->afficherCarte();
23
    	return $this->afficherCarte();
24
    }
24
    }
25
    
25
 
26
    private function initialiser() {
26
    private function initialiser() {
27
    	
27
 
28
    }
28
    }
29
	
29
 
-
 
30
    private function mb_ucfirst($str) {
-
 
31
      $fc = mb_strtoupper(mb_substr($str, 0, 1));
-
 
32
      return $fc.mb_substr($str, 1);
-
 
33
    }
-
 
34
 
30
	private function afficherCarte() {
35
	private function afficherCarte() {
31
		
36
 
32
		$carte = $this->getCarteDemandee();
37
		$carte = $this->getCarteDemandee();
33
		
38
 
34
		$espece_dao = new EspeceDao();
39
		$espece_dao = new EspeceDao();
35
		$especes = $espece_dao->getListeEspecesParType();
40
		$especes = $espece_dao->getListeEspecesParType();
36
		
41
 
37
		$evenements_dao = new EvenementDao();
42
		$evenements_dao = new EvenementDao();
38
		$evenements = $evenements_dao->getListeEvenements();
43
		$evenements = $evenements_dao->getListeEvenements();
39
		
44
 
-
 
45
    $observations_dao = new ObservationDao();
-
 
46
		$annees_ayant_obs = $observations_dao->getAnneesAyantObservations();
-
 
47
 
40
		$chaine_variables_script = '<script type="text/javascript" language="javascript">';
48
		$chaine_variables_script = '<script type="text/javascript" language="javascript">';
41
		
49
 
42
		$chaine_variables_script .= ' var url_widget = "'.Liens::getUrlBaseComplete().'"; ';
50
		$chaine_variables_script .= ' var url_widget = "'.Liens::getUrlBaseComplete().'"; ';
43
		$chaine_variables_script .= ' var tableau_especes = new Array(); ';
51
		$chaine_variables_script .= ' var tableau_especes = new Array(); ';
44
		$chaine_variables_script .= ' var tableau_evenements_especes = new Array(); ';
52
		$chaine_variables_script .= ' var tableau_evenements_especes = new Array(); ';
45
		$chaine_variables_script .= ' var tableau_evenements = new Array(); ';
53
		$chaine_variables_script .= ' var tableau_evenements = new Array(); ';
-
 
54
    $chaine_variables_script .= ' var annees_ayant_obs = '.json_encode($annees_ayant_obs).'; ';
46
		
55
 
47
		foreach($especes as $id_type_espece => $type_espece) {
56
		foreach($especes as $id_type_espece => $type_espece) {
48
			
57
 
49
			$chaine_variables_script .= 'tableau_especes['.$id_type_espece.'] = new Array();';
58
			$chaine_variables_script .= 'tableau_especes['.$id_type_espece.'] = new Array();';
50
			
59
 
51
			foreach($type_espece['especes'] as $id_espece => $espece) {
60
			foreach($type_espece['especes'] as $id_espece => $espece) {
52
				$chaine_variables_script .= 'tableau_especes['.$id_type_espece.']['.$id_espece.'] = "'.$espece['nom_vernaculaire'].'";';
61
				$chaine_variables_script .= 'tableau_especes['.$id_type_espece.']['.$id_espece.'] = "'.$this->mb_ucfirst($espece['nom_vernaculaire']).'";';
53
				$chaine_variables_script .= 'tableau_evenements_especes['.$id_espece.'] = "'.$espece['evenements'].'";';
62
				$chaine_variables_script .= 'tableau_evenements_especes['.$id_espece.'] = "'.$espece['evenements'].'";';
54
			}
63
			}
55
		}
64
		}
56
		
65
 
57
		foreach($evenements as $id_evenement => $evenement) {
66
		foreach($evenements as $id_evenement => $evenement) {
58
			$nom_evenement = $evenement['nom'];
67
			$nom_evenement = $this->mb_ucfirst($evenement['nom']);
59
			if(trim($evenement['nom']) != '') {
68
			if(trim($evenement['nom']) != '') {
60
				$nom_evenement .= ' stade '.$evenement['code'];
69
				$nom_evenement .= ' stade '.$evenement['code'];
61
			}
70
			}
62
			$chaine_variables_script .= 'tableau_evenements['.$id_evenement.'] = "'.$nom_evenement.'";';
71
			$chaine_variables_script .= 'tableau_evenements['.$id_evenement.'] = "'.$nom_evenement.'";';
63
		}
72
		}
64
		$url_limites_communales = $this->obtenirUrlsLimitesCommunales();
73
		$url_limites_communales = $this->obtenirUrlsLimitesCommunales();
65
		$chaine_variables_script .= 'var urlsLimitesCommunales = '.$url_limites_communales.';';
74
		$chaine_variables_script .= 'var urlsLimitesCommunales = '.$url_limites_communales.';';
66
		
75
 
67
		$chaine_variables_script .= '</script> ';
76
		$chaine_variables_script .= '</script> ';
68
		$chaine_variables_script .= '<script type="text/javascript" src="'.Liens::getUrlScript().'rendu_'.$carte.'.js"></script>';
77
		$chaine_variables_script .= '<script type="text/javascript" src="'.Liens::getUrlScript().'rendu_'.$carte.'.js"></script>';
69
		
78
 
70
		$donnees = array();
79
		$donnees = array();
71
		$donnees['url'] = Liens::getUrlBaseComplete().'rendu_widget.php?carte='.$carte;
80
		$donnees['url'] = Liens::getUrlBaseComplete().'rendu_widget.php?carte='.$carte;
72
		$donnees['script'] = $chaine_variables_script;
81
		$donnees['script'] = $chaine_variables_script;
73
		$donnees['especes'] = $especes; 
82
		$donnees['especes'] = $especes;
74
		$donnees['evenements'] = $evenements;
83
		$donnees['evenements'] = $evenements;
-
 
84
    $donnees['annees_ayant_obs'] = $annees_ayant_obs;
75
		
85
 
76
		$formulaire = $this->getVue('cartes/observations_'.$carte,$donnees);
86
		$formulaire = $this->getVue('cartes/observations_'.$carte,$donnees);
77
    	$this->setSortie(self::RENDU_CORPS, $formulaire); 
87
    $this->setSortie(self::RENDU_CORPS, $formulaire);
78
	}
88
	}
79
	
89
 
80
	private function getCarteDemandee() {
90
	private function getCarteDemandee() {
81
		
91
 
82
		$carte = 'especes';
92
		$carte = 'especes';
83
		
93
 
84
		if(isset($_GET['carte'])) {
94
		if(isset($_GET['carte'])) {
85
			$carte = $_GET['carte'];
95
			$carte = $_GET['carte'];
86
		}
96
		}
87
		
97
 
88
		return $carte;
98
		return $carte;
89
	}
99
	}
90
	
100
 
91
	private function obtenirUrlsLimitesCommunales() {
101
	private function obtenirUrlsLimitesCommunales() {
92
		$urls = null;
102
		$urls = null;
93
		if (isset($_GET['departement'])) {
103
		if (isset($_GET['departement'])) {
94
			// si on veut afficher les limites départementales on va compter et chercher les noms de fichiers
104
			// si on veut afficher les limites départementales on va compter et chercher les noms de fichiers
95
			$fichiersKml = $this->chercherFichierKml();
105
			$fichiersKml = $this->chercherFichierKml();
Line 101... Line 111...
101
			}
111
			}
102
		}
112
		}
103
		$urls = json_encode($urls);
113
		$urls = json_encode($urls);
104
		return $urls;
114
		return $urls;
105
	}
115
	}
106
	
116
 
107
	private function chercherFichierKml(){
117
	private function chercherFichierKml(){
108
		$fichiers = array();
118
		$fichiers = array();
109
		$chemins = explode(',', Config::get('communesKmzChemin'));
119
		$chemins = explode(',', Config::get('communesKmzChemin'));
110
		$departements = explode(',', $_GET['departement']);// plrs code de départements peuvent être demandés séparés par des virgules
120
		$departements = explode(',', $_GET['departement']);// plrs code de départements peuvent être demandés séparés par des virgules
111
		$departements_trouves = array();
121
		$departements_trouves = array();
Line 126... Line 136...
126
					}
136
					}
127
				}
137
				}
128
				closedir($dossier_ressource);
138
				closedir($dossier_ressource);
129
			}
139
			}
130
		}
140
		}
131
	
141
 
132
		return $fichiers;
142
		return $fichiers;
133
	}	
-
 
134
}
-
 
135
143
	}
-
 
144
}
-
 
145