<?php
/**
 * @category  PHP
 * @package   jrest
 * @author    Aurélien Peronnet <aurelien@tela-botania.org>
 * @author    Raphaël Droz <raphael@tela-botania.org>
 * @copyright 2010, 2013 Tela-Botanica
 * @license   Licence CECILL <http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt>
 * @license	  GPL v3 <http://www.gnu.org/licenses/gpl.txt>
 *
 * Service de liaisons de mots clés à des images.
 * Le service lie une ou plusieurs mots clés à une ou plusieurs images
 */

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 ?
			$r_index = 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
	}
}
?>