Revision 2098
Added by darkviper over 10 years ago
user_list.php | ||
---|---|---|
26 | 26 |
|
27 | 27 |
function show_userlist($admin, &$aActionRequest) |
28 | 28 |
{ |
29 |
$database = WbDatabase::getInstance(); |
|
30 |
$mLang = Translate::getInstance(); |
|
31 |
$iUserStatus = 1; |
|
32 |
$iUserStatus = ( ( $admin->get_get('status')==1 ) ? 0 : $iUserStatus ); |
|
29 |
$oDb = WbDatabase::getInstance(); |
|
30 |
$oTrans = Translate::getInstance(); |
|
31 |
$oTrans->enableAddon('admin\\users'); |
|
32 |
|
|
33 |
$iUserStatus = (($admin->get_get('status') == 1) ? 0 : 1); |
|
33 | 34 |
unset($_GET); |
34 | 35 |
|
35 | 36 |
// Setup template object, parse vars to it, then parse it |
... | ... | |
41 | 42 |
$oTpl->set_block('page', 'main_block', 'main'); |
42 | 43 |
$oTpl->set_block("main_block", "manage_groups_block", "groups"); |
43 | 44 |
|
45 |
$oTpl->set_var($oTrans->getLangArray()); |
|
44 | 46 |
$oTpl->set_var('ADMIN_URL', ADMIN_URL); |
45 | 47 |
$oTpl->set_var('FTAN', $admin->getFTAN()); |
46 | 48 |
$oTpl->set_var('USER_STATUS', $iUserStatus ); |
... | ... | |
54 | 56 |
$UserStatusActive = 'url('.THEME_URL.'/images/user.png)'; |
55 | 57 |
$UserStatusInactive = 'url('.THEME_URL.'/images/user_red.png)'; |
56 | 58 |
|
57 |
$sUserTitle = ($iUserStatus == 0) ? $mLang->MENU_USERS.' '.mb_strtolower($mLang->TEXT_ACTIVE, 'UTF-8')
|
|
58 |
: $mLang->MENU_USERS.' '.mb_strtolower($mLang->TEXT_DELETED, 'UTF-8') ;
|
|
59 |
$sUserTitle = ($iUserStatus == 0) ? $oTrans->MENU_USERS.' '.mb_strtolower($oTrans->TEXT_ACTIVE, 'UTF-8')
|
|
60 |
: $oTrans->MENU_USERS.' '.mb_strtolower($oTrans->TEXT_DELETED, 'UTF-8') ;
|
|
59 | 61 |
|
60 |
$oTpl->set_var('TEXT_USERS', $sUserTitle.' '.$mLang->TEXT_SHOW );
|
|
62 |
$oTpl->set_var('TEXT_USERS', $sUserTitle.' '.$oTrans->TEXT_SHOW );
|
|
61 | 63 |
$oTpl->set_var('STATUS_ICON', ( ($iUserStatus==0) ? $UserStatusActive : $UserStatusInactive) ); |
62 | 64 |
|
63 | 65 |
// Get existing value from database |
64 |
$sql = 'SELECT `user_id`, `username`, `display_name`, `active` FROM `'.TABLE_PREFIX.'users` ' ; |
|
65 |
$sql .= 'WHERE user_id != 1 '; |
|
66 |
$sql .= 'AND `active` = '.$iUserStatus.' '; |
|
67 |
$sql .= 'AND `confirm_code` = \'\' '; |
|
68 |
$sql .= 'ORDER BY `display_name`,`username`'; |
|
69 |
|
|
70 |
// $query = "SELECT user_id, username, display_name, active FROM ".TABLE_PREFIX."users WHERE user_id != '1' ORDER BY display_name,username"; |
|
71 |
$oRes = $database->query($sql); |
|
72 |
if($database->is_error()) { |
|
73 |
$admin->print_error($database->get_error(), 'index.php'); |
|
66 |
$sql = 'SELECT `user_id`, `username`, `display_name`, `active` FROM `'.$oDb->TablePrefix.'users` ' |
|
67 |
. 'WHERE user_id != 1 ' |
|
68 |
. 'AND `active` = '.$iUserStatus.' ' |
|
69 |
. 'AND `confirm_code` = \'\' ' |
|
70 |
. 'ORDER BY `display_name`,`username`'; |
|
71 |
$oRes = $oDb->doQuery($sql); |
|
72 |
if($oDb->isError()) { |
|
73 |
$admin->print_error($oDb->getError(), 'index.php'); |
|
74 | 74 |
} |
75 | 75 |
|
76 |
$sUserList = $mLang->TEXT_LIST_OPTIONS.' ';
|
|
77 |
$sUserList .= ($iUserStatus == 1) ? $mLang->MENU_USERS.' '.mb_strtolower($mLang->TEXT_ACTIVE, 'UTF-8')
|
|
78 |
: $mLang->MENU_USERS.' '.mb_strtolower($mLang->TEXT_DELETED, 'UTF-8') ;
|
|
76 |
$sUserList = $oTrans->TEXT_LIST_OPTIONS.' ';
|
|
77 |
$sUserList .= ($iUserStatus == 1) ? $oTrans->MENU_USERS.' '.mb_strtolower($oTrans->TEXT_ACTIVE, 'UTF-8')
|
|
78 |
: $oTrans->MENU_USERS.' '.mb_strtolower($oTrans->TEXT_DELETED, 'UTF-8') ;
|
|
79 | 79 |
// Insert values into the modify/remove menu |
80 | 80 |
$oTpl->set_block('main_block', 'list_block', 'list'); |
81 | 81 |
if($oRes->numRows() > 0) { |
... | ... | |
93 | 93 |
} |
94 | 94 |
} else { |
95 | 95 |
// Insert single value to say no users were found |
96 |
$oTpl->set_var('NAME', $mLang->TEXT_NONE_FOUND);
|
|
96 |
$oTpl->set_var('NAME', $oTrans->TEXT_NONE_FOUND);
|
|
97 | 97 |
$oTpl->parse('list', 'list_block', true); |
98 | 98 |
} |
99 | 99 |
|
... | ... | |
107 | 107 |
if($admin->get_permission('users_delete') != true) { |
108 | 108 |
$oTpl->set_var('DISPLAY_DELETE', 'hide'); |
109 | 109 |
} |
110 |
$HeaderTitle = (($iUserStatus == 1) ? $mLang->HEADING_MODIFY_ACTIVE_USER : $mLang->HEADING_MODIFY_DELETE_USER ).' ';
|
|
111 |
$HeaderTitle .= (($iUserStatus == 1) ? mb_strtolower($mLang->TEXT_ACTIVE, 'UTF-8')
|
|
112 |
: mb_strtolower($mLang->TEXT_INACTIVE, 'UTF-8'));
|
|
110 |
$HeaderTitle = (($iUserStatus == 1) ? $oTrans->HEADING_MODIFY_ACTIVE_USER : $oTrans->HEADING_MODIFY_DELETE_USER ).' ';
|
|
111 |
$HeaderTitle .= (($iUserStatus == 1) ? mb_strtolower($oTrans->TEXT_ACTIVE, 'UTF-8')
|
|
112 |
: mb_strtolower($oTrans->TEXT_INACTIVE, 'UTF-8'));
|
|
113 | 113 |
// Insert language headings |
114 | 114 |
$oTpl->set_var(array( |
115 |
'HEADING_MODIFY_DELETE_USER' => $HeaderTitle, |
|
116 |
'HEADING_ADD_USER' => $mLang->HEADING_ADD_USER |
|
115 |
'HEADING_MODIFY_DELETE_USER' => $HeaderTitle |
|
117 | 116 |
) |
118 | 117 |
); |
119 | 118 |
// insert urls |
... | ... | |
126 | 125 |
// Insert language text and messages |
127 | 126 |
$oTpl->set_var(array( |
128 | 127 |
'DISPLAY_WAITING_ACTIVATION' => '', |
129 |
'TEXT_MODIFY' => $mLang->TEXT_MODIFY, |
|
130 |
'TEXT_DELETE' => $mLang->TEXT_DELETE, |
|
131 |
'TEXT_USER_DELETE' => (($iUserStatus == 1) ? $mLang->TEXT_DEACTIVE : $mLang->TEXT_DELETE), |
|
132 |
'TEXT_MANAGE_GROUPS' => ( $admin->get_permission('groups') == true ) ? $mLang->TEXT_MANAGE_GROUPS : "**", |
|
133 |
'CONFIRM_DELETE' => (($iUserStatus == 1) ? $mLang->TEXT_ARE_YOU_SURE : $mLang->MESSAGE_USERS_CONFIRM_DELETE) |
|
128 |
'TEXT_USER_DELETE' => (($iUserStatus == 1) ? $oTrans->TEXT_DEACTIVE : $oTrans->TEXT_DELETE), |
|
129 |
'TEXT_MANAGE_GROUPS' => ( $admin->get_permission('groups') == true ) ? $oTrans->TEXT_MANAGE_GROUPS : "**", |
|
130 |
'CONFIRM_DELETE' => (($iUserStatus == 1) ? $oTrans->TEXT_ARE_YOU_SURE : $oTrans->MESSAGE_USERS_CONFIRM_DELETE) |
|
134 | 131 |
) |
135 | 132 |
); |
136 | 133 |
|
... | ... | |
138 | 135 |
if($admin->ami_group_member('1')) { |
139 | 136 |
$oTpl->set_block('show_confirmed_activation_block', 'list_confirmed_activation_block', 'list_confirmed_activation'); |
140 | 137 |
$oTpl->set_var(array( |
141 |
'DISPLAY_WAITING_ACTIVATION' => $mLang->MESSAGE_USERS_WAITING_ACTIVATION,
|
|
142 |
'TEXT_USER_ACTIVATE' => $mLang->TEXT_ACTIVATE,
|
|
143 |
'TEXT_USER_DELETE' => (($iUserStatus == 1) ? $mLang->TEXT_DEACTIVE : $mLang->TEXT_DELETE),
|
|
138 |
'DISPLAY_WAITING_ACTIVATION' => $oTrans->MESSAGE_USERS_WAITING_ACTIVATION,
|
|
139 |
'TEXT_USER_ACTIVATE' => $oTrans->TEXT_ACTIVATE,
|
|
140 |
'TEXT_USER_DELETE' => (($iUserStatus == 1) ? $oTrans->TEXT_DEACTIVE : $oTrans->TEXT_DELETE),
|
|
144 | 141 |
) |
145 | 142 |
); |
146 |
$sql = 'SELECT * FROM `'.TABLE_PREFIX.'users` '; |
|
147 |
$sql .= 'WHERE `confirm_timeout` != 0 '; |
|
148 |
$sql .= 'AND `active` = 0 '; |
|
149 |
$sql .= 'AND `user_id` != 1 '; |
|
150 |
if( ($oRes = $database->query($sql)) ) { |
|
143 |
$sql = 'SELECT * FROM `'.$oDb->TablePrefix.'users` ' |
|
144 |
. 'WHERE `confirm_timeout` != 0 AND `active` = 0 AND `user_id` != 1 '; |
|
145 |
if( ($oRes = $oDb->doQuery($sql)) ) { |
|
151 | 146 |
$oTpl->set_var('DISPLAY_DELETE', ''); |
152 |
// $oTpl->set_var('NAME', 'User waiting for activation'); |
|
153 |
// $oTpl->set_var('STATUS', '' ); |
|
154 | 147 |
// Loop through users |
155 | 148 |
if(($nNumRows = $oRes->numRows())) { |
156 | 149 |
while($aUser = $oRes->fetchRow(MYSQL_ASSOC)) { |
... | ... | |
191 | 184 |
// $oTpl->parse('show_change_group_list', 'show_change_group_list_block', true); |
192 | 185 |
|
193 | 186 |
$oTpl->set_var( array( |
194 |
'ACTION_URL' => ADMIN_URL.'/users/index.php', |
|
195 |
'FTAN' => $admin->getFTAN(), |
|
196 |
'DISPLAY_EXTRA' => 'display:none;', |
|
197 |
'ACTIVE_CHECKED' => ' checked="checked"', |
|
198 |
'DISABLED_CHECKED' => '', |
|
199 |
'NO_RIGHTS' => 'hide', |
|
200 |
'CHANGING_GROUPS' => '', |
|
201 |
'DISPLAY_ADD' => '', |
|
202 |
'DISPLAY_MODIFY' => '', |
|
203 |
'HEADING_MODIFY_USER' => '', |
|
187 |
'ACTION_URL' => ADMIN_URL.'/users/index.php',
|
|
188 |
'FTAN' => $admin->getFTAN(),
|
|
189 |
'DISPLAY_EXTRA' => 'display:none;',
|
|
190 |
'ACTIVE_CHECKED' => ' checked="checked"',
|
|
191 |
'DISABLED_CHECKED' => '',
|
|
192 |
'NO_RIGHTS' => 'hide',
|
|
193 |
'CHANGING_GROUPS' => '',
|
|
194 |
'DISPLAY_ADD' => '',
|
|
195 |
'DISPLAY_MODIFY' => '',
|
|
196 |
'HEADING_MODIFY_USER' => '',
|
|
204 | 197 |
'DISPLAY_HOME_FOLDERS' => '', |
205 |
'SUBMIT_TITLE' => $mLang->TEXT_ADD,
|
|
206 |
'HIDE_SAVE_BACK' => 'hide', |
|
198 |
'SUBMIT_TITLE' => $oTrans->TEXT_ADD,
|
|
199 |
'HIDE_SAVE_BACK' => 'hide',
|
|
207 | 200 |
) |
208 | 201 |
); |
209 | 202 |
|
210 | 203 |
|
211 | 204 |
// insert urls |
212 | 205 |
$oTpl->set_var(array( |
213 |
'USER_ID' => '', |
|
214 |
'USERNAME' => '', |
|
206 |
'USER_ID' => '',
|
|
207 |
'USERNAME' => '',
|
|
215 | 208 |
'DISPLAY_NAME' => '', |
216 |
'EMAIL' => '', |
|
217 |
'ADMIN_URL' => ADMIN_URL, |
|
218 |
'WB_URL' => WB_URL, |
|
219 |
'SUB_ACTION' => 'add', |
|
220 |
'CANCEL_URL' => $aActionRequest['cancel_url'], |
|
221 |
'THEME_URL' => THEME_URL |
|
209 |
'EMAIL' => '',
|
|
210 |
'ADMIN_URL' => ADMIN_URL,
|
|
211 |
'WB_URL' => WB_URL,
|
|
212 |
'SUB_ACTION' => 'add',
|
|
213 |
'CANCEL_URL' => $aActionRequest['cancel_url'],
|
|
214 |
'THEME_URL' => THEME_URL
|
|
222 | 215 |
) |
223 | 216 |
); |
224 | 217 |
|
225 | 218 |
// Add groups to list |
226 | 219 |
$oTpl->set_block('main_block', 'group_list_block', 'group_list'); |
227 |
$results = $database->query("SELECT group_id, name FROM ".TABLE_PREFIX."groups WHERE group_id != '1'"); |
|
220 |
$sql = 'SELECT `group_id`, `name` FROM `'.$oDb->TablePrefix.'groups` ' |
|
221 |
. 'WHERE `group_id` != 1'; |
|
222 |
$results = $oDb->doQuery($sql); |
|
228 | 223 |
if($results->numRows() > 0) { |
229 | 224 |
$oTpl->set_var('ID', ''); |
230 |
$oTpl->set_var('NAME', $mLang->TEXT_PLEASE_SELECT.'...');
|
|
225 |
$oTpl->set_var('NAME', $oTrans->TEXT_PLEASE_SELECT.'...');
|
|
231 | 226 |
$oTpl->set_var('SELECTED', ' selected="selected"'); |
232 | 227 |
$oTpl->parse('group_list', 'group_list_block', true); |
233 | 228 |
while($group = $results->fetchRow()) { |
... | ... | |
247 | 242 |
} else { |
248 | 243 |
if($results->numRows() == 0) { |
249 | 244 |
$oTpl->set_var('ID', ''); |
250 |
$oTpl->set_var('NAME', $mLang->TEXT_NONE_FOUND);
|
|
245 |
$oTpl->set_var('NAME', $oTrans->TEXT_NONE_FOUND);
|
|
251 | 246 |
$oTpl->parse('group_list', 'group_list_block', true); |
252 | 247 |
} |
253 | 248 |
} |
... | ... | |
258 | 253 |
} |
259 | 254 |
|
260 | 255 |
// Generate username field name |
261 |
$username_fieldname = 'username_'; |
|
262 |
$salt = "abchefghjkmnpqrstuvwxyz0123456789"; |
|
263 |
srand((double)microtime()*1000000); |
|
264 |
$i = 0; |
|
265 |
while ($i <= 7) { |
|
266 |
$num = rand() % 33; |
|
267 |
$tmp = substr($salt, $num, 1); |
|
268 |
$username_fieldname = $username_fieldname . $tmp; |
|
269 |
$i++; |
|
270 |
} |
|
256 |
$username_fieldname = 'username_'.substr(base_convert(microtime(), 16, 36), 0, 8); |
|
271 | 257 |
|
272 | 258 |
// Work-out if home folder should be shown |
273 | 259 |
if(!HOME_FOLDERS) { |
... | ... | |
288 | 274 |
|
289 | 275 |
// Insert language text and messages |
290 | 276 |
$oTpl->set_var(array( |
291 |
'TEXT_CANCEL' => $mLang->TEXT_CANCEL, |
|
292 |
'TEXT_RESET' => $mLang->TEXT_RESET, |
|
293 |
'TEXT_ACTIVE' => $mLang->TEXT_ACTIVE, |
|
294 |
'TEXT_DISABLED' => $mLang->TEXT_DISABLED, |
|
295 |
'TEXT_PLEASE_SELECT' => $mLang->TEXT_PLEASE_SELECT, |
|
296 |
'TEXT_USERNAME' => $mLang->TEXT_USERNAME, |
|
297 |
'TEXT_PASSWORD' => $mLang->TEXT_PASSWORD, |
|
298 |
'TEXT_RETYPE_PASSWORD' => $mLang->TEXT_RETYPE_PASSWORD, |
|
299 |
'TEXT_DISPLAY_NAME' => $mLang->TEXT_DISPLAY_NAME, |
|
300 |
'TEXT_EMAIL' => $mLang->TEXT_EMAIL, |
|
301 |
'TEXT_GROUP' => $mLang->TEXT_GROUP, |
|
302 |
'TEXT_NONE' => $mLang->TEXT_NONE, |
|
303 |
'TEXT_HOME_FOLDER' => $mLang->TEXT_HOME_FOLDER, |
|
304 |
'USERNAME_FIELDNAME' => $username_fieldname, |
|
305 |
'CHANGING_PASSWORD' => $mLang->MESSAGE_USERS_CHANGING_PASSWORD |
|
306 |
) |
|
307 |
); |
|
277 |
'USERNAME_FIELDNAME' => $username_fieldname, |
|
278 |
'CHANGING_PASSWORD' => $oTrans->MESSAGE_USERS_CHANGING_PASSWORD |
|
279 |
) |
|
280 |
); |
|
308 | 281 |
|
309 | 282 |
// Parse template for add user form |
310 | 283 |
$oTpl->parse('show_modify_loginname', '', true); |
Also available in: Unified diff
! activate class Translate for all addons in admin/ (except pages/)
! class.admin >> add translation of the current theme to Translate