Subversion Repositories eFlore/Applications.cel

Rev

Rev 1840 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1840 Rev 1914
Line 1... Line 1...
1
<?php
1
<?php
2
// declare(encoding='UTF-8');
-
 
3
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
-
 
4
/**
2
/**
5
* PHP Version 5
-
 
6
*
-
 
7
* @category  PHP
3
 * @category  PHP
8
* @package   jrest
4
 * @package   jrest
9
* @author    Aurélien Peronnet <aurelien@tela-botania.org>
5
 * @author    Aurélien Peronnet <aurelien@tela-botania.org>
-
 
6
 * @author    Raphaël Droz <raphael@tela-botania.org>
10
* @copyright 2010 Tela-Botanica
7
 * @copyright 2010, 2013 Tela-Botanica
11
* @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
8
 * @license   Licence CECILL <http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt>
12
* @version   SVN: <svn_id>
-
 
13
* @link      /doc/jrest/
9
 * @license	  GPL v3 <http://www.gnu.org/licenses/gpl.txt>
14
*/
-
 
15
 
-
 
16
/**
-
 
17
* in : utf8
-
 
18
* out : utf8
-
 
19
* 
10
 *
20
 * Service de liaisons de mots clés à des images.
11
 * Service de liaisons de mots clés à des images.
21
 * Le service lie une ou plusieurs mots clés à une ou plusieurs images
12
 * Le service lie une ou plusieurs mots clés à une ou plusieurs images
-
 
13
 */
22
*
14
 
-
 
15
require_once('InventoryKeyWordObsLink.php');
23
*/
16
 
24
class InventoryKeyWordImageLink extends Cel {
17
class InventoryKeyWordImageLink extends Cel {
Line 25... Line 18...
25
			
18
			
Line 26... Line 19...
26
	public function getElement($uid) {
19
	public function getElement($uid) {
Line 34... Line 27...
34
	
27
	
35
		if (!isset($pairs['mots_cles']) || !isset($pairs['images']) || !isset($pairs['ce_utilisateur'])) {
28
		if (!isset($pairs['mots_cles']) || !isset($pairs['images']) || !isset($pairs['ce_utilisateur'])) {
36
			return;
29
			return;
Line 37... Line -...
37
		}
-
 
38
		
30
		}
39
		$pairs['images'] = rtrim($pairs['images'],',');
-
 
40
		$id_images = explode(',',$pairs['images']);
-
 
41
		
31
		
Line 42... Line 32...
42
		$pairs['mots_cles'] = rtrim($pairs['mots_cles'],',');
32
		$id_images = array_filter(explode(',', $pairs['images']));
43
		$mots_cles = explode(',',$pairs['mots_cles']);
33
		$mots_cles = array_filter(explode(',', $pairs['mots_cles']));
44
		
34
		
45
		// Pour le moment on ne peut que supprimer les mots clés et ajouter les nouveaux à cause du fonctionnement
35
		// Pour le moment on ne peut que supprimer les mots clés et ajouter les nouveaux à cause du fonctionnement
46
		// de l'arbre de mots clés des images
36
		// de l'arbre de mots clés des images
47
		$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'images');
-
 
48
		$suppression_liaison_mot_cle = $gestionnaire_mots_cles->supprimerToutesLiaisonsPourIdImageOuObs($pairs['ce_utilisateur'], $id_images);
-
 
49
		$liaison_mot_cle = $gestionnaire_mots_cles->ajouterLiaisonMotsCles($pairs['ce_utilisateur'],$id_images, $mots_cles);
37
		$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'images');
Line 50... Line 38...
50
				
38
		$suppression_liaison_mot_cle = $gestionnaire_mots_cles->supprimerToutesLiaisonsPourIdImageOuObs($pairs['ce_utilisateur'], $id_images);
51
		return $liaison_mot_cle;
-
 
52
	}
-
 
53
 
39
		return $gestionnaire_mots_cles->ajouterLiaisonMotsCles($pairs['ce_utilisateur'],$id_images, $mots_cles);
54
	public function deleteElement($uid){
40
	}
Line 55... Line 41...
55
		$retour = false;
41
 
56
		
42
	public function deleteElement($uid){
57
		// Controle detournement utilisateur
43
		// Controle detournement utilisateur
58
		$this->controleUtilisateur($uid[0]);
-
 
59
	
-
 
60
		if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2]) || !$this->estUnIdentifiantMotCle($uid[2])) {
-
 
61
			return;
-
 
62
		}
-
 
63
		
-
 
64
		$id_images = explode(',',$uid[1]);
-
 
65
		$id_utilisateur = $uid[0];
-
 
66
				
-
 
67
		$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'images');
-
 
Line 68... Line 44...
68
		
44
		$this->controleUtilisateur($uid[0]);
69
		$mots_cles = $gestionnaire_mots_cles->nettoyerMotsCles($uid[2]);
45
	
70
		$mots_cles = explode(',',$mots_cles);
-
 
71
		
-
 
72
		$suppression_liaison_mot_cle = $gestionnaire_mots_cles->supprimerLiaisonMotsClesEtRegenererIndexTexte($id_utilisateur, $id_images, $mots_cles);
-
 
73
 
-
 
74
		return $suppression_liaison_mot_cle;
46
		if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2]) || ! InventoryKeyWordObsLink::estUnIdentifiantMotCle($uid[2])) {
75
	}
-
 
76
 
47
			return FALSE;