Rev 930 | Rev 958 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
// declare(encoding='UTF-8');
/**
* PHP Version 5
*
* @category PHP
* @package jrest
* @author Aurélien Peronnet <aurelien@tela-botania.org>
* @copyright 2010 Tela-Botanica
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
* @version SVN: <svn_id>
* @link /doc/jrest/
*/
/**
* in : utf8
* out : utf8
*
* Service de liaisons de mots clés à des observations.
* Le service lie une ou plusieurs mots clés à une ou plusieurs observations
*
*/
class InventoryKeyWordObsLink extends Cel {
public function getElement($uid) {
}
public function createElement($pairs) {
// Controle detournement utilisateur
session_start();
$this->controleUtilisateur($pairs['ce_utilisateur']);
if (!isset($pairs['mots_cles']) || !isset($pairs['observations']) || !isset($pairs['ce_utilisateur'])) {
return;
}
$observations = explode(',',$pairs['observations']);
$mots_cles = explode(',',$pairs['mots_cles']);
$gestionnaire_observation = new RechercheObservation($this->config);
$ids_obs = $gestionnaire_observation->obtenirIdObservationsPourOrdre($pairs['ce_utilisateur'],$observations);
$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'obs');
$liaison_mot_cle = $gestionnaire_mots_cles->ajouterLiaisonMotsCles($ids_obs, $mots_cles);
return $liaison_mot_cle;
}
public function deleteElement($uid){
$retour = false;
// Controle detournement utilisateur
session_start();
$this->controleUtilisateur($uid[0]);
if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2]) || !$this->estUnIdentifiantMotCle($uid[2])) {
return;
}
$mots_cles = $this->nettoyerMotsCles($uid[2]);
$mots_cles = explode(',',$mots_cles);
$ordre_observations = explode(',',$uid[1]);
$id_utilisateur = $uid[0];
$gestionnaire_observation = new RechercheObservation($this->config);
$ids_obs = $gestionnaire_observation->obtenirIdObservationsPourOrdre($id_utilisateur,$ordre_observations);
$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'obs');
$suppression_liaison_mot_cle = $gestionnaire_mots_cles->supprimerLiaisonMotsCles($ids_obs, $mots_cles);
return $suppression_liaison_mot_cle;
}
private function estUnIdentifiantMotCle($chaine) {
return trim($chaine) != '' && preg_match('/[0-9A-Z]+\.[0-9A-Z]+/i', $chaine);
}
}
?>