Subversion Repositories Applications.papyrus

Rev

Rev 1145 | Rev 1176 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1145 Rev 1172
Line 17... Line 17...
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | License along with this library; if not, write to the Free Software                                  |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: identification.php,v 1.29 2006-12-12 13:53:54 jp_milcent Exp $
22
// CVS : $Id: identification.php,v 1.30 2006-12-14 15:01:05 jp_milcent Exp $
23
/**
23
/**
24
* Applette : identification
24
* Applette : identification
25
*
25
*
26
* Génère un formulaire les champs nécessaires pour s'identifier.
26
* Génère un formulaire les champs nécessaires pour s'identifier.
27
* Nécessite :
27
* Nécessite :
Line 36... Line 36...
36
//Auteur original :
36
//Auteur original :
37
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
37
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
38
//Autres auteurs :
38
//Autres auteurs :
39
*@author        Aucun
39
*@author        Aucun
40
*@copyright     Tela-Botanica 2000-2004
40
*@copyright     Tela-Botanica 2000-2004
41
*@version       $Revision: 1.29 $ $Date: 2006-12-12 13:53:54 $
41
*@version       $Revision: 1.30 $ $Date: 2006-12-14 15:01:05 $
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
43
*/
43
*/
Line 44... Line 44...
44
 
44
 
45
// +------------------------------------------------------------------------------------------------------+
45
// +------------------------------------------------------------------------------------------------------+
Line 64... Line 64...
64
// |                                            CORPS du PROGRAMME                                        |
64
// |                                            CORPS du PROGRAMME                                        |
65
// +------------------------------------------------------------------------------------------------------+
65
// +------------------------------------------------------------------------------------------------------+
Line 66... Line 66...
66
 
66
 
67
// Si le site utilise une authentification.
67
// Si le site utilise une authentification.
-
 
68
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) {
68
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) {
69
	$cookie_persistant_nom = session_name().'-memo';
69
    // Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur.
70
    // Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur.
70
    if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout'])) && $GLOBALS['_GEN_commun']['pear_auth']->checkAuth()) {
71
    if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']))) {
71
		$GLOBALS['_GEN_commun']['pear_auth']->logout();
72
		$GLOBALS['_GEN_commun']['pear_auth']->logout();
72
		// Destruction du cookie de Papyrus
73
		// Destruction du cookie de session de Papyrus : est ce utile?
-
 
74
		setcookie(session_name(), session_id(), time()-3600, '/');
-
 
75
		// Destruction du cookie de permanence de l'identitification de Papyrus
-
 
76
		setcookie($cookie_persistant_nom, '', time()-3600, '/');
-
 
77
		//$GLOBALS['_GEN_commun']['pear_auth']->start();
73
		setcookie(session_name(), session_id(), time()-3600, '/');
78
    } else {
74
    } else if (isset($_REQUEST['connexion'])) {
79
    	if (isset($_REQUEST['connexion'])) {
75
    	// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur.
80
	    	// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur.
76
		// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte"
81
			// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte"
77
		if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) {
-
 
78
			//echo '<pre>'.print_r($_POST, true).'</pre>'; 
82
			if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) {
79
	        // Expiration si l'utilisateur ne referme pas son navigateur
83
		        // Expiration si l'utilisateur ne referme pas son navigateur
80
			$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE);
84
				$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE);
-
 
85
				// Création d'un cookie pour rendre permanente l'identification de Papyrus
81
			// Pour que la session dure même après avoir refermer son navigateur
86
				$cookie_val = md5($_POST['password']).$_POST['username'];
-
 
87
				setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/');
-
 
88
			}
-
 
89
	    } else if (isset($_COOKIE[$cookie_persistant_nom])) {
-
 
90
			// Si un cookie existe, nous loggons l'utilisateur.
-
 
91
			$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_persistant_nom], 0, 32 );
-
 
92
			$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_persistant_nom], 32);
-
 
93
			// Nous sommes obligés de crypter le mot de passe
-
 
94
			 if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) {
-
 
95
				$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none';
-
 
96
    		} else if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
-
 
97
				$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
82
			setcookie(session_name(), session_id(), (int)IDEN_AUTH_SESSION_DUREE, '/');
98
			}
83
		}
99
		}
84
		$GLOBALS['_GEN_commun']['pear_auth']->login();        
-
 
85
        $_SESSION['username'] = $_POST['username'];
-
 
86
        $_SESSION['password'] = $_POST['password'];
-
 
87
    } else if (isset($_COOKIE[session_name()])) {
-
 
88
		// Si un cookie existe, nous loggons l'utilisateur.
-
 
89
    	$_POST['username'] = $_SESSION['username'];
-
 
90
        $_POST['password'] = $_SESSION['password'];
-
 
91
    	$GLOBALS['_GEN_commun']['pear_auth']->login();
100
		$GLOBALS['_GEN_commun']['pear_auth']->login();
92
    } 
101
    }
Line 93... Line 102...
93
}
102
}
94
 
103
 
95
// +------------------------------------------------------------------------------------------------------+
104
// +------------------------------------------------------------------------------------------------------+
Line 220... Line 229...
220
 
229
 
221
 
230
 
222
/* +--Fin du code ----------------------------------------------------------------------------------------+
231
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
232
*
-
 
233
* $Log: not supported by cvs2svn $
-
 
234
* Revision 1.29  2006/12/12 13:53:54  jp_milcent
223
*
235
* Mise en place du nouveau format des balises d'applette.
224
* $Log: not supported by cvs2svn $
236
*
225
* Revision 1.28  2006/12/12 13:26:42  jp_milcent
237
* Revision 1.28  2006/12/12 13:26:42  jp_milcent
226
* Modification de la gestion de l'identification. Utilisation des variables de session.
238
* Modification de la gestion de l'identification. Utilisation des variables de session.
227
*
239
*