Subversion Repositories Sites.tela-botanica.org

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1098 aurelien 1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | Lesser General Public License for more details.                                                      |
17
// |                                                                                                      |
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                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: authentification.php,v 1.2 2004/09/03 15:51:06 tam Exp $
23
/**
24
* Titre
25
*
26
* Description
27
*
28
*@package site_tela
29
//Auteur original :
30
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
31
//Autres auteurs :
32
*@author        Aucun
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.2 $ $Date: 2004/09/03 15:51:06 $
35
// +------------------------------------------------------------------------------------------------------+
36
*/
37
 
38
// +------------------------------------------------------------------------------------------------------+
39
// |                                            ENTETE du PROGRAMME                                       |
40
// +------------------------------------------------------------------------------------------------------+
41
// Le fichier authentification.php est appelé systématiquement, il peut donc contenir les inclusions de fichiers génériques.
42
include_once dirname(realpath(__FILE__)).'/../papyrus/configuration/pap_config_avancee.inc.php' ;
43
include_once dirname(realpath(__FILE__)).'/../papyrus/configuration/pap_config.inc.php' ;
44
 
45
// ATTENTION : bien inclure la racine du site /home/telabotap/www/ et le chemin de l'api PEAR /home/telabotap/www/api/pear/ dans l'include path.
46
// ATTENTION : l'ancien include_path ajouté grace à get_include_path() doit être impérativement ajouté APRÉS le chemin de l'api Pear de Papyrus!
47
set_include_path($_SERVER['DOCUMENT_ROOT'].PATH_SEPARATOR.$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.PAP_CHEMIN_API_PEAR.PATH_SEPARATOR.get_include_path());
48
include_once 'Auth.php' ;
49
include_once 'DB.php' ;
50
include_once 'Net/URL.php' ;
51
$NetUrl = new Net_URL();
52
$url = $NetUrl->getUrl();
53
// Connection à la base de donnée
54
$GLOBALS['db'] =& DB::connect(PAP_DSN) ;
55
 
56
// Cette variable contiendra le javascript de validation des formulaires
57
$GLOBALS['javascript'] = '' ;
58
 
59
 
60
if ($_SERVER['SCRIPT_NAME'] == '/actu/index.php') {
61
    $url .= 'sommaire.php3' ;
62
}
63
function AUTH_formulaire_login ($url) {
64
	// l'url de la page en cours
65
	//--------------------------------------------------------------------------
66
	// Le formulaire
67
	//--------------------------------------------------------------------------
68
	$res ='<form id="form_connexion" class="form_identification" action="'.$url.'" method="post">
69
				<fieldset>
70
					<legend>Identifiez vous</legend>
71
						<label for="username">Courriel : </label>
72
						<input type="text" size="12" id="username" name="username" maxlength="80" tabindex="1" value="courriel" />
73
						<label for="password">Mot de passe : </label>
74
						<input type="password" size="12" id="password" name="password" maxlength="80" tabindex="2" value="mot de passe" />
75
						<input type="submit" id="connexion" name="connexion" tabindex="3" value="ok" />
76
				<p><a id="lien_inscription" href="/page:inscription">S\'inscrire...</a></p>
77
				</fieldset>
78
			</form>' ;
79
	return $res;
80
}
81
 
82
$param_auth = array ('dsn' => PAP_DSN,
83
                     'table' => 'annuaire_tela',
84
                     'usernamecol' => 'U_MAIL',
85
                     'passwordcol' => 'U_PASSWD',
86
                     'cryptType' => 'md5',
87
                     'db_fields' => '*');
88
// ATTENTION : bien définir le nom de la session avec la fonction PHP et le placer avant l'instanciation de l'objet AUTH!
89
session_name('pap-annuaire_tela');
90
$GLOBALS['identification'] = new Auth('DB', $param_auth, 'AUTH_formulaire_login');
91
$GLOBALS['identification']->setAdvancedSecurity(PAP_AUTH_SECURITE_AVANCEE);
92
// On débute une session
93
$GLOBALS['identification']->start();
94
//echo '<pre>'.print_r($GLOBALS['identification'], true).'</pre>';
95
// On teste si la variable logout existe, si oui, on deconnecte
96
if (isset($_REQUEST['deconnexion']) || isset($_REQUEST['logout']) || $GLOBALS['identification']->checkAuth() == false) {
97
	// On place les cookies avec une durée dépassée
98
    setcookie('spip_session', '', time() - 3600, '/actu/') ;
99
    setcookie('spip_admin', '', time() - 3600, '/actu/') ;
100
	$GLOBALS['identification']->logout();
101
	$NetUrl->removeQueryString('logout');
102
}
103
 
104
include_once 'spip_cookie.php' ;
105
 
106
// en cas de tentative de login et d'une url de redirection, spip ne redirige pas vers l'espace
107
// édition lorsque ceci est demandé. C'est donc fait manuellement ici.
108
if(isset($_GET['url']) && isset($_POST['username']) && isset($_POST['password'])) {
109
    header("Location: " ."http://www.tela-botanica.org/actu/".urldecode($_GET['url']));
110
    exit;
111
}
112
 
113
// +------------------------------------------------------------------------------------------------------+
114
// |                                           LISTE de FONCTIONS                                         |
115
// +------------------------------------------------------------------------------------------------------+
116
 
117
// +------------------------------------------------------------------------------------------------------+
118
// |                                            PIED du PROGRAMME                                         |
119
// +------------------------------------------------------------------------------------------------------+
120
                                           /*Partie non obligatoire*/
121
 
122
 
123
/* +--Fin du code ----------------------------------------------------------------------------------------+
124
*
125
* $Log: authentification.php,v $
126
* Revision 1.2  2004/09/03 15:51:06  tam
127
* modif
128
*
129
*
130
* +-- Fin du code ----------------------------------------------------------------------------------------+
131
*/
132
?>