Quick Search:

View

Revision:

Diff

Diff from 1446 to:

Annotations

Annotate by Age | Author | Mixed | None
/fisheye/browse/osCommerce/branches/hpdl/oscommerce/admin/includes/applications/administrators/administrators.php

Annotated File View

hpdl
1016
1 <?php
2 /*
3   $Id: $
4
5   osCommerce, Open Source E-Commerce Solutions
6   http://www.oscommerce.com
7
hpdl
1446
8   Copyright (c) 2007 osCommerce
hpdl
1016
9
10   Released under the GNU General Public License
11 */
12
hpdl
1200
13   require('includes/classes/administrators.php');
14
hpdl
1016
15   class osC_Content_Administrators extends osC_Template {
16
17 /* Private variables */
18
19     var $_module = 'administrators',
hpdl
1446
20         $_page_title,
hpdl
1130
21         $_page_contents = 'main.php';
hpdl
1016
22
23 /* Class constructor */
24
25     function osC_Content_Administrators() {
hpdl
1446
26       global $osC_Language,$osC_MessageStack;
hpdl
1200
27
hpdl
1446
28       $this->_page_title = $osC_Language->get('heading_title');
29
hpdl
1016
30       if (!isset($_GET['action'])) {
31         $_GET['action'] = '';
32       }
33
34       if (!isset($_GET['page']) || (isset($_GET['page']) && !is_numeric($_GET['page']))) {
35         $_GET['page'] = 1;
36       }
37
38       if (!empty($_GET['action'])) {
39         switch ($_GET['action']) {
40           case 'save':
hpdl
1200
41             if ( isset($_GET['aID']) && is_numeric($_GET['aID']) ) {
42               $this->_page_contents = 'edit.php';
hpdl
1125
43             } else {
hpdl
1200
44               $this->_page_contents = 'new.php';
hpdl
1125
45             }
46
hpdl
1200
47             if ( isset($_POST['subaction']) && ($_POST['subaction'] == 'confirm') ) {
48               $data = array('username' => $_POST['user_name'],
49                             'password' => $_POST['user_password']);
hpdl
1125
50
hpdl
1200
51               switch ( osC_Administrators_Admin::save((isset($_GET['aID']) && is_numeric($_GET['aID']) ? $_GET['aID'] : null), $data, (isset($_POST['modules']) ? $_POST['modules'] : null)) ) {
hpdl
1446
52                 case 1:
hpdl
1200
53                   if ( isset($_GET['aID']) && is_numeric($_GET['aID']) && ($_GET['aID'] == $_SESSION['admin']['id']) ) {
54                     $_SESSION['admin']['access'] = osC_Access::getUserLevels($_GET['aID']);
55                   }
hpdl
1125
56
hpdl
1200
57                   $osC_MessageStack->add_session($this->_module, SUCCESS_DB_ROWS_UPDATED, 'success');
hpdl
1125
58
hpdl
1400
59                   osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '&page=' . $_GET['page']));
hpdl
1070
60
hpdl
1200
61                   break;
hpdl
1016
62
hpdl
1446
63                 case -1:
hpdl
1200
64                   $osC_MessageStack->add_session($this->_module, ERROR_DB_ROWS_NOT_UPDATED, 'error');
hpdl
1016
65
hpdl
1400
66                   osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '&page=' . $_GET['page']));
hpdl
1016
67
hpdl
1200
68                   break;
hpdl
1016
69
hpdl
1446
70                 case -2:
71                   $osC_MessageStack->add($this->_module, $osC_Language->get('ms_error_username_already_exists'), 'error');
hpdl
1016
72
hpdl
1085
73                   break;
hpdl
1070
74               }
75             }
76
hpdl
1200
77             break;
hpdl
1070
78
hpdl
1200
79           case 'delete':
80             $this->_page_contents = 'delete.php';
hpdl
1085
81
hpdl
1200
82             if ( isset($_POST['subaction']) && ($_POST['subaction'] == 'confirm') ) {
83               if ( osC_Administrators_Admin::delete($_GET['aID']) ) {
84                 $osC_MessageStack->add_session($this->_module, SUCCESS_DB_ROWS_UPDATED, 'success');
85               } else {
86                 $osC_MessageStack->add_session($this->_module, ERROR_DB_ROWS_NOT_UPDATED, 'error');
87               }
hpdl
1085
88
hpdl
1400
89               osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '&page=' . $_GET['page']));
hpdl
1200
90             }
hpdl
1070
91
hpdl
1200
92             break;
hpdl
1070
93
hpdl
1200
94           case 'batchSave':
95             if ( isset($_POST['batch']) && is_array($_POST['batch']) && !empty($_POST['batch']) ) {
96               $this->_page_contents = 'batch_edit.php';
hpdl
1125
97
hpdl
1200
98               if ( isset($_POST['subaction']) && ($_POST['subaction'] == 'confirm') ) {
99                 $error = false;
hpdl
1085
100
hpdl
1200
101                 foreach ($_POST['batch'] as $id) {
102                   if ( !osC_Administrators_Admin::setAccessLevels($id, $_POST['modules'], $_POST['mode']) ) {
103                     $error = true;
104                     break;
105                   }
106                 }
hpdl
1070
107
hpdl
1200
108                 if ( $error === false ) {
109                   $osC_MessageStack->add_session($this->_module, SUCCESS_DB_ROWS_UPDATED, 'success');
hpdl
1070
110
hpdl
1200
111                   if ( in_array($_SESSION['admin']['id'], $_POST['batch']) ) {
112                     $_SESSION['admin']['access'] = osC_Access::getUserLevels($_SESSION['admin']['id']);
113                   }
114                 } else {
115                   $osC_MessageStack->add_session($this->_module, ERROR_DB_ROWS_NOT_UPDATED, 'error');
116                 }
hpdl
1016
117
hpdl
1400
118                 osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '&page=' . $_GET['page']));
hpdl
1125
119               }
120             }
121
hpdl
1200
122             break;
hpdl
1125
123
hpdl
1200
124           case 'batchDelete':
125             if ( isset($_POST['batch']) && is_array($_POST['batch']) && !empty($_POST['batch']) ) {
126               $this->_page_contents = 'batch_delete.php';
hpdl
1125
127
hpdl
1200
128               if ( isset($_POST['subaction']) && ($_POST['subaction'] == 'confirm') ) {
129                 $error = false;
130
131                 foreach ($_POST['batch'] as $id) {
132                   if ( !osC_Administrators_Admin::delete($id) ) {
133                     $error = true;
134                     break;
135                   }
hpdl
1125
136                 }
137
hpdl
1200
138                 if ( $error === false ) {
139                   $osC_MessageStack->add_session($this->_module, SUCCESS_DB_ROWS_UPDATED, 'success');
140                 } else {
141                   $osC_MessageStack->add_session($this->_module, ERROR_DB_ROWS_NOT_UPDATED, 'error');
hpdl
1125
142                 }
143
hpdl
1400
144                 osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '&page=' . $_GET['page']));
hpdl
1125
145               }
146             }
147
hpdl
1200
148             break;
hpdl
1125
149         }
150       }
151     }
hpdl
1016
152   }
153 ?>