Rev 2314 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php
// declare(encoding='UTF-8');
/**
* Service de liaisons de mots clés à des images.
* Le service lie une ou plusieurs mots clés à une ou plusieurs images.
*
* @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 InventoryKeyWordImageLink extends Cel {
public function createElement($pairs) {
// Controle detournement utilisateur
$this->controleUtilisateur($pairs['ce_utilisateur']);
if (!isset($pairs['mots_cles']) || !isset($pairs['images']) || !isset($pairs['ce_utilisateur'])) {
return;
}
$ids_images = array_filter(explode(',', $pairs['images']));
$ids_mots_cles = array_filter(explode(',', $pairs['mots_cles']));
$gestion_mots_cles = new GestionMotsClesChemin($this->config,'images');
$liaison = true;
$liaison = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_images, true);
foreach ($ids_images as $id_element_lie) {
//TODO: que faire si la régénération d'index texte échoue ?
GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'images');
}
return $liaison;
}
public function deleteElement($uid){
// n'est jamais appelée car pour supprimer les mots clés d'une image
// on appelle createElement avec des mots clés vides
// car les mots clés images ne fonctionnent pas pareil que ceux des obs
// dans l'interface
}
}