Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 865 → Rev 866

/trunk/jrest/services/Cel.php
1,4 → 1,6
<?php
// ATTENTION ! Classe compatible uniquement avec nouveau format de bdd du cel //
 
/**
* Classe mère abstraite contenant les méthodes génériques des services.
* Encodage en entrée : utf8
5,6 → 7,7
* Encodage en sortie : utf8
*
* @author Jean-Pascal MILCENT <jpm@clapas.org>
* @author Aurélien Peronnet <aurelien@tela-botanica.org>
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @version $Id$
387,7 → 390,6
 
public function logger($index,$chaine) {
if(!class_exists('Log')) {
include_once('Log.php');
Log::getInstance();
}
 
441,7 → 443,42
$autorisation = (in_array($courriel, $courriels_autorises)) ? true : false ;
return $autorisation;
}
public function getInfosComplementairesUtilisateur($id_utilisateur) {
$infos_utilisateur = array('prenom' => $id_utilisateur, 'nom' => $id_utilisateur, 'courriel' => $id_utilisateur);
if(is_numeric($id_utilisateur)) {
 
$requete_infos_utilisateur = 'SELECT prenom, nom, courriel FROM cel_utilisateurs '.
'WHERE id_utilisateur = '.$this->proteger($id_utilisateur);
$resultat_infos_utilisateur = $this->requeter($requete_infos_utilisateur);
if($resultat_infos_utilisateur && is_array($resultat_infos_utilisateur) && count($resultat_infos_utilisateur) > 0) {
$infos_utilisateur = $resultat_infos_utilisateur;
}
}
return $infos_utilisateur;
}
public function getInfosComplementairesUtilisateurPourMail($mail_utilisateur) {
$infos_utilisateur = array('prenom' => $mail_utilisateur, 'nom' => $mail_utilisateur, 'courriel' => $mail_utilisateur);
 
$requete_infos_utilisateur = 'SELECT id, prenom, nom FROM cel_utilisateurs '.
'WHERE courriel = '.$this->proteger($mail_utilisateur);
$resultat_infos_utilisateur = $this->requeter($requete_infos_utilisateur);
if($resultat_infos_utilisateur && is_array($resultat_infos_utilisateur) && count($resultat_infos_utilisateur) > 0) {
$infos_utilisateur = $resultat_infos_utilisateur;
}
return $infos_utilisateur;
}
 
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DE MÉTHODES COMMUNES ENTRE LES SERVICES
511,8 → 548,8
* Fonction nettoyant les caractères spéciaux HTML pour les champs de saisie libre du CEL.
*/
protected function protegerCaracteresHtmlDansChamps($donnees) {
$champs = array('ci_meta_mots_cles', 'ci_meta_comment',
'mots_cles', 'location', 'lieudit', 'station', 'milieu', 'commentaire', 'nom_sel');
$champs = array('mots_cles_texte', 'commentaire',
'zone_geo', 'lieudit', 'station', 'milieu', 'commentaire', 'nom_sel');
foreach ($champs as $champ) {
if (isset($donnees[$champ])) {
$donnees[$champ] = htmlspecialchars($donnees[$champ]);
566,15 → 603,15
if (! $this->etreNull($mots_cles)) {
$table = ($type == self::TYPE_IMG) ? 'cel_mots_cles_images' : 'cel_mots_cles_obs' ;
$requete = 'SELECT cmc_mot_cle '.
$requete = 'SELECT mot_cle '.
"FROM $table ".
"WHERE cmc_id_mot_cle_utilisateur IN ($mots_cles) ".
"AND cmc_id_proprietaire = $utilisateur_id ";
"WHERE id_mot_cle_utilisateur IN ($mots_cles) ".
"AND ce_utilisateur = $utilisateur_id ";
$elements = $this->executerRequete($requete);
foreach ($elements as $mot) {
$mots[] = $mot['cmc_mot_cle'];
$mots[] = $mot['mot_cle'];
}
}
}