Subversion Repositories Sites.obs-saisons.fr

Rev

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

Rev 67 Rev 92
1
<?php
1
<?php
2
 
2
 
-
 
3
class OdsTriple extends JRestService {
-
 
4
	
-
 
5
	/**
-
 
6
     * Méthode appelée avec une requête de type GET.
-
 
7
     *
-
 
8
     */
-
 
9
    function getElement($param = array()) {
-
 
10
    	    	    	
-
 
11
    	$abreviation_demandee = $param[0];
-
 
12
    	
-
 
13
    	$abreviation = $this->transformerParametreEnAbreviation($abreviation_demandee);
-
 
14
    	
-
 
15
        $info = $this->obtenirValeursListeParAbreviation($abreviation);
-
 
16
        
-
 
17
        $info = $this->formaterListeTripleEnTableauCleValeur($info);
-
 
18
       
-
 
19
        // Envoi sur la sortie standard
-
 
20
        $this->envoyer($info);
-
 
21
    }
-
 
22
    
-
 
23
    private function transformerParametreEnAbreviation($parametre) {
-
 
24
    	
-
 
25
    	$parametre_tirets_supprimes = str_replace('-', ' ', $parametre);
-
 
26
    	$parametre_mots_majuscules = ucwords($parametre_tirets_supprimes);
-
 
27
    	$abreviation = str_replace(' ', '',$parametre_tirets_supprimes);
-
 
28
    	
-
 
29
    	return $abreviation;
-
 
30
    }
-
 
31
    
-
 
32
    private function formaterListeTripleEnTableauCleValeur($info) {
-
 
33
    	
-
 
34
    	$tableau_cle_valeur = array();
-
 
35
    	
-
 
36
    	foreach($info as $id_triple => $triple) {
-
 
37
    		$tableau_cle_valeur[$id_triple] = $triple['ot_valeur'];
-
 
38
    	}
-
 
39
    	
-
 
40
    	return $tableau_cle_valeur;
3
class GestionTriple extends JRestService {
41
    }
4
		
42
		
5
	protected function obtenirValeursListeParId($id_liste) {
43
	protected function obtenirValeursListeParId($id_liste) {
6
		
44
		
7
		$requete = 'SELECT * FROM ods_triple WHERE ot_ce_parent ='.$this->proteger($id_liste);
45
		$requete = 'SELECT * FROM ods_triple WHERE ot_ce_parent ='.$this->proteger($id_liste);
8
		$resultat = $this->executerRequete($requete);
46
		$resultat = $this->executerRequete($requete);
9
		
47
		
10
		return $resultat;
48
		return $resultat;
11
		
49
		
12
	}
50
	}
13
	
51
	
14
	protected function obtenirValeursListeParAbreviation($abreviation_triple) {
52
	protected function obtenirValeursListeParAbreviation($abreviation_triple) {
15
		
53
		
16
		$requete = 'SELECT * FROM ods_triples WHERE ot_ce_parent = (SELECT ot_id_triple FROM ods_triples WHERE ot_cle ='.$this->proteger($abreviation_triple).')';		
54
		$requete = 'SELECT * FROM ods_triples WHERE ot_ce_parent = (SELECT ot_id_triple FROM ods_triples WHERE ot_cle ='.$this->proteger($abreviation_triple).')';		
17
		$resultat = $this->executerRequete($requete);
55
		$resultat = $this->executerRequete($requete);
18
		
56
		
19
		return $this->grouperResultat($resultat);
57
		return $this->grouperResultat($resultat);
20
		
58
		
21
	}
59
	}
22
	
60
	
23
	protected function obtenirValeurTripleParId($id_triple) {
61
	protected function obtenirValeurTripleParId($id_triple) {
24
		
62
		
25
		$requete = 'SELECT * FROM ods_triple WHERE ot_id_triple = '.$this->proteger($id_triple);
63
		$requete = 'SELECT * FROM ods_triples WHERE ot_id_triple = '.$this->proteger($id_triple);
26
		$resultat = $this->executerRequete($requete);
64
		$resultat = $this->executerRequete($requete);
27
		
65
				
28
		return $resultat['ot_valeur'];
66
		return $resultat[0]['ot_valeur'];
29
		
67
		
30
	}
68
	}
31
	
69
	
32
	protected function obtenirValeurTripleParAbreviation($abreviation_triple) {
70
	protected function obtenirValeurTripleParAbreviation($abreviation_triple) {
33
		
71
		
34
		$requete = 'SELECT * FROM ods_triple WHERE ot_cle = '.$this->proteger($abreviation_triple);
72
		$requete = 'SELECT * FROM ods_triples WHERE ot_cle = '.$this->proteger($abreviation_triple);
35
		$resultat = $this->executerRequete($requete);
73
		$resultat = $this->executerRequete($requete);
36
		
74
		
37
		return $resultat['ot_valeur'];
75
		return $resultat[0]['ot_valeur'];
38
		
76
		
39
	}
77
	}
40
	
78
	
41
	private function grouperResultat($tableau_resultat_requete_triple) {
79
	private function grouperResultat($tableau_resultat_requete_triple) {
42
		
80
		
43
		$tableau_resultat_requete_triple_ordonne = array();
81
		$tableau_resultat_requete_triple_ordonne = array();
44
		
82
		
45
		foreach($tableau_resultat_requete_triple as $valeur_triple) {
83
		foreach($tableau_resultat_requete_triple as $valeur_triple) {
46
			$tableau_resultat_requete_triple_ordonne[$valeur_triple['ot_id_triple']] = $valeur_triple;
84
			$tableau_resultat_requete_triple_ordonne[$valeur_triple['ot_id_triple']] = $valeur_triple;
47
		}
85
		}
48
		
86
		
49
		return $tableau_resultat_requete_triple_ordonne;
87
		return $tableau_resultat_requete_triple_ordonne;
50
	}
88
	}
51
	
89
	
52
	protected function renvoyerInformationStadeAPartirChaineTriple($stade_observation_complet) {   
90
	protected function renvoyerInformationStadeAPartirChaineTriple($stade_observation_complet) {   
53
					
91
					
54
	   	$infos_stades = split('_',$stade_observation_complet);
92
	   	$infos_stades = split('_',$stade_observation_complet);
55
	   	$titre_numero_stade = array('nom','abreviation','numero');
93
	   	$titre_numero_stade = array('nom','abreviation','numero');
56
	   			
94
	   			
57
	   	if($this->estUnEvenementAvecDesSousStades($stade_observation_complet)) {
95
	   	if($this->estUnEvenementAvecDesSousStades($stade_observation_complet)) {
58
	   		$titre_numero_stade['nom'] = $infos_stades[1];
96
	   		$titre_numero_stade['nom'] = $infos_stades[1];
59
	   		$titre_numero_stade['numero'] = $infos_stades[3];	
97
	   		$titre_numero_stade['numero'] = $infos_stades[3];	
60
	   		$titre_numero_stade['abreviation'] = $infos_stades[1];
98
	   		$titre_numero_stade['abreviation'] = $infos_stades[1];
61
	   	} else {
99
	   	} else {
62
	   		$titre_numero_stade['nom'] = $infos_stades[1].' '.$infos_stades[2];
100
	   		$titre_numero_stade['nom'] = $infos_stades[1].' '.$infos_stades[2];
63
	   		$titre_numero_stade['abreviation'] = $infos_stades[1].'_'.$infos_stades[2];
101
	   		$titre_numero_stade['abreviation'] = $infos_stades[1].'_'.$infos_stades[2];
64
	   		$titre_numero_stade['numero'] = '';
102
	   		$titre_numero_stade['numero'] = '';
65
	   	}
103
	   	}
66
	   	
104
	   	
67
	   	return $titre_numero_stade;
105
	   	return $titre_numero_stade;
68
	}
106
	}
69
    
107
    
70
    protected function estUnEvenementAvecDesSousStades($evenement) {
108
    protected function estUnEvenementAvecDesSousStades($evenement) {
71
    	
109
    	
72
    	$infos_stades = split('_',$evenement);
110
    	$infos_stades = split('_',$evenement);
73
	   			
111
	   			
74
   		if(count($infos_stades) <= 3) {
112
   		if(count($infos_stades) <= 3) {
75
			return false;
113
			return false;
76
   		}
114
   		}
77
   		
115
   		
78
   		return true;
116
   		return true;
79
    }
117
    }
80
	
-
 
81
}
118
}
82
 
119
 
83
?>
120
?>