Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2143 Rev 2152
Line 236... Line 236...
236
	* @param int $id identifiant de l'observation
236
	* @param int $id identifiant de l'observation
237
	* @param array $parametres tableau indexé avec les mêmes noms de champs que la bdd
237
	* @param array $parametres tableau indexé avec les mêmes noms de champs que la bdd
238
	*
238
	*
239
	* @return true ou false suivant le succès de l'opération
239
	* @return true ou false suivant le succès de l'opération
240
	*/
240
	*/
241
	public function modifierObservationPublique($utilisateur, $id, $parametres) {
241
	public function modifierObservationPublique($id_obs, $parametres) {
242
		$base_param = array(
242
		$parametresDefaut = array(
243
			'nom_sel_nn' => NULL,
243
			'nom_sel_nn' => NULL,
244
			'nom_sel' => NULL,
244
			'nom_sel' => NULL,
245
			'nom_ret_nn' => NULL,
245
			'nom_ret_nn' => NULL,
246
			'nom_referentiel' => NULL);
246
			'nom_referentiel' => NULL);
247
		$parametres = array_merge($base_param, $parametres);
247
		$parametres = array_merge($parametresDefaut, $parametres);
Line 248... Line 248...
248
 
248
 
249
		$this->traiterEspece($parametres);
249
		$this->traiterEspece($parametres);
Line 250... Line -...
250
		self::formaterParametresObservation($parametres);
-
 
251
 
-
 
252
		$retour = true;
250
		self::formaterParametresObservation($parametres);
253
 
251
 
Line 254... Line 252...
254
		$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
252
		$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
255
		$champ_maj[] = "date_modification = now()";
253
		$champ_maj[] = 'date_modification = NOW()';
256
 
254
 
257
		$requete_modification = "UPDATE cel_obs SET " .
-
 
258
			implode(', ', $champ_maj) .
255
		$requete = "UPDATE cel_obs SET " .
259
			" WHERE id_observation = ".Cel::db()->proteger($id).
256
			implode(', ', $champ_maj) .
260
			" AND ce_utilisateur = ".Cel::db()->proteger($utilisateur)." ".
-
 
261
			" AND transmission = 1 ".
-
 
262
			' -- ' . __FILE__ . ':' . __LINE__;
-
 
263
		// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes)
257
			" WHERE id_observation = ".Cel::db()->proteger($id_obs).
Line 264... Line 258...
264
		// ce qui peut arriver dans les commentaires
258
			" AND transmission = 1 ".
265
		// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
259
			' -- ' . __FILE__ . ':' . __LINE__;
266
		$resultat_modification = Cel::db()->executer($requete_modification . ' -- ' . __FILE__ . ':' . __LINE__);
260
		$resultat = Cel::db()->executer($requete);
267
 
-
 
268
		if ($resultat_modification === false) {
261
 
269
			$this->logger("CEL_bugs","Erreur de mise à jour de l\'observation : ".$id);
262
		if ($resultat === false) {
Line 270... Line 263...
270
		}
263
			$this->logger("CEL_bugs", "Erreur de mise à jour de l'observation : ".$id_obs);
271
 
264
		}
272
		return $resultat_modification;
265
		return $resultat;