Subversion Repositories eFlore/Applications.cel

Rev

Rev 522 | Rev 528 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 522 Rev 525
Line 35... Line 35...
35
	 */
35
	 */
36
	public function getElement($params = array()) {
36
	public function getElement($params = array()) {
37
		// Initialisation des variables
37
		// Initialisation des variables
38
		$info = array();
38
		$info = array();
39
		$contenu = '';
39
		$contenu = '';
40
			
-
 
41
		// Pré traitement des paramêtres
-
 
42
		$pour_bdd = false;
-
 
43
		$p = $this->traiterParametres(array('service', 'format'), $params, $pour_bdd);
-
 
44
		extract($p);
-
 
45
		$this->parametres = $params;
-
 
46
		$this->squelette_dossier = dirname(__FILE__).DIRECTORY_SEPARATOR.'squelettes'.DIRECTORY_SEPARATOR;
-
 
47
				
-
 
48
		// Récupération de la liste des flux
-
 
49
		$this->chargerListeDesFlux();
-
 
Line 50... Line -...
50
		
-
 
51
		// Chargement du bon type de service demandé
-
 
52
		if (isset($service)) {
40
		
53
			$this->service = $this->traiterNomService($service);
41
		if (! $this->etreFluxAdmin() || $this->authentifier()) {
54
			$methode = $this->getNomMethodeService();
42
			// Pré traitement des paramêtres
55
			if (method_exists($this, $methode)) {
43
			$pour_bdd = false;
56
				if (isset($format) && preg_match('/^(?:rss1|rss2|atom)$/i', $format)) {
-
 
57
					// Mise en minuscule de l'indication du format
44
			$p = $this->traiterParametres(array('service', 'format'), $params, $pour_bdd);
58
					$this->format = strtolower($format);
-
 
59
					// Définition du fichier squelette demandé
-
 
60
					$this->squelette = $this->squelette_dossier.$this->format.'.tpl.xml';
-
 
61
				} else if (isset($this->flux[$this->service])) {
45
			extract($p);
62
					$this->format = '';
46
			$this->parametres = $params;
63
					$this->messages[] = "Le service CEL Syndication nécessite d'indiquer en second paramètre le format : rss1, rss2 ou atom.";
-
 
64
				}
-
 
65
 
-
 
66
				if (!isset($this->flux[$this->service]) || isset($this->format)) {
-
 
67
					// Suppression des paramêtres inutile pour le reste des méthodes
-
 
68
					array_shift($this->parametres);
-
 
Line -... Line 47...
-
 
47
			$this->squelette_dossier = dirname(__FILE__).DIRECTORY_SEPARATOR.'squelettes'.DIRECTORY_SEPARATOR;
-
 
48
					
-
 
49
			// Récupération de la liste des flux
-
 
50
			$this->chargerListeDesFlux();
-
 
51
			
-
 
52
			// Chargement du bon type de service demandé
-
 
53
			if (isset($service)) {
-
 
54
				$this->service = $this->traiterNomService($service);
-
 
55
				$methode = $this->getNomMethodeService();
-
 
56
				if (method_exists($this, $methode)) {
-
 
57
					if (isset($format) && preg_match('/^(?:rss1|rss2|atom)$/i', $format)) {
-
 
58
						// Mise en minuscule de l'indication du format
-
 
59
						$this->format = strtolower($format);
-
 
60
						// Définition du fichier squelette demandé
-
 
61
						$this->squelette = $this->squelette_dossier.$this->format.'.tpl.xml';
-
 
62
					} else if (isset($this->flux[$this->service])) {
-
 
63
						$this->format = '';
-
 
64
						$this->messages[] = "Le service CEL Syndication nécessite d'indiquer en second paramètre le format : rss1, rss2 ou atom.";
-
 
65
					}
-
 
66
	
-
 
67
					if (!isset($this->flux[$this->service]) || isset($this->format)) {
-
 
68
						// Suppression des paramêtres inutile pour le reste des méthodes
-
 
69
						array_shift($this->parametres);
69
					array_shift($this->parametres);
70
						array_shift($this->parametres);
70
					
71
						
-
 
72
						// Récupération du contenu à renvoyer
-
 
73
						$contenu = $this->$methode();
-
 
74
					}
71
					// Récupération du contenu à renvoyer
75
				} else {
72
					$contenu = $this->$methode();
76
					$this->messages[] = "Le type d'information demandé '$this->service' n'est pas disponible.";
73
				}
77
				}
74
			} else {
78
			} else {
75
				$this->messages[] = "Le type d'information demandé '$this->service' n'est pas disponible.";
-
 
76
			}
-
 
77
		} else {
79
				$this->messages[] = "Le service CEL Syndication Observation nécessite d'indiquer en premier paramètre le type d'information demandé.";
Line 78... Line 80...
78
			$this->messages[] = "Le service CEL Syndication Observation nécessite d'indiquer en premier paramètre le type d'information demandé.";
80
			}
79
		}
81
		}
80
		
82
		
Line 202... Line 204...
202
		$contenu = $this->executerService($elements);
204
		$contenu = $this->executerService($elements);
203
		return $contenu;
205
		return $contenu;
204
	}
206
	}
Line 205... Line 207...
205
	
207
	
206
	private function getServicePourAdmin() {
-
 
207
		$contenu = '';
-
 
208
		if ($this->authentifier()) {
208
	private function getServicePourAdmin() {
209
			// Construction de la requête
209
		// Construction de la requête
210
			$requete = 	(($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
210
		$requete = 	(($this->distinct) ? 'SELECT DISTINCT' : 'SELECT').' * '.
211
				'FROM cel_inventory '.
211
			'FROM cel_inventory '.
212
				'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby  : 'date_modification DESC').' '.
212
			'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby  : 'date_modification DESC').' '.
213
				"LIMIT $this->start,$this->limit ";
213
			"LIMIT $this->start,$this->limit ";
214
			
214
		
215
			$elements = $this->executerRequete($requete);
215
		$elements = $this->executerRequete($requete);
216
			
216
		
217
			// Création du contenu
217
		// Création du contenu
218
			$contenu = $this->executerService($elements);
-
 
219
		}
218
		$contenu = $this->executerService($elements);
220
		return $contenu;
219
		return $contenu;
Line 221... Line 220...
221
	}
220
	}
222
	
221
	
Line 386... Line 385...
386
		$categorie = $this->nettoyerTexte($categorie);
385
		$categorie = $this->nettoyerTexte($categorie);
387
		return $categorie;
386
		return $categorie;
388
	}
387
	}
Line 389... Line 388...
389
	
388
	
390
	private function etreFluxAdmin() {
389
	private function etreFluxAdmin() {
391
		return ($this->service == 'pour-admin') ? true : false;
390
		return ($this->service == 'pour-admin' || $_GET['admin'] == '1') ? true : false;
Line 392... Line 391...
392
	}
391
	}
393
	
392
	
394
	private function creerUrlService() {
393
	private function creerUrlService() {