Subversion Repositories Applications.dictionnaire

Rev

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

Rev 1 Rev 2
1
<?php
1
<?php
2
 
-
 
3
class Dictionnaire extends RestService {
2
class Dictionnaire extends RestService {
4
 
3
 
5
//+----------------------------------------------------------------------------------------------------------------+	
4
//+----------------------------------------------------------------------------------------------------------------+	
6
// Consulter
5
// Consulter
7
	public function consulter($ressources, $parametres) {
6
	public function consulter($ressources, $parametres) {
8
    	$entete_http = RestServeur::HTTP_CODE_CONTENU_REQUIS;
7
    	$entete_http = RestServeur::HTTP_CODE_CONTENU_REQUIS;
9
    	$corps_http = null;
8
    	$corps_http = null;
10
    	
9
    	
11
    	if (isset($ressources[0])) {
10
    	if (isset($ressources[0])) {
12
    		
11
    		
13
    		$methode = $ressources[0];
12
    		$methode = $ressources[0];
14
    		
13
    		
15
    		switch($methode) {
14
    		switch($methode) {
16
    			
15
    			
17
    			case 'mots':
16
    			case 'mots':
18
    				$retour = $this->getMots();
17
    				$retour = $this->getMots();
19
    			break;
18
    			break;
20
    			
19
    			
21
    			case 'def':
20
    			case 'def':
22
    				if(isset($ressources[1])) {
21
    				if(isset($ressources[1])) {
23
						$retour = $this->getDefinition($ressources[1]);
22
						$retour = $this->getDefinition($ressources[1]);
24
					} else {
23
					} else {
25
						$retour = $this->getToutesDefinitions();
24
						$retour = $this->getToutesDefinitions();
26
					}
25
					}
27
				break;
26
				break;
28
				case 'defs':
27
				case 'defs':
29
					$retour = $this->getToutesDefinitions();
28
					$retour = $this->getToutesDefinitions();
30
    			break;
29
    			break;
31
    			
30
    			
32
    			default:
31
    			default:
33
    				$retour = 'Le service requiert un nom de méthode';
32
    				$retour = 'Le service requiert un nom de méthode';
34
    			break;
33
    			break;
35
    		}
34
    		}
36
			
35
			
37
			$entete_http = RestServeur::HTTP_CODE_OK;
36
			$entete_http = RestServeur::HTTP_CODE_OK;
38
			$corps_http = json_encode($retour);	
37
			$corps_http = json_encode($retour);	
39
			
38
			
40
    	} else {
39
    	} else {
41
    		$entete_http = RestServeur::HTTP_CODE_CONTENU_REQUIS;
40
    		$entete_http = RestServeur::HTTP_CODE_CONTENU_REQUIS;
42
    	}
41
    	}
43
    	
42
    	
44
    	//RestServeur::envoyerEnteteStatutHttp($entete_http);
43
    	RestServeur::envoyerEnteteStatutHttp($entete_http);
45
    	header('Content-type : application/json; charset=UTF-8');
44
    	header('Content-type : application/json; charset=UTF-8');
46
    	echo $corps_http; 
45
    	echo $corps_http; 
47
    	exit;
46
    	exit;
48
    }
47
    }
49
    
48
    
50
    private function getDefinition($mot) {
49
    private function getDefinition($mot) {
51
    	
50
    	
52
    	$requete_selection_definition = 'SELECT valeur FROM onto_triples WHERE cle = "'.$this->simplifier($mot).'"';   
51
    	$requete_selection_definition = 'SELECT valeur FROM definitions WHERE cle = "'.$this->simplifier($mot).'"';   
53
    	$definition = $this->bdd->recuperer($requete_selection_definition);
52
    	$definition = $this->bdd->recuperer($requete_selection_definition);
54
    	
53
    	
55
		return $definition; 
54
		return $definition; 
56
    }
55
    }
57
    
56
    
58
    private function getToutesDefinitions() {
57
    private function getToutesDefinitions() {
59
    	
58
    	
60
    	$requete_selection_toutes_definitions = 'SELECT valeur FROM onto_triples';
-
 
61
    	
59
    	$requete_selection_toutes_definitions = 'SELECT valeur FROM definitions';
62
    	$definitions = $this->bdd->recupererTous($requete_selection_toutes_definitions);
60
    	$definitions = $this->bdd->recupererTous($requete_selection_toutes_definitions);
63
    	
61
    	
64
		return $definitions; 
62
		return $definitions; 
65
    }
63
    }
66
    
64
    
67
    private function getMots() {
-
 
68
    	
-
 
-
 
65
    private function getMots() {	
69
    	$requete_selection_mots = 'SELECT cle FROM onto_triples';
66
    	
70
    	
-
 
71
    	$mots = $this->bdd->recupererTous($requete_selection_mots);
67
    	$requete_selection_mots = 'SELECT cle FROM definitions';
72
    	
68
    	$mots = $this->bdd->recupererTous($requete_selection_mots);
73
    	    	
69
    		    	
74
    	foreach($mots as &$mot) {
70
    	foreach($mots as &$mot) {
75
    		$mot['cle'] = $mot['cle'];
71
    		$mot['cle'] = $mot['cle'];
76
    	} 
72
    	} 
77
    	
-
 
78
		return $mots; 	
73
		return $mots; 	
79
    }
74
    }
80
    
75
    
81
    function simplifier($chaine){
76
    function simplifier($chaine){
82
    	
77
    	
83
		$sans_accent = strtr($chaine,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
78
		$sans_accent = strtr($chaine,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
84
		'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
79
		'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
85
		
80
		
86
		$en_minuscule = strtolower($sans_accent);
81
		$en_minuscule = strtolower($sans_accent);
87
		
82
		
88
		return $en_minuscule;
83
		return $en_minuscule;
89
	}
84
	}
90
}
85
}
91
?>
86
?>
92
87