19,7 → 19,7 |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: identification.php,v 1.29 2006-12-12 13:53:54 jp_milcent Exp $ |
// CVS : $Id: identification.php,v 1.30 2006-12-14 15:01:05 jp_milcent Exp $ |
/** |
* Applette : identification |
* |
38,7 → 38,7 |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.29 $ $Date: 2006-12-12 13:53:54 $ |
*@version $Revision: 1.30 $ $Date: 2006-12-14 15:01:05 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
66,30 → 66,39 |
|
// Si le site utilise une authentification. |
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) { |
$cookie_persistant_nom = session_name().'-memo'; |
// Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur. |
if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout'])) && $GLOBALS['_GEN_commun']['pear_auth']->checkAuth()) { |
if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']))) { |
$GLOBALS['_GEN_commun']['pear_auth']->logout(); |
// Destruction du cookie de Papyrus |
// Destruction du cookie de session de Papyrus : est ce utile? |
setcookie(session_name(), session_id(), time()-3600, '/'); |
} else if (isset($_REQUEST['connexion'])) { |
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur. |
// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte" |
if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) { |
//echo '<pre>'.print_r($_POST, true).'</pre>'; |
// Expiration si l'utilisateur ne referme pas son navigateur |
$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE); |
// Pour que la session dure même après avoir refermer son navigateur |
setcookie(session_name(), session_id(), (int)IDEN_AUTH_SESSION_DUREE, '/'); |
// Destruction du cookie de permanence de l'identitification de Papyrus |
setcookie($cookie_persistant_nom, '', time()-3600, '/'); |
//$GLOBALS['_GEN_commun']['pear_auth']->start(); |
} else { |
if (isset($_REQUEST['connexion'])) { |
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur. |
// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte" |
if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) { |
// Expiration si l'utilisateur ne referme pas son navigateur |
$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE); |
// Création d'un cookie pour rendre permanente l'identification de Papyrus |
$cookie_val = md5($_POST['password']).$_POST['username']; |
setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/'); |
} |
} else if (isset($_COOKIE[$cookie_persistant_nom])) { |
// Si un cookie existe, nous loggons l'utilisateur. |
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_persistant_nom], 0, 32 ); |
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_persistant_nom], 32); |
// Nous sommes obligés de crypter le mot de passe |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) { |
$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none'; |
} else if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) { |
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none'; |
} |
} |
$GLOBALS['_GEN_commun']['pear_auth']->login(); |
$_SESSION['username'] = $_POST['username']; |
$_SESSION['password'] = $_POST['password']; |
} else if (isset($_COOKIE[session_name()])) { |
// Si un cookie existe, nous loggons l'utilisateur. |
$_POST['username'] = $_SESSION['username']; |
$_POST['password'] = $_SESSION['password']; |
$GLOBALS['_GEN_commun']['pear_auth']->login(); |
} |
$GLOBALS['_GEN_commun']['pear_auth']->login(); |
} |
} |
|
// +------------------------------------------------------------------------------------------------------+ |
222,6 → 231,9 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.29 2006/12/12 13:53:54 jp_milcent |
* Mise en place du nouveau format des balises d'applette. |
* |
* Revision 1.28 2006/12/12 13:26:42 jp_milcent |
* Modification de la gestion de l'identification. Utilisation des variables de session. |
* |