New file |
0,0 → 1,53 |
<?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'])); |
|
// Pour le moment on ne peut que supprimer les mots clés et ajouter les nouveaux à cause du fonctionnement |
// de l'arbre de mots clés des images |
$gestion_mots_cles = new GestionMotsClesChemin($this->config,'images'); |
$gestion_mots_cles->supprimerToutesLiaisonsPourIdsElementsLies($ids_images); |
|
$liaison = true; |
if(!empty($ids_mots_cles)) { |
$liaison = $gestion_mots_cles->lierParTableaux($ids_mots_cles, $ids_images, $pairs['ce_utilisateur']); |
} |
|
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 |
} |
} |
?> |