Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3135 → Rev 3136

/branches/v2.28-semoir/jrest/services/InventoryKeyWordObsLink.php
New file
0,0 → 1,61
<?php
// declare(encoding='UTF-8');
/**
* Service de liaisons de mots clés à des observations.
* Le service lie une ou plusieurs mots clés à une ou plusieurs observations.
*
* @internal Mininum PHP version : 5.2
* @category CEL
* @package Services
* @subpackage Images
* @version 0.1
* @author Mathias CHOUET <mathias@tela-botanica.org>
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @author Aurelien PERONNET <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @copyright 1999-2014 Tela Botanica <accueil@tela-botanica.org>
*/
class InventoryKeyWordObsLink extends Cel {
 
public function getElement($uid) { }
 
public function createElement($pairs) {
// Controle detournement utilisateur
$this->controleUtilisateur($pairs['ce_utilisateur']);
 
if (!isset($pairs['mots_cles']) || !isset($pairs['observations']) || !isset($pairs['ce_utilisateur'])) {
return;
}
 
$ids_obs = explode(',',$pairs['observations']);
$ids_mots_cles = explode(',',$pairs['mots_cles']);
 
$gestion_mots_cles = new GestionMotsClesChemin($this->config,'obs');
$liaison_mot_cle = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_obs, false);
 
foreach ($ids_obs as $id_element_lie) {
GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'obs');
}
return $liaison_mot_cle;
}
 
public function deleteElement($uid){
// Controle detournement utilisateur
$this->controleUtilisateur($uid[0]);
 
if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2])) {
return false;
}
 
$id_utilisateur = $uid[0];
$ids_obs = explode(',', $uid[1]);
$ids_mots_cles = explode(',', GestionMotsClesChemin::nettoyerMotsClesAvantSuppression($uid[2]));
 
$gestion_mots_cles = new GestionMotsClesChemin($this->config, 'obs');
$suppression_liaisons = $gestion_mots_cles->supprimerLiaisonsMotsCles($ids_mots_cles, $ids_obs, $id_utilisateur);
foreach($ids_obs as $id_element_lie) {
GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'obs');
}
}
}