Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 2083 → Rev 2084

/trunk/papyrus/applettes/identification/identification.php
1,5 → 1,5
<?php
/*vim: set expandtab tabstop=4 shiftwidth=4: */
/*vim: set expandtab tabstop=4 shiftwidth=4: */
// +------------------------------------------------------------------------------------------------------+
// | PHP version 4.1 |
// +------------------------------------------------------------------------------------------------------+
73,6 → 73,7
// Si le site utilise une authentification.
if ($GLOBALS['_GEN_commun']['info_auth']->gsa_ce_type_auth == 1) {
$cookie_persistant_nom = session_name().'-memo';
$cookie_utilisateur_nom = session_name().'-utilisateur';
// 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']->logout();
80,40 → 81,44
setcookie(session_name(), session_id(), time()-3600, '/');
// Destruction du cookie de permanence de l'identitification de Papyrus
setcookie($cookie_persistant_nom, '', time()-3600, '/');
setcookie('pap-annuaire_tela-utilisateur', '', 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, '/');
setcookie('pap-annuaire_tela-utilisateur', $_POST['username'], (int)IDEN_AUTH_SESSION_DUREE, '/');
}
else {
setcookie('pap-annuaire_tela-utilisateur', $_POST['username'], 0, '/');
}
} 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';
}
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
}
setcookie($cookie_utilisateur_nom, '', time()-3600, '/');
} else if (isset($_REQUEST['connexion'])) {
// Si un formulaire nous renvoie en POST une variable "connexion", nous logons l'utilisateur.
$cookie_val = md5($_POST['password']).$_POST['username'];
// 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
setcookie($cookie_persistant_nom, $cookie_val, (int)IDEN_AUTH_SESSION_DUREE, '/');
} else {
setcookie($cookie_utilisateur_nom, $cookie_val, 0, '/');
}
$GLOBALS['_GEN_commun']['pear_auth']->login();
//echo '<pre>'.print_r($GLOBALS['_GEN_commun']['pear_auth'], true).'</pre>';
} 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';
}
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
}
} else if (isset($_COOKIE[$cookie_utilisateur_nom])) {
$GLOBALS['_GEN_commun']['pear_auth']->password = substr($_COOKIE[$cookie_utilisateur_nom], 0, 32 );
$GLOBALS['_GEN_commun']['pear_auth']->username = substr($_COOKIE[$cookie_utilisateur_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';
}
if (isset($GLOBALS['_GEN_commun']['pear_auth']->storage->options)) {
$GLOBALS['_GEN_commun']['pear_auth']->storage->options['cryptType'] = 'none';
}
}
$GLOBALS['_GEN_commun']['pear_auth']->login();
}
 
// +------------------------------------------------------------------------------------------------------+
125,7 → 130,7
* Retourne un formulaire d'identificatin ou de déconnexion suivant que l'utilisateur est
* identifié ou pas.
*
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction.
* @param array tableau d'éventuel arguments présent dans la balise transmis à la fonction.
* @param array tableau global de Papyrus.
* @return string formulaire de connexion ou de déconnexion.
*/
162,9 → 167,9
// Récupération des valeurs pour le login et le mot de passe
$mot_de_passe = (! isset($_POST['password'])) ? '' : $_POST['password'];
$login = (! isset($_POST['username'])) ? '' : $_POST['username'];
 
$url_inscription_aide = $InfoAuthBdd->url_erreur;
 
// ATTENTION : Partie à supprimer une fois les mise à jour effectué dans l'annuaire de Tela Botanica
// Devrait être déplacer dans l'appli inscription de Tela.
if (isset($InfoAuthBdd->gsab_nom_table) && $InfoAuthBdd->gsab_nom_table == 'annuaire_tela') {
173,7 → 178,7
$objet_pear_auth->login();
}
}
 
// L'utilisateur a essayé de s'identifier mais a échoué
$url_erreur = false;
if ($login != '') {
203,26 → 208,26
$chp_personne_nom='';
if (isset($InfoAuthBdd->chp_personne_nom)) {
$chp_personne_nom = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_personne_nom);
}
$chp_structure='';
}
$chp_structure='';
if (isset($InfoAuthBdd->chp_structure_nom)) {
$chp_structure = $objet_pear_auth->getAuthData($InfoAuthBdd->chp_structure_nom);
}
if ($objet_pear_auth->getAuth()) { $loggue = true; } else { $loggue = false; }
 
/** Compteur sert a compter le nombre de fois qu est appele l applet
* et ce afin que les tabindex du formulaire soient correct
*/
*/
 
static $compteur = 0;
ob_start();
include $options['template'];
$retour = ob_get_contents();
// Arrete et detruit le buffer
ob_end_clean();
ob_end_clean();
 
$compteur++;
 
return $retour;
}