Subversion Repositories eFlore/Applications.del

Rev

Rev 2214 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2214 Rev 2217
Line 28... Line 28...
28
	public function __construct(Conteneur $conteneur) {
28
	public function __construct(Conteneur $conteneur) {
29
		$this->conteneur = $conteneur;
29
		$this->conteneur = $conteneur;
30
		$this->bdd = $this->conteneur->getBdd();
30
		$this->bdd = $this->conteneur->getBdd();
31
		$this->sql = $this->conteneur->getSql();
31
		$this->sql = $this->conteneur->getSql();
Line 32... Line 32...
32
 
32
 
33
		$this->mappings['observations'] = $this->conteneur->getParametreTableau('observations.mapping');
33
		$this->mappings['observations'] = $this->conteneur->getParametreTableau('observations.tepik');
34
		$this->mappings['images'] = $this->conteneur->getParametreTableau('images.mapping');
34
		$this->mappings['images'] = $this->conteneur->getParametreTableau('images.mapping');
35
		$this->mappings['votes'] = $this->conteneur->getParametreTableau('votes.mapping');
35
		$this->mappings['votes'] = $this->conteneur->getParametreTableau('votes.tepik');
36
		$this->mappings['commentaires'] = $this->conteneur->getParametreTableau('commentaires.mapping');
36
		$this->mappings['commentaires'] = $this->conteneur->getParametreTableau('commentaires.tepik');
37
		// les deux alias suivants sont particuliers afin d'éviter un conflit d'alias lors des jointures avec del_commentaire_vote
37
		// les deux alias suivants sont particuliers afin d'éviter un conflit d'alias lors des jointures avec del_commentaire_vote
38
		$this->mappings['commentaires']['ce_utilisateur'] = '__auteur_com';
38
		$this->mappings['commentaires']['ce_utilisateur'] = '__auteur_com';
39
		$this->mappings['commentaires']['date'] = '__date_com';
39
		$this->mappings['commentaires']['date'] = '__date_com';
Line 171... Line 171...
171
		if (!isset($this->observation['auteur.nom'])) {
171
		if (!isset($this->observation['auteur.nom'])) {
172
			$this->observation['auteur.nom'] = '[inconnu]';
172
			$this->observation['auteur.nom'] = '[inconnu]';
173
		}
173
		}
174
	}
174
	}
Line 175... Line -...
175
 
-
 
176
	/**
-
 
177
	 * Modifie une observation directement dans le CEL en faisant un appel à un web service du CEL.
-
 
178
	 * Utilisé uniquement par les admins.
-
 
179
	 * Permet de dépublier une observation.
-
 
180
	 *
-
 
181
	 * @param array		$ressources tableau des informations contenues dans l'url après le nom du service
-
 
182
	 * @param array		$parametres contenu du post
-
 
183
	 * @return mixed	Chaine "OK" (en majuscule) en cas de succès, booléen "false" en cas d'échec
-
 
184
	 */
-
 
185
	public function modifier($ressources, $parametres) {
-
 
186
		$gestionUtilisateurs = $this->conteneur->getUtilisateur();
-
 
187
		$gestionUtilisateurs->etreUtilisateurAvecDroitAdmin();
175
 
188
 
-
 
189
		$retour = false;
-
 
190
		if (isset($parametres['transmission'])) {
-
 
191
			$idObs = $ressources[0];
-
 
192
			$clientRest = $this->conteneur->getRestClient();
-
 
193
			$urlTpl = $this->conteneur->getParametre('urlServiceCelObs');
-
 
194
			$url = $urlTpl.$idObs;
-
 
195
			$retourCel = $clientRest->modifier($url, $parametres);
-
 
196
			$retour = preg_match('/^OK$/i', $retourCel) ? 'OK' : false;
-
 
197
			if ($retour === false) {
-
 
198
				$message = "Erreur du web service CEL : ".$retourCel;
-
 
199
				$code = RestServeur::HTTP_CODE_MAUVAISE_REQUETE;
-
 
200
				throw new Exception($message, $code);
-
 
201
			}
-
 
202
		} else {
-
 
203
			$message = "Ce web service doit contenir un paramètre 'transmission'.";
-
 
204
			$code = RestServeur::HTTP_CODE_MAUVAISE_REQUETE;
-
 
205
			throw new Exception($message, $code);
-
 
206
		}
-
 
207
		return $retour;
-
 
208
	}
176
 
209
}
177
}