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 getCourriel() { return $this->courriel; } public function getNiveau() { return $this->niveau; } public function sauver() { 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); 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->extraireMdpEtCourriel($idTela); } else if (isset($_COOKIE[$this->nomCookieUtilisateur])) { $idTela = $_COOKIE[$this->nomCookieUtilisateur]; $this->extraireMdpEtCourriel($idTela); } } } private function extraireMdpEtCourriel($idTela) { $this->md5Mdp = substr($idTela, 0, 32); $this->courriel = substr($idTela, 32); $this->identifie = true; } private function analyserCookiesNiveau() { $this->niveau = $this->niveauDefaut; if (isset($_COOKIE[$this->nomCookieNiveau])) { $this->niveau = $_COOKIE[$this->nomCookieNiveau]; } } } ?>