Line 1... |
Line 1... |
1 |
<?php
|
1 |
<?php
|
2 |
/*vim: set expandtab tabstop=4 shiftwidth=4: */
|
2 |
/*vim: set expandtab tabstop=4 shiftwidth=4: */
|
3 |
// +------------------------------------------------------------------------------------------------------+
|
3 |
// +------------------------------------------------------------------------------------------------------+
|
4 |
// | PHP version 4.1 |
|
4 |
// | PHP version 4.1 |
|
5 |
// +------------------------------------------------------------------------------------------------------+
|
5 |
// +------------------------------------------------------------------------------------------------------+
|
6 |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) |
|
6 |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) |
|
7 |
// +------------------------------------------------------------------------------------------------------+
|
7 |
// +------------------------------------------------------------------------------------------------------+
|
Line 71... |
Line 71... |
71 |
// +------------------------------------------------------------------------------------------------------+
|
71 |
// +------------------------------------------------------------------------------------------------------+
|
Line 72... |
Line 72... |
72 |
|
72 |
|
73 |
// Si le site utilise une authentification.
|
73 |
// Si le site utilise une authentification.
|
74 |
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) {
|
74 |
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) {
|
- |
|
75 |
$cookie_persistant_nom = session_name().'-memo';
|
75 |
$cookie_persistant_nom = session_name().'-memo';
|
76 |
$cookie_utilisateur_nom = session_name().'-utilisateur';
|
76 |
// Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur.
|
77 |
// Si un formulaire nous renvoie en POST une variable "deconnexion", nous délogons l'utilisateur.
|
77 |
if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']))) {
|
78 |
if ((isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']))) {
|
78 |
$GLOBALS['_GEN_commun']['pear_auth']->logout();
|
79 |
$GLOBALS['_GEN_commun']['pear_auth']->logout();
|
79 |
// Destruction du cookie de session de Papyrus : est ce utile?
|
80 |
// Destruction du cookie de session de Papyrus : est ce utile?
|
80 |
setcookie(session_name(), session_id(), time()-3600, '/');
|
81 |
setcookie(session_name(), session_id(), time()-3600, '/');
|
81 |
// Destruction du cookie de permanence de l'identitification de Papyrus
|
82 |
// Destruction du cookie de permanence de l'identitification de Papyrus
|
82 |
setcookie($cookie_persistant_nom, '', time()-3600, '/');
|
83 |
setcookie($cookie_persistant_nom, '', time()-3600, '/');
|
83 |
setcookie('pap-annuaire_tela-utilisateur', '', time()-3600, '/');
|
- |
|
84 |
//$GLOBALS['_GEN_commun']['pear_auth']->start();
|
- |
|
85 |
} else {
|
84 |
setcookie($cookie_utilisateur_nom, '', time()-3600, '/');
|
86 |
if (isset($_REQUEST['connexion'])) {
|
85 |
} else if (isset($_REQUEST['connexion'])) {
|
- |
|
86 |
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur.
|
87 |
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur.
|
87 |
$cookie_val = md5($_POST['password']).$_POST['username'];
|
88 |
// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte"
|
88 |
// Nous vérifions que l'utilisateur est coché "Mémoriser mon compte"
|
89 |
if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) {
|
89 |
if (isset($_POST['persistant']) && $_POST['persistant'] == 'o' && IDEN_AUTH_SESSION_DUREE != 0) {
|
90 |
// Expiration si l'utilisateur ne referme pas son navigateur
|
90 |
// Expiration si l'utilisateur ne referme pas son navigateur
|
91 |
$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE);
|
91 |
$GLOBALS['_GEN_commun']['pear_auth']->setExpire((int)IDEN_AUTH_SESSION_DUREE);
|
92 |
// Création d'un cookie pour rendre permanente l'identification de Papyrus
|
- |
|
93 |
$cookie_val = md5($_POST['password']).$_POST['username'];
|
92 |
// Création d'un cookie pour rendre permanente l'identification de Papyrus
|
94 |
setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/');
|
- |
|
95 |
setcookie('pap-annuaire_tela-utilisateur', $_POST['username'], (int)IDEN_AUTH_SESSION_DUREE, '/');
|
- |
|
96 |
}
|
93 |
setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/');
|
97 |
else {
|
94 |
} else {
|
98 |
setcookie('pap-annuaire_tela-utilisateur', $_POST['username'], 0, '/');
|
95 |
setcookie($cookie_utilisateur_nom, $cookie_val, 0, '/');
|
99 |
}
|
- |
|
100 |
|
96 |
}
|
101 |
} else if (isset($_COOKIE[$cookie_persistant_nom])) {
|
97 |
} else if (isset($_COOKIE[$cookie_persistant_nom])) {
|
102 |
// Si un cookie existe, nous loggons l'utilisateur.
|
98 |
// Si un cookie existe, nous loggons l'utilisateur.
|
103 |
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_persistant_nom], 0, 32 );
|
99 |
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_persistant_nom], 0, 32 );
|
- |
|
100 |
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_persistant_nom], 32);
|
104 |
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_persistant_nom], 32);
|
101 |
|
105 |
// Nous sommes obligés de crypter le mot de passe
|
102 |
// Nous sommes obligés de crypter le mot de passe
|
106 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) {
|
103 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) {
|
107 |
$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none';
|
104 |
$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none';
|
108 |
}
|
105 |
}
|
109 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
|
106 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
|
110 |
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
|
107 |
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
|
- |
|
108 |
}
|
- |
|
109 |
} else if (isset($_COOKIE[$cookie_utilisateur_nom])) {
|
- |
|
110 |
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_utilisateur_nom], 0, 32 );
|
111 |
}
|
111 |
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_utilisateur_nom], 32);
|
- |
|
112 |
|
- |
|
113 |
// Nous sommes obligés de crypter le mot de passe
|
- |
|
114 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage_options)) {
|
- |
|
115 |
$GLOBALS['_GEN_commun']['pear_auth']->storage_options['cryptType'] = 'none';
|
- |
|
116 |
}
|
- |
|
117 |
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
|
112 |
|
118 |
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
|
113 |
}
|
- |
|
114 |
$GLOBALS['_GEN_commun']['pear_auth']->login();
|
- |
|
115 |
//echo '<pre>'.print_r($GLOBALS['_GEN_commun']['pear_auth'], true).'</pre>';
|
119 |
}
|
- |
|
120 |
}
|
116 |
}
|
121 |
$GLOBALS['_GEN_commun']['pear_auth']->login();
|
Line 117... |
Line 122... |
117 |
}
|
122 |
}
|
118 |
|
123 |
|
119 |
// +------------------------------------------------------------------------------------------------------+
|
124 |
// +------------------------------------------------------------------------------------------------------+
|
Line 123... |
Line 128... |
123 |
/** Fonction afficherFormIdentification() - Retourne une formulaire pour s'identifier.
|
128 |
/** Fonction afficherFormIdentification() - Retourne une formulaire pour s'identifier.
|
124 |
*
|
129 |
*
|
125 |
* Retourne un formulaire d'identificatin ou de déconnexion suivant que l'utilisateur est
|
130 |
* Retourne un formulaire d'identificatin ou de déconnexion suivant que l'utilisateur est
|
126 |
* identifié ou pas.
|
131 |
* identifié ou pas.
|
127 |
*
|
132 |
*
|
128 |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction.
|
133 |
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction.
|
129 |
* @param array tableau global de Papyrus.
|
134 |
* @param array tableau global de Papyrus.
|
130 |
* @return string formulaire de connexion ou de déconnexion.
|
135 |
* @return string formulaire de connexion ou de déconnexion.
|
131 |
*/
|
136 |
*/
|
132 |
function afficherFormIdentification($tab_arguments, $_GEN_commun)
|
137 |
function afficherFormIdentification($tab_arguments, $_GEN_commun)
|
133 |
{
|
138 |
{
|
Line 160... |
Line 165... |
160 |
$url_deconnect = $objet_url->getURL();
|
165 |
$url_deconnect = $objet_url->getURL();
|
161 |
$objet_url->removeQueryString('logout');
|
166 |
$objet_url->removeQueryString('logout');
|
162 |
// Récupération des valeurs pour le login et le mot de passe
|
167 |
// Récupération des valeurs pour le login et le mot de passe
|
163 |
$mot_de_passe = (! isset($_POST['password'])) ? '' : $_POST['password'];
|
168 |
$mot_de_passe = (! isset($_POST['password'])) ? '' : $_POST['password'];
|
164 |
$login = (! isset($_POST['username'])) ? '' : $_POST['username'];
|
169 |
$login = (! isset($_POST['username'])) ? '' : $_POST['username'];
|
165 |
|
170 |
|
166 |
$url_inscription_aide = $InfoAuthBdd->url_erreur;
|
171 |
$url_inscription_aide = $InfoAuthBdd->url_erreur;
|
167 |
|
172 |
|
168 |
// ATTENTION : Partie à supprimer une fois les mise à jour effectué dans l'annuaire de Tela Botanica
|
173 |
// ATTENTION : Partie à supprimer une fois les mise à jour effectué dans l'annuaire de Tela Botanica
|
169 |
// Devrait être déplacer dans l'appli inscription de Tela.
|
174 |
// Devrait être déplacer dans l'appli inscription de Tela.
|
170 |
if (isset($InfoAuthBdd->gsab_nom_table) && $InfoAuthBdd->gsab_nom_table == 'annuaire_tela') {
|
175 |
if (isset($InfoAuthBdd->gsab_nom_table) && $InfoAuthBdd->gsab_nom_table == 'annuaire_tela') {
|
171 |
verification_mot_de_passe($objet_pear_db, $mot_de_passe, $login);
|
176 |
verification_mot_de_passe($objet_pear_db, $mot_de_passe, $login);
|
172 |
if (isset($_POST['connexion'])) {
|
177 |
if (isset($_POST['connexion'])) {
|
173 |
$objet_pear_auth->login();
|
178 |
$objet_pear_auth->login();
|
174 |
}
|
179 |
}
|
175 |
}
|
180 |
}
|
176 |
|
181 |
|
177 |
// L'utilisateur a essayé de s'identifier mais a échoué
|
182 |
// L'utilisateur a essayé de s'identifier mais a échoué
|
178 |
$url_erreur = false;
|
183 |
$url_erreur = false;
|
179 |
if ($login != '') {
|
184 |
if ($login != '') {
|
180 |
$url_erreur = '#';
|
185 |
$url_erreur = '#';
|
181 |
if (isset($InfoAuthBdd->url_erreur)) {
|
186 |
if (isset($InfoAuthBdd->url_erreur)) {
|
Line 201... |
Line 206... |
201 |
$chp_personne_prenom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_prenom);
|
206 |
$chp_personne_prenom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_prenom);
|
202 |
}
|
207 |
}
|
203 |
$chp_personne_nom='';
|
208 |
$chp_personne_nom='';
|
204 |
if (isset($InfoAuthBdd->chp_personne_nom)) {
|
209 |
if (isset($InfoAuthBdd->chp_personne_nom)) {
|
205 |
$chp_personne_nom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_nom);
|
210 |
$chp_personne_nom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_nom);
|
206 |
}
|
211 |
}
|
207 |
$chp_structure='';
|
212 |
$chp_structure='';
|
208 |
if (isset($InfoAuthBdd->chp_structure_nom)) {
|
213 |
if (isset($InfoAuthBdd->chp_structure_nom)) {
|
209 |
$chp_structure = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_structure_nom);
|
214 |
$chp_structure = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_structure_nom);
|
210 |
}
|
215 |
}
|
211 |
if ($objet_pear_auth->getAuth()) { $loggue = true; } else { $loggue = false; }
|
216 |
if ($objet_pear_auth->getAuth()) { $loggue = true; } else { $loggue = false; }
|
212 |
|
217 |
|
213 |
/** Compteur sert a compter le nombre de fois qu est appele l applet
|
218 |
/** Compteur sert a compter le nombre de fois qu est appele l applet
|
214 |
* et ce afin que les tabindex du formulaire soient correct
|
219 |
* et ce afin que les tabindex du formulaire soient correct
|
215 |
*/
|
220 |
*/
|
216 |
|
221 |
|
217 |
static $compteur = 0;
|
222 |
static $compteur = 0;
|
218 |
ob_start();
|
223 |
ob_start();
|
219 |
include $options['template'];
|
224 |
include $options['template'];
|
220 |
$retour = ob_get_contents();
|
225 |
$retour = ob_get_contents();
|
221 |
// Arrete et detruit le buffer
|
226 |
// Arrete et detruit le buffer
|
222 |
ob_end_clean();
|
227 |
ob_end_clean();
|
223 |
|
228 |
|
224 |
$compteur++;
|
229 |
$compteur++;
|
225 |
|
230 |
|
226 |
return $retour;
|
231 |
return $retour;
|
227 |
}
|
232 |
}
|
Line 228... |
Line 233... |
228 |
|
233 |
|
229 |
// +------------------------------------------------------------------------------------------------------+
|
234 |
// +------------------------------------------------------------------------------------------------------+
|