/
login.php
executable file
·92 lines (76 loc) · 2.89 KB
/
login.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<?php
#####################################################################
#
# Травмпункт. (c) 2005 Vista
#
#####################################################################
require_once 'library/common.php';
require_once 'library/users.php';
class TLoginForm extends HTML_QuickFormEx
{
function TLoginForm()
{
$this->HTML_QuickForm('frmLogin', 'post', $_SERVER['REQUEST_URI']);
$this->addElement('header', 'Header', 'Введите имя и пароль');
$this->addElement('text', 'Name', 'Имя:');
$this->addElement('password', 'Password', 'Пароль:');
$this->addElement('submit', 'Submit', 'Войти');
$this->addRule('Name', 'Имя не может быть пропущено', 'required');
// $this->addRule('Password', 'Password is required', 'required');
$this->applyFilter('_ALL_', 'trim');
$vDefault = array( 'Name' => @$_COOKIE['LoginName']);
$this->setDefaults($vDefault);
}
function CheckLoginName()
{
if ( $this->validate() )
{
$vValues = $this->getSubmitValues(TRUE);
$vName = $vValues['Name'];
$vPassword = $vValues['Password'];
$vDB = GetDB();
$vUserRecord = $vDB->Get('users',
'*',
$vDB->CondAnd(
$vDB->CondEqual('login', $vName),
$vDB->CondEqual('password', $vPassword),
$vDB->CondEqual('retired', 0)));
// unset($vDB);
$vRoles = $vUserRecord['roles'];
list( $vMenu, $vFirstPage ) = GetMenuAndFirstPage( $vRoles );
if ( $vFirstPage != '' )
{
$_SESSION['User.ID'] = $vUserRecord['id'];
$_SESSION['User.Login'] = $vName;
$_SESSION['User.Name' ] = $vUserRecord['full_name'];
$_SESSION['User.Roles'] = $vRoles;
$_SESSION['User.FirstPage'] = $vFirstPage;
$_SESSION['User.Menu' ] = $vMenu;
setcookie('LoginName' , $vName, time()+9999999);
//var_dump($vFirstPage);
//exit();
Redirect( $vFirstPage );
}
}
return FALSE;
}
};
session_unset();
if ( ob_get_level() == 0 )
ob_start();
$vForm =& new TLoginForm();
if ( !$vForm->CheckLoginName() )
# if ( True )
{
$vTemplate =& CreateTemplate();
$vRenderer =& CreateRenderer($vTemplate);
$vRenderer =& new HTML_QuickForm_Renderer_ObjectFlexy($vTemplate);
$vRenderer->setHtmlTemplate('html.html');
$vForm->accept($vRenderer);
$vView =& new TBaseView;
$vView->form = $vRenderer->toObject();
$vTemplate->compile('login.html');
$vTemplate->outputObject($vView);
}
# print $POST;
?>