mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 14:27:22 +01:00
74 lines
3.1 KiB
PHP
Executable File
74 lines
3.1 KiB
PHP
Executable File
<?php //$Id$
|
|
require_once('../../config.php');
|
|
require_once($CFG->libdir.'/adminlib.php');
|
|
require_once($CFG->libdir.'/dmllib.php');
|
|
|
|
require_once($CFG->dirroot.'/user/filters/text.php');
|
|
require_once($CFG->dirroot.'/user/filters/select.php');
|
|
require_once($CFG->dirroot.'/user/filters/courserole.php');
|
|
require_once($CFG->dirroot.'/user/filters/globalrole.php');
|
|
require_once($CFG->dirroot.'/user/filters/profilefield.php');
|
|
require_once($CFG->dirroot.'/user/filters/yesno.php');
|
|
|
|
require_once($CFG->dirroot.'/admin/user/user_bulk_form.php');
|
|
define("MAX_USERS_PER_PAGE", 5000);
|
|
|
|
$sitecontext = get_context_instance(CONTEXT_SYSTEM, SITEID);
|
|
|
|
// array of bulk operations
|
|
$actions = array();
|
|
$actions[1] = get_string('confirm');
|
|
if (has_capability('moodle/site:readallmessages', $sitecontext) && !empty($CFG->messaging)) {
|
|
$actions[2] = get_string('messageselectadd');
|
|
}
|
|
$actions[3] = get_string('delete');
|
|
$actions[4] = get_string('displayonpage');
|
|
// create the bulk operations form
|
|
$user_bulk_form =& new user_bulk_form(null, $actions);
|
|
// check if an action should be performed and do so
|
|
switch ($user_bulk_form->getAction()) {
|
|
case 1:
|
|
redirect($CFG->wwwroot . '/admin/user/user_bulk_confirm.php');
|
|
case 2:
|
|
redirect($CFG->wwwroot . '/admin/user/user_bulk_message.php');
|
|
case 3:
|
|
redirect($CFG->wwwroot . '/admin/user/user_bulk_delete.php');
|
|
case 4:
|
|
redirect($CFG->wwwroot . '/admin/user/user_bulk_display.php');
|
|
}
|
|
|
|
// prepare user filter types
|
|
$filters[] = new user_filter_text('username', get_string('username'), 'username');
|
|
$filters[] = new user_filter_text('realname', get_string('fullname'), sql_fullname());
|
|
$filters[] = new user_filter_text('email', get_string('email'), 'email');
|
|
$filters[] = new user_filter_text('city', get_string('city'), 'city');
|
|
$filters[] = new user_filter_select('country', get_string('country'), 'country', get_list_of_countries());
|
|
$filters[] = new user_filter_yesno('confirmed', get_string('confirm'), 'confirmed');
|
|
$filters[] = new user_filter_profilefield('profile', get_string('profile'));
|
|
$filters[] = new user_filter_courserole('course', get_string('courserole', 'filters'));
|
|
$filters[] = new user_filter_globalrole('system', get_string('globalrole', 'role'));
|
|
|
|
// create the user filter form
|
|
$user_filter_form =& new user_filter_form(null, $filters);
|
|
|
|
// do output
|
|
admin_externalpage_setup('userbulk');
|
|
admin_externalpage_print_header();
|
|
|
|
// put the user filter form first
|
|
$user_filter_form->display();
|
|
// get the SQL filter
|
|
$where =& $user_filter_form->getSQLFilter('id<>1 AND NOT deleted');
|
|
$ausercount = count_records_select('user', $where);
|
|
// limit the number of options
|
|
$comment = null;
|
|
if($ausercount <= MAX_USERS_PER_PAGE) {
|
|
$user_bulk_form->setAvailableUsersSQL($where);
|
|
} else {
|
|
$comment = get_string('toomanytoshow');
|
|
}
|
|
$user_bulk_form->setUserCount($ausercount, $comment);
|
|
// display the bulk user form
|
|
$user_bulk_form->display();
|
|
admin_externalpage_print_footer();
|