Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 1171 → Rev 1172

/trunk/papyrus/applettes/identification/identification.php
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.
*