]> git.sur5r.net Git - contagged/blob - login.php
Merge pull request #15 from cweiske/master
[contagged] / login.php
1 <?php
2 /**
3  * Do the login/logout process
4  */
5
6 require_once('inc/init.php');
7
8 $msg = $lang['msg_login'];
9 if(!empty($_REQUEST['username'])){
10     if (empty($_REQUEST['password'])) { $_REQUEST['password']=''; }
11     if (do_ldap_bind($_REQUEST['username'],$_REQUEST['password'])){
12
13         //create private address book if simple enough
14         if(preg_match('/ou=([^,]+)$/',$conf['privatebook'],$match)){
15             $privatedn = $conf['privatebook'].', '.$_SESSION['ldapab']['binddn'];
16             if(!@ldap_read($LDAP_CON,$privatedn,'')){
17                 @ldap_add($LDAP_CON,$privatedn,
18                          array('objectClass' => array ('organizationalUnit','top'),
19                                'ou' => $match[1]));
20             }
21         }
22
23         //forward to next page
24         if(!empty($_SESSION['ldapab']['lastlocation'])){
25             header('Location: '.$_SESSION['ldapab']['lastlocation']);
26         }else{
27             header('Location: index.php');
28         }
29         exit;
30     }else{
31         $msg = $lang['msg_loginfail'];;
32     }
33 }else{
34     //logout
35     unset($_SESSION['ldapab']);
36 }
37
38 //prepare templates
39 tpl_std();
40 $smarty->assign('msg',$msg);
41 //display templates
42 header('Content-Type: text/html; charset=utf-8');
43 $smarty->display('login.tpl');
44