6,12 → 6,31 |
const NIVEAU_EXPERT = 3; |
|
private $dureeSauvegarde = null; |
private $nomCookieUtilisateur = ''; |
private $nomCookieUtilisateurPersistant = ''; |
private $nomCookieNiveau = ''; |
private $niveauDefaut = ''; |
private $urlWsAnnuaire = ''; |
private $restClient = null; |
|
private $niveau = null; |
private $identifie = false; |
private $courriel = null; |
private $md5Mdp = null; |
|
public function __construct(Conteneur $conteneur) { |
$this->dureeSauvegarde = $conteneur->getParametre('cookies.duree'); |
$this->nomCookieUtilisateur = $conteneur->getParametre('cookies.utilisateur'); |
$this->nomCookieUtilisateurPersistant = $conteneur->getParametre('cookies.utilisateurPersistant'); |
$this->nomCookieNiveau = $conteneur->getParametre('cookies.niveau'); |
$this->niveauDefaut = $conteneur->getParametre('utilisateur.niveau.defaut'); |
$this->urlWsAnnuaire = $conteneur->getParametre('baseUrlServicesAnnuaireTpl'); |
$this->restClient = $conteneur->getRestClient(); |
$this->analyserCookies(); |
} |
|
public function __construct($niveauDefaut) { |
$this->niveau = isset($_COOKIE['eflore.niveau']) ? $_COOKIE['eflore.niveau'] : $niveauDefaut; |
$this->dureeSauvegarde = 3600*24*365; |
public function getCourriel() { |
return $this->courriel; |
} |
|
public function getNiveau() { |
19,8 → 38,52 |
} |
|
public function sauver() { |
setcookie('eflore.niveau', time()+$this->dureeSauvegarde, '/', 'www.tela-botanica.org'); |
setcookie($this->nomCookieNiveau, time()+$this->dureeSauvegarde, '/'); |
} |
|
public function etreIdentifie() { |
$this->analyserCookies(); |
return $this->identifie; |
} |
|
} |
public function connecter($courriel, $mdp, $persistance = false) { |
$url = sprintf($this->urlWsAnnuaire, 'Utilisateur'); |
$donnees['methode'] = 'connexion'; |
$donnees['courriel'] = $courriel; |
$donnees['mdp'] = $mdp; |
$donnees['persistance'] = $persistance; |
|
$json = $this->restClient->ajouter($url, $donnees); |
$forceTableauAssociatif = true; |
$resultat = json_decode($json, $forceTableauAssociatif); |
Debug::printr($resultat); |
return $resultat['identifie']; |
} |
|
private function analyserCookies() { |
$this->analyserCookiesIdentite(); |
$this->analyserCookiesNiveau(); |
} |
|
private function analyserCookiesIdentite() { |
if ($this->identifie == false) { |
if (isset($_COOKIE[$this->nomCookieUtilisateurPersistant])) { |
$idTela = $_COOKIE[$this->nomCookieUtilisateurPersistant]; |
$this->md5Mdp = substr($idTela, 0, 32); |
$this->courriel = substr($idTela, 32); |
$this->identifie = true; |
} else if (isset($_COOKIE[$this->nomCookieUtilisateur])) { |
$this->courriel = $_COOKIE[$this->nomCookieUtilisateur]; |
$this->identifie = true; |
} |
} |
} |
|
private function analyserCookiesNiveau() { |
$this->niveau = $this->niveauDefaut; |
if (isset($_COOKIE[$this->nomCookieNiveau])) { |
$this->niveau = $_COOKIE[$this->nomCookieNiveau]; |
} |
} |
} |
?> |