Subversion Repositories Applications.annuaire

Compare Revisions

Ignore whitespace Rev 203 → Rev 204

/trunk/jrest/services/InscritsRss.php
16,12 → 16,59
public function getElement($uid){
 
$mail_utilisateur = $uid[0];
$admin = (isset($uid[1])) ? $uid[1] : false;
$id_annuaire = Config::get('annuaire_defaut');
if($admin) {
$this->authentifier();
}
 
$controleur = new RSSControleur();
$inscrits = $controleur->obtenirDerniersInscritsRSS($id_annuaire);
$inscrits = $controleur->obtenirDerniersInscritsRSS($id_annuaire, $admin);
 
$this->envoyer($inscrits, 'text/xml',Config::get('sortie_encodage'), false);
}
public function authentifier() {
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="www.tela-botanica.org"');
header('HTTP/1.0 401 Unauthorized');
header('Content-type: text/html; charset=UTF-8');
echo 'Accès interdit';
exit;
} else {
if($this->verifierAcces($_SERVER['PHP_AUTH_USER'])) {
return ;
}
else
{
header('WWW-Authenticate: Basic realm="www.tela-botanica.org"');
header('HTTP/1.0 401 Unauthorized');
header('Content-type: text/html; charset=UTF-8');
echo 'Accès interdit';
exit ;
}
}
}
 
public function verifierAcces($id) {
$query="SELECT ".$this->config['database_ident']['ann_id']." as name FROM ".$this->config['database_ident']['database'].'.'.$this->config['database_ident']['annuaire']." WHERE ".$this->config['database_ident']['ann_id']." =".$this->bdd->quote($id)
." AND ".$this->config['database_ident']['ann_pwd']." = ".$this->config['database_ident']['pass_crypt_funct']."(".$this->bdd->quote($_SERVER['PHP_AUTH_PW']).")" ;
 
$res = $this->bdd->query($query);
if($res == "") {
return false ;
}
 
if (DB::isError($res)) {
die($res->getMessage());
}
 
return true ;
 
}
}
?>