mirror of
https://github.com/moodle/moodle.git
synced 2025-04-21 08:22:07 +02:00
Merge branch 'MDL-35776' of git://github.com/timhunt/moodle
This commit is contained in:
commit
84c04ff295
@ -54,9 +54,9 @@ echo $OUTPUT->header(); // send headers
|
||||
|
||||
$manager = new course_enrolment_manager($PAGE, $course);
|
||||
|
||||
$outcome = new stdClass;
|
||||
$outcome = new stdClass();
|
||||
$outcome->success = true;
|
||||
$outcome->response = new stdClass;
|
||||
$outcome->response = new stdClass();
|
||||
$outcome->error = '';
|
||||
|
||||
$searchanywhere = get_user_preferences('userselector_searchanywhere', false);
|
||||
@ -108,6 +108,10 @@ switch ($action) {
|
||||
$user->extrafields = implode(', ', $fieldvalues);
|
||||
unset($user->id);
|
||||
}
|
||||
// Chrome will display users in the order of the array keys, so we need
|
||||
// to ensure that the results ordered array keys. Fortunately, the JavaScript
|
||||
// does not care what the array keys are. It uses user.id where necessary.
|
||||
$outcome->response['users'] = array_values($outcome->response['users']);
|
||||
$outcome->success = true;
|
||||
break;
|
||||
default:
|
||||
|
@ -51,9 +51,9 @@ echo $OUTPUT->header(); // Send headers.
|
||||
|
||||
$manager = new course_enrolment_manager($PAGE, $course);
|
||||
|
||||
$outcome = new stdClass;
|
||||
$outcome = new stdClass();
|
||||
$outcome->success = true;
|
||||
$outcome->response = new stdClass;
|
||||
$outcome->response = new stdClass();
|
||||
$outcome->error = '';
|
||||
|
||||
$searchanywhere = get_user_preferences('userselector_searchanywhere', false);
|
||||
@ -79,6 +79,10 @@ switch ($action) {
|
||||
}
|
||||
$user->extrafields = implode(', ', $fieldvalues);
|
||||
}
|
||||
// Chrome will display users in the order of the array keys, so we need
|
||||
// to ensure that the results ordered array keys. Fortunately, the JavaScript
|
||||
// does not care what the array keys are. It uses user.id where necessary.
|
||||
$outcome->response['users'] = array_values($outcome->response['users']);
|
||||
$outcome->success = true;
|
||||
break;
|
||||
case 'enrol':
|
||||
|
@ -221,8 +221,9 @@ M.core_user.init_user_selector = function (Y, name, hash, extrafields, lastsearc
|
||||
|
||||
// Output each optgroup.
|
||||
var count = 0;
|
||||
for (var groupname in data.results) {
|
||||
this.output_group(groupname, data.results[groupname], selectedusers, true);
|
||||
for (var key in data.results) {
|
||||
var groupdata = data.results[key];
|
||||
this.output_group(groupdata.name, groupdata.users, selectedusers, true);
|
||||
count++;
|
||||
}
|
||||
if (!count) {
|
||||
@ -248,14 +249,14 @@ M.core_user.init_user_selector = function (Y, name, hash, extrafields, lastsearc
|
||||
output_group : function(groupname, users, selectedusers, processsingle) {
|
||||
var optgroup = Y.Node.create('<optgroup></optgroup>');
|
||||
var count = 0;
|
||||
for (var userid in users) {
|
||||
var user = users[userid];
|
||||
var option = Y.Node.create('<option value="'+userid+'">'+user.name+'</option>');
|
||||
for (var key in users) {
|
||||
var user = users[key];
|
||||
var option = Y.Node.create('<option value="'+user.id+'">'+user.name+'</option>');
|
||||
if (user.disabled) {
|
||||
option.set('disabled', true);
|
||||
} else if (selectedusers===true || selectedusers[userid]) {
|
||||
} else if (selectedusers===true || selectedusers[user.id]) {
|
||||
option.set('selected', true);
|
||||
delete selectedusers[userid];
|
||||
delete selectedusers[user.id];
|
||||
} else {
|
||||
option.set('selected', false);
|
||||
}
|
||||
|
@ -78,9 +78,11 @@ if (isset($options['file'])) {
|
||||
$userselector = new $classname($name, $options);
|
||||
|
||||
// Do the search and output the results.
|
||||
$users = $userselector->find_users($search);
|
||||
foreach ($users as &$group) {
|
||||
foreach ($group as $user) {
|
||||
$results = $userselector->find_users($search);
|
||||
$json = array();
|
||||
foreach ($results as $groupname => $users) {
|
||||
$groupdata = array('name' => $groupname, 'users' => array());
|
||||
foreach ($users as $user) {
|
||||
$output = new stdClass;
|
||||
$output->id = $user->id;
|
||||
$output->name = $userselector->output_user($user);
|
||||
@ -90,8 +92,9 @@ foreach ($users as &$group) {
|
||||
if (!empty($user->infobelow)) {
|
||||
$output->infobelow = $user->infobelow;
|
||||
}
|
||||
$group[$user->id] = $output;
|
||||
$groupdata['users'][] = $output;
|
||||
}
|
||||
$json[] = $groupdata;
|
||||
}
|
||||
|
||||
echo json_encode(array('results' => $users));
|
||||
echo json_encode(array('results' => $json));
|
||||
|
Loading…
x
Reference in New Issue
Block a user