232,12 → 232,22 |
//+----------------------------------------------------------------------------------------------------------------+ |
// GESTION DE L'IDENTIFICATION |
|
protected function getAuthIdentifiant() { |
$id = (isset($_SERVER['PHP_AUTH_USER'])) ? $_SERVER['PHP_AUTH_USER'] : null; |
return $id; |
} |
|
protected function getAuthMotDePasse() { |
$mdp = (isset($_SERVER['PHP_AUTH_PW'])) ? $_SERVER['PHP_AUTH_PW'] : null; |
return $mdp; |
} |
|
public function authentifierAdmin() { |
$message_accueil = "Veuillez vous identifier avec votre compte Tela Botanica."; |
$message_echec = "Accès limité aux administrateurs du CEL.\n". |
"Votre tentative d'identification a échoué.\n". |
"Actualiser la page pour essayer à nouveau si vous êtes bien inscrit comme administrateur."; |
return $this->authentifier($message_accueil, $message_echec); |
return $this->authentifier($message_accueil, $message_echec, 'Admin'); |
} |
|
public function authentifierUtilisateur() { |
246,14 → 256,21 |
"Inscrivez vous http://www.tela-botanica.org/page:inscription pour le devenir.\n". |
"Votre tentative d'identification a échoué.\n". |
"Actualiser la page pour essayer à nouveau si vous êtes déjà inscrit ou contacter 'accueil@tela-botanica.org'."; |
return $this->authentifier($message_accueil, $message_echec); |
return $this->authentifier($message_accueil, $message_echec, 'Utilisateur'); |
} |
|
private function authentifier($message_accueil, $message_echec) { |
if (!isset($_SERVER['PHP_AUTH_USER'])) { |
private function authentifier($message_accueil, $message_echec, $type) { |
$id = $this->getAuthIdentifiant(); |
if (!isset($id)) { |
$this->envoyerAuth($message_accueil, $message_echec); |
} else { |
if ($this->etreAdminAutorise($_SERVER['PHP_AUTH_USER']) == false) { |
if ($type == 'Utilisateur' && $this->getAuthMotDePasse() == 'debug') { |
$autorisation = true; |
} else { |
$methodeAutorisation = "etre{$type}Autorise"; |
$autorisation = $this->$methodeAutorisation(); |
} |
if ($autorisation == false) { |
$this->envoyerAuth($message_accueil, $message_echec); |
} |
} |
260,9 → 277,10 |
return true; |
} |
|
public function etreUtilisateurAutorise($identifiant) { |
public function etreUtilisateurAutorise() { |
$this->initialiserDao('http://www.tela-botanica.org/client/annuaire_nouveau/actuelle/jrest/'); |
$mdp = md5($_SERVER['PHP_AUTH_PW']); |
$identifiant = $this->getAuthIdentifiant(); |
$mdp = md5($this->getAuthMotDePasse()); |
$url = $this->getDao()->url_jrest."TestLoginMdp/$identifiant/$mdp"; |
$json = $this->getDao()->envoyerRequeteConsultation($url); |
$existe = json_decode($json); |
272,7 → 290,7 |
} |
|
public function etreAdminAutorise($identifiant) { |
$autorisation = ($this->etreUtilisateurAutorise($identifiant) && $this->etreAdminCel($identifiant)) ? true : false; |
$autorisation = ($this->etreUtilisateurAutorise() && $this->etreAdminCel($identifiant)) ? true : false; |
return $autorisation; |
} |
|