New file |
0,0 → 1,59 |
<?php |
class CelValidationObservation extends Cel { |
|
/** |
* Méthode appelée avec une requête de type POST avec un identifiant d'obs. |
* Modifie le taxon associé à une observation avec les informations envoyées |
* |
* @param int $uid[0] identifiant observation |
* @param pairs array tableau contenant les valeurs à modifier |
*/ |
public function updateElement($uid,$pairs) |
{ |
// ce service est uniquement destiné à être appelé en local, |
// depuis le serveur lui même |
// en particulier par l'application identiplante |
$this->controleAppelIpAutorisee(); |
$this->verifierParametresObligatoires($uid, $pairs); |
$id = $uid[0]; |
|
$gestion_observation = new GestionObservation($this->config); |
$utilisateur = $pairs['ce_utilisateur']; |
unset($pairs['ce_utilisateur']); |
$modification = $gestion_observation->modifierObservationPublique($utilisateur, $id, $pairs); |
|
if($modification !== false) { |
$resultat = 'ok'; |
$this->envoyer($resultat); |
exit; |
} else { |
$info = array(); |
$info = 'Impossible de modifier l\'observation associée à cet identifiant '; |
$this->envoyer($info, 'text/html', 'utf-8', false); |
exit; |
} |
} |
|
private function verifierParametresObligatoires($uid ,$params) { |
$params_obligatoires = array('id_observation', |
'ce_utilisateur', |
'nom_sel'); |
$info = array(); |
|
if(!isset($uid[0]) || !is_numeric($uid[0])) { |
$info .= 'l\' identifiant doit être un entier '; |
} |
|
foreach($params_obligatoires as $param) { |
if(!isset($params[$param]) || trim($params[$param]) == "") { |
$info = 'le paramètre '.$param.' doit exister et ne peut pas être vide '; |
} |
} |
|
if(!empty($info)) { |
$this->envoyer($info, 'text/html', 'utf-8', false); |
exit; |
} |
} |
} |
?> |