Subversion Repositories Applications.annuaire

Compare Revisions

Ignore whitespace Rev 401 → Rev 429

/trunk/controleurs/IdentificationControleur.php
17,12 → 17,23
private $duree_identification = '0';
private $fonction_cryptage_mdp_cookie = 'md5';
private $objet_identification = null;
/*public function IdentificationControleur() {
 
Controleur::__construct();
$this->cookie_persistant_nom = session_name().'-memo';
$this->cookie_persistant_nom = 'pap-admin_papyrus_-memo';
$this->duree_identification = time()+Config::get('duree_session_identification');
$this->fonction_cryptage_mdp_cookie = Config::get('fonction_cryptage_mdp_cookie');
}*/
 
public function afficherFormulaireIdentification($id_annuaire, $donnees = array()) {
 
$this->chargerModele('AnnuaireModele');
$annuaire = $this->AnnuaireModele->chargerAnnuaire($id_annuaire);
 
if (!isset($donnees['informations'])) {
if(!isset($donnees['informations'])) {
$donnees['informations'] = array();
}
 
32,11 → 43,13
}
 
public function loggerUtilisateur($utilisateur, $pass) {
$this->objet_identification = Config::get('objet_identification');
 
// on cree le cookie
$this->creerCookie($utilisateur, $pass);
 
// Loguer l'utilisateur
// On loggue l'utilisateur
$this->objet_identification->username = $utilisateur;
$this->objet_identification->password = $pass;
$this->objet_identification->login();
43,44 → 56,49
 
return true;
}
 
public function deLoggerUtilisateur() {
$this->objet_identification = Config::get('objet_identification');
$this->objet_identification->logout();
return true;
}
 
public function setUtilisateur($nom_utilisateur) {
$this->objet_identification = Config::get('objet_identification');
$this->objet_identification->setAuth($nom_utilisateur);
$pass = $this->objet_identification->password;
 
$this->creerCookie($nom_utilisateur, $pass, true);
}
 
public function creerCookie($utilisateur, $pass, $pass_deja_crypte = false) {
$this->objet_identification = Config::get('objet_identification');
 
// Expiration si l'utilisateur ne referme pas son navigateur
$this->objet_identification->setExpire(0);
$this->objet_identification->setIdle(0);
 
// Création d'un cookie pour rendre permanente l'identification de Papyrus
$pass_crypt = (!$pass_deja_crypte) ? md5($pass) : $pass;
if(!$pass_deja_crypte) {
$pass_crypt = md5($pass);
} else {
$pass_crypt = $pass;
}
$cookie_val = $pass_crypt.$utilisateur;
setcookie(session_name().'-memo', $cookie_val, 0, '/');
setcookie(session_name().'-memo', $cookie_val, 0, '/');
}
 
public function obtenirLoginUtilisateurParCookie() {
$nom_session = Config::get('nom_session');
 
if (isset($_COOKIE[$nom_session])) {
$cookie_val = $_COOKIE[$nom_session];
$login_utilisateur = substr($cookie_val, '32', strlen($cookie_val));
$nom_utilisateur = Config::get('nom_utilisateur');
if(isset($_COOKIE[$nom_utilisateur])) {
$login_utilisateur = $_COOKIE[$nom_utilisateur];
return $login_utilisateur;
} else {
return false;
}
}
}
?>