r908: Implementing new navigation system for the entire "Fields" tab
[bugdar.git] / admin / global.php
1 <?php
2 /*=====================================================================*\
3 || ###################################################################
4 || # Bugdar [#]version[#]
5 || # Copyright ©2002-[#]year[#] Iris Studios, Inc.
6 || #
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version [#]gpl[#] of the License.
10 || #
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 || # more details.
15 || #
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
21
22 chdir('./../');
23
24 require_once('./includes/init.php');
25 require_once('./includes/functions.php');
26
27 // ###################################################################
28 // admin navigation
29
30 $bugsys->load('printer_navigation', 'navigator', true);
31 $navigator->add_top_link($lang->string('Home'), 'index.php');
32 $navigator->add_top_link($lang->string('Logout'), '../login.php?do=cplogout');
33
34 $navigator->add_component('tab', 'options', null, $lang->string('Options'), 'index.php');
35 $navigator->add_component('tab', 'products', null, $lang->string('Products'), 'product.php');
36 $navigator->add_component('tab', 'fields', null, $lang->string('Fields'), 'field.php');
37 $navigator->add_component('tab', 'users', null, $lang->string('Users and Permissions'), 'user.php');
38
39 require_once('./includes/class_admin_navigation.php');
40
41 $globalnav = array(
42 $lang->string('User Management') => array(
43 $lang->string('Users') => 'user.php',
44 $lang->string('Usergroups') => 'usergroup.php',
45 $lang->string('Usergroup Permissions') => 'permission.php'
46 )
47 );
48
49 // ###################################################################
50 // continue loading
51
52 $bugsys->load('printer', 'admin', true);
53 $admin->set('realm', $lang->string('Administration'));
54 $admin->css_link('../framework/printer.css.php');
55
56 // ###################################################################
57
58 function admin_login()
59 {
60 global $admin, $bugsys;
61
62 define('ISSO_PRINTER_NO_NAVIGATION', 1);
63
64 $admin->page_start('Login', '', 15, '', 'document.cplogin.' . (($bugsys->userinfo['email']) ? 'password' : 'email') . '.focus();');
65
66 $admin->form_start('../login.php', 'cplogin', false, 'cplogin');
67 $admin->table_start(true, '425');
68 $admin->table_head($bugsys->lang->string('Login to Bugdar'));
69 $admin->row_input($bugsys->lang->string('Email'), 'email', $bugsys->userinfo['email'], 2, 35, false, false, 'middle');
70 $admin->row_input($bugsys->lang->string('Password'), 'password', '', 2, 35, false, true, 'middle');
71 $admin->row_submit('', $bugsys->lang->string('Login'));
72 $admin->table_end();
73 $admin->form_end();
74
75 $admin->page_end();
76 }
77
78 // ###################################################################
79
80 $bugsys->userinfo['adminsession'] = false;
81
82 if ($_COOKIE[COOKIE_PREFIX . 'adminsession'])
83 {
84 if (can_perform('canadminpanel'))
85 {
86 if (md5(md5($bugsys->userinfo['authkey']) . md5(gmdate('F j, Y @ H'))) != $_COOKIE[COOKIE_PREFIX . 'adminsession'])
87 {
88 $funct->cookie(COOKIE_PREFIX . 'adminsession', '');
89 admin_login();
90 // do we need this message?
91 $admin->error($lang->string('Invalid admin session has been terminated.'));
92 }
93 else
94 {
95 // renew the cookie
96 $funct->cookie(COOKIE_PREFIX . 'adminsession', md5(md5($bugsys->userinfo['authkey']) . md5(gmdate('F j, Y @ H'))), false);
97 $bugsys->userinfo['adminsession'] = true;
98 }
99 }
100 else
101 {
102 $funct->cookie(COOKIE_PREFIX . 'adminsession', '');
103 admin_login();
104 }
105 }
106
107 if (!$_COOKIE[COOKIE_PREFIX . 'adminsession'])
108 {
109 admin_login();
110 }
111
112 /*=====================================================================*\
113 || ###################################################################
114 || # $HeadURL$
115 || # $Id$
116 || ###################################################################
117 \*=====================================================================*/
118 ?>