Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 694 Rev 792
Line 125... Line 125...
125
		//echo '<pre>'.print_r($json, true).'</pre>';
125
		//echo '<pre>'.print_r($json, true).'</pre>';
126
		return $json;
126
		return $json;
127
	}
127
	}
Line 128... Line 128...
128
	
128
	
129
	/**
-
 
130
	 * Données de la carte par défaut
-
 
131
	 */
-
 
132
	public function getCartePreciseJson($params) {
-
 
133
		$json = null;
-
 
134
		$parametres = $this->traiterParametres(array('cle', 'utilisateur', 'projet', 'dept', 'num_taxon'), $params, false);
-
 
135
		extract($parametres);
-
 
136
		$dept = $this->traiterValeursMultiples($dept);
-
 
137
		
-
 
138
		// Vérification que la clé passée dans l'url est correspond à celle attendue
-
 
139
		if ($cle == $this->config['jrest_admin']['cleCarto']) {
-
 
140
			$requete =  'SELECT sector, x_utm, y_utm, coord_x, coord_y, ref_geo '.
-
 
141
	                    'FROM cel_inventory AS i '.
-
 
142
	                    '   LEFT JOIN locations AS l '.
-
 
143
	                    "       ON (l.name = i.location AND l.code = i.id_location) ".
-
 
144
	                    "WHERE transmission = '1' ".
-
 
145
	                    (isset($utilisateur) ? " AND identifiant = '$utilisateur' " : '' ).
-
 
146
	                    (isset($dept) ? " AND l.code IN ($dept) " : '').
-
 
147
	                    (isset($num_taxon) ? " AND num_taxon = '$num_taxon' " : '' ).
-
 
148
	                    (isset($projet) ? ' AND ('.$this->getSqlWhereProjet($projet).') ' : '' );
-
 
149
	                    $resultats = $this->executerRequete($requete);
-
 
150
			
-
 
151
			// Traitement des résultats
-
 
152
			$mm = array('min_x' => 0,'max_x' => 0,'min_y' => 0,'max_y' => 0);
-
 
153
			$points = array();
-
 
154
			foreach ($resultats as $enrg) {
-
 
155
				$enrg['id'] = 'LngLat:'.$enrg['coord_y'].'-'.$enrg['coord_x'];
-
 
156
				if ($enrg['coord_x'] == '' && $enrg['coord_y'] == '' && $enrg['x_utm'] != '' && $enrg['y_utm'] != '') {
-
 
157
					$enrg['id'] = 'UTM:'.$enrg['x_utm'].'-'.$enrg['y_utm'].'-'.$enrg['sector'];
-
 
158
					
-
 
159
					$convertisseur = new gPoint();
-
 
160
					$convertisseur->setUTM($enrg['x_utm'], $enrg['y_utm'], $enrg['sector']);
-
 
161
					$convertisseur->convertTMtoLL();
-
 
162
					$enrg['coord_x'] = $convertisseur->Lat();
-
 
163
					$enrg['coord_y'] = $convertisseur->Long();
-
 
164
				}
-
 
165
	
-
 
166
	
-
 
167
				$id = $enrg['coord_x'].'-'.$enrg['coord_y'];
-
 
168
				if (!isset($points[$id])) {
-
 
169
					$points[$id] = $enrg;
-
 
170
					$points[$id]['nbre'] = 1;
-
 
171
				} else {
-
 
172
					$points[$id]['nbre']++;
-
 
173
				}
-
 
174
	
-
 
175
				// Détermination x et y min et max
-
 
176
				$mm['min_x'] = ($mm['min_x'] > $enrg['coord_x']) ? $enrg['coord_x'] : $mm['min_x'];
-
 
177
				$mm['min_y'] = ($mm['min_y'] > $enrg['coord_y']) ? $enrg['coord_y'] : $mm['min_y'];
-
 
178
				$mm['max_x'] = ($mm['max_x'] < $enrg['coord_x']) ? $enrg['coord_x'] : $mm['max_x'];
-
 
179
				$mm['max_y'] = ($mm['max_y'] < $enrg['coord_y']) ? $enrg['coord_y'] : $mm['max_y'];
-
 
180
			}
-
 
181
			$points = array_values($points);
-
 
182
	
-
 
183
			// Création des infos du widget
-
 
184
			$json['type'] = 'json';
-
 
185
			$json['variable_js'] = 'obs';
-
 
186
			$json['donnees']['points'] = $points;
-
 
187
			$json['donnees']['nombre'] = count($points);
-
 
188
			$json['donnees']['centre_x'] = $mm['min_x'].'-'.$mm['max_x'];
-
 
189
			$json['donnees']['centre_y'] = $mm['min_y'].'-'.$mm['max_y'];
-
 
190
		}
-
 
191
 
-
 
192
		//echo '<pre>'.print_r($json, true).'</pre>';
-
 
193
		return $json;
-
 
194
	}
-
 
195
	
-
 
196
	/**
129
	/**
197
	 * Données pour l'affichage des obs d'une station
130
	 * Données pour l'affichage des obs d'une station
198
	 */
131
	 */
199
	public function getObservations($params) {
132
	public function getObservations($params) {
200
		$json = null;
133
		$json = null;