Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 530 Rev 538
Line 20... Line 20...
20
 
20
 
21
	/**
21
	/**
22
	 * Méthode appelée avec une requête de type GET.
22
	 * Méthode appelée avec une requête de type GET.
23
	 */
23
	 */
24
	public function getElement($params) {
-
 
25
		$retour = null;
24
	public function getElement($params) {
26
		$parametres = $this->traiterParametres(array('sortie', 'utilisateur'), $params, false);
25
		$parametres = $this->traiterParametres(array('mode', 'utilisateur'), $params, false);
-
 
26
		extract($parametres);
27
		extract($parametres);
27
		$contenu = '';
-
 
28
		
-
 
29
		if ($this->authentifierUtilisateur()) {
-
 
30
			$retour = null;
28
 
31
			
29
		if (isset($sortie)) {
32
			if (isset($mode)) {
30
			$methode = $this->traiterNomMethodeGet($sortie);
33
				$methode = $this->traiterNomMethodeGet($mode);
31
			if (method_exists($this, $methode)) {
34
				if (method_exists($this, $methode)) {
-
 
35
					$retour = $this->$methode($parametres);
-
 
36
				} else {
-
 
37
					$service = get_class($this);
-
 
38
					$this->messages[] = "Ce type de mode '$mode' pour le service '$service' n'est pas disponible.";
32
				$retour = $this->$methode($parametres);
39
				}
33
			} else {
40
			} else {
34
				$this->messages[] = "Ce type de carte '$methode' n'est pas disponible.";
41
				$this->messages[] = "Vous devez indiquer un type de mode.";
35
			}
-
 
36
		} else {
-
 
37
			$this->messages[] = "Vous devez indiquer un type de sortie.";
-
 
38
		}
42
			}
39
 
43
	
40
		if (is_null($retour)) {
44
			if (is_null($retour)) {
41
			$info = 'Un problème est survenu : '.print_r($this->messages, true);
-
 
42
			$this->envoyer($info);
45
				$contenu = 'Un problème est survenu : '.print_r($this->messages, true);
43
		} else {
46
			} else {
44
			if ($retour['type'] == 'widget') {
47
				if ($retour['type'] == 'widget') {
45
				$squelette = dirname(__FILE__).DIRECTORY_SEPARATOR.'squelettes'.DIRECTORY_SEPARATOR.$retour['squelette'].'.tpl.html';
48
					$squelette = dirname(__FILE__).DIRECTORY_SEPARATOR.'squelettes'.DIRECTORY_SEPARATOR.$retour['squelette'].'.tpl.html';
46
				$html = $this->traiterSquelettePhp($squelette, $retour['donnees']);
-
 
47
				$this->envoyer($html);
49
					$contenu = $this->traiterSquelettePhp($squelette, $retour['donnees']);
48
			} else if ($retour['type'] == 'json') {
50
				} else if ($retour['type'] == 'json') {
-
 
51
					$contenu = $retour['donnees'];
49
				$this->envoyer($retour['donnees']);
52
				}
50
			}
53
			}
-
 
54
		}
-
 
55
				
-
 
56
		// Envoie sur la sortie standard
-
 
57
		$encodage = 'UTF-8';
-
 
58
		$mime = 'text/html';
-
 
59
		$formatage_json = (isset($retour) && $retour['type'] == 'json') ? true : false;
51
		}
60
		$this->envoyer($contenu, $mime, $encodage, $formatage_json);
Line 52... Line 61...
52
	}
61
	}
53
 
62
 
54
	/**
63
	/**
55
	 * Carte par défaut
64
	 * Carte par défaut
56
	 */
65
	 */
57
	public function getDoublonHtml($parametres) {
66
	private function getDoublonHtml($parametres) {
Line 58... Line 67...
58
		$widget = null;
67
		$widget = null;
59
		extract($parametres);
68
		$utilisateur = $this->getAuthIdentifiant();
60
 
69
 
61
		// Création des infos du widget
70
		// Création des infos du widget