Subversion Repositories eFlore/Applications.cel

Rev

Rev 2045 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2045 Rev 2060
1
<?php
1
<?php
2
/**
2
/**
3
 * @package   jrest
3
 * @package   jrest
4
 * @author    Aurélien Peronnet <aurelien@tela-botania.org>
4
 * @author    Aurélien Peronnet <aurelien@tela-botania.org>
5
 * @copyright 2010, 2013 Tela-Botanica
5
 * @copyright 2010, 2013 Tela-Botanica
6
 * @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
6
 * @license   http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
7
 *
7
 *
8
 * Service de liaisons de mots clés à des observations.
8
 * Service de liaisons de mots clés à des observations.
9
 * Le service lie une ou plusieurs mots clés à une ou plusieurs observations
9
 * Le service lie une ou plusieurs mots clés à une ou plusieurs observations
10
 */
10
 */
11
 
11
 
12
class InventoryKeyWordObsLink extends Cel {
12
class InventoryKeyWordObsLink extends Cel {
13
			
13
			
14
	public function getElement($uid) { }
14
	public function getElement($uid) { }
15
	
15
	
16
	public function createElement($pairs) {		
16
	public function createElement($pairs) {		
17
		// Controle detournement utilisateur
17
		// Controle detournement utilisateur
18
		$this->controleUtilisateur($pairs['ce_utilisateur']);
18
		$this->controleUtilisateur($pairs['ce_utilisateur']);
19
	
19
	
20
		if (!isset($pairs['mots_cles']) || !isset($pairs['observations']) || !isset($pairs['ce_utilisateur'])) {
20
		if (!isset($pairs['mots_cles']) || !isset($pairs['observations']) || !isset($pairs['ce_utilisateur'])) {
21
			return;
21
			return;
22
		}
22
		}
23
		
23
		
24
		$ids_obs = explode(',',$pairs['observations']);
24
		$ids_obs = explode(',',$pairs['observations']);
25
		$ids_mots_cles = explode(',',$pairs['mots_cles']);
25
		$ids_mots_cles = explode(',',$pairs['mots_cles']);
26
		
26
		
27
		$gestionnaire_mots_cles = new LiaisonMotsCles($this->config,'obs');
27
		$gestion_mots_cles = new GestionMotsClesChemin($this->config,'obs');
28
		$liaison_mot_cle = $gestionnaire_mots_cles->ajouterLiaisonMotsCles($pairs['ce_utilisateur'], $ids_obs, $ids_mots_cles);
28
		$liaison_mot_cle = $gestion_mots_cles->lierParTableaux($ids_mots_cles, $ids_obs, $pairs['ce_utilisateur']);
-
 
29
		
-
 
30
		foreach($ids_obs as $id_element_lie) {
-
 
31
			$r_index = GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'obs');
29
				
32
		}		
30
		return $liaison_mot_cle;
33
		return $liaison_mot_cle;
31
	}
34
	}
32
 
35
 
33
	public function deleteElement($uid){
36
	public function deleteElement($uid){
34
		// Controle detournement utilisateur
37
		// Controle detournement utilisateur
35
		$this->controleUtilisateur($uid[0]);
38
		$this->controleUtilisateur($uid[0]);
36
	
39
	
37
		if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2])) {
40
		if (!isset($uid[0]) || !isset($uid[1]) || !isset($uid[2])) {
38
			return FALSE;
41
			return FALSE;
39
		}
42
		}
40
		
-
 
41
		$gestionnaire_mots_cles = new LiaisonMotsCles($this->config, 'obs');
43
		
42
		$mots_cles = explode(',', LiaisonMotsCles::nettoyerMotsCles($uid[2]));
44
		$id_utilisateur = $uid[0];
-
 
45
		$ids_obs = explode(',',$uid[1]);
-
 
46
		$ids_mots_cles = explode(',', GestionMotsClesChemin::nettoyerMotsClesAvantSuppression($uid[2]));
-
 
47
		
-
 
48
		$gestion_mots_cles = new GestionMotsClesChemin($this->config, 'obs');
43
		$ids_obs = explode(',',$uid[1]);
49
 
-
 
50
		$suppression_liaisons = $gestion_mots_cles->supprimerLiaisonsMotsCles($ids_mots_cles, $ids_obs, $id_utilisateur);
-
 
51
		foreach($ids_obs as $id_element_lie) {
-
 
52
			$r_index = GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'obs');
44
		return $gestionnaire_mots_cles->supprimerLiaisonsMotsClesEtRegenererIndexTexte($uid[0], $ids_obs, $mots_cles);
53
		}
45
	}
54
	}
46
}
55
}