コード例 #1
0
ファイル: ajax.php プロジェクト: dg711/moodle
     list($instance, $plugin) = $manager->get_user_enrolment_components($ue);
     if (!$instance || !$plugin || !enrol_is_enabled($instance->enrol) || !$plugin->allow_unenrol_user($instance, $ue) || !has_capability("enrol/{$instance->enrol}:unenrol", $manager->get_context()) || !$manager->unenrol_user($ue)) {
         throw new enrol_ajax_exception('unenrolnotpermitted');
     }
     break;
 case 'unassign':
     $role = required_param('role', PARAM_INT);
     $user = required_param('user', PARAM_INT);
     if (!has_capability('moodle/role:assign', $manager->get_context()) || !$manager->unassign_role_from_user($user, $role)) {
         throw new enrol_ajax_exception('unassignnotpermitted');
     }
     break;
 case 'assign':
     $user = $DB->get_record('user', array('id' => required_param('user', PARAM_INT)), '*', MUST_EXIST);
     $roleid = required_param('roleid', PARAM_INT);
     if (!array_key_exists($roleid, $manager->get_assignable_roles())) {
         throw new enrol_ajax_exception('invalidrole');
     }
     if (!has_capability('moodle/role:assign', $manager->get_context()) || !$manager->assign_role_to_user($roleid, $user->id)) {
         throw new enrol_ajax_exception('assignnotpermitted');
     }
     $outcome->response->roleid = $roleid;
     break;
 case 'getassignable':
     $otheruserroles = optional_param('otherusers', false, PARAM_BOOL);
     $outcome->response = $manager->get_assignable_roles_for_json($otheruserroles);
     break;
 case 'searchotherusers':
     $search = optional_param('search', '', PARAM_RAW);
     $page = optional_param('page', 0, PARAM_INT);
     $outcome->response = $manager->search_other_users($search, $searchanywhere, $page);
コード例 #2
0
ファイル: ajax.php プロジェクト: vinoth4891/clinique
}
require_login($course);
require_capability('moodle/course:enrolreview', $context);
require_sesskey();
echo $OUTPUT->header();
// Send headers.
$manager = new course_enrolment_manager($PAGE, $course);
$outcome = new stdClass();
$outcome->success = true;
$outcome->response = new stdClass();
$outcome->error = '';
$searchanywhere = get_user_preferences('userselector_searchanywhere', false);
switch ($action) {
    case 'getassignable':
        $otheruserroles = optional_param('otherusers', false, PARAM_BOOL);
        $outcome->response = array_reverse($manager->get_assignable_roles($otheruserroles), true);
        break;
    case 'searchusers':
        $enrolid = required_param('enrolid', PARAM_INT);
        $search = optional_param('search', '', PARAM_RAW);
        $page = optional_param('page', 0, PARAM_INT);
        $outcome->response = $manager->get_potential_users($enrolid, $search, $searchanywhere, $page);
        $extrafields = get_extra_user_fields($context);
        foreach ($outcome->response['users'] as &$user) {
            $user->picture = $OUTPUT->user_picture($user);
            $user->fullname = fullname($user);
            $fieldvalues = array();
            foreach ($extrafields as $field) {
                $fieldvalues[] = s($user->{$field});
                unset($user->{$field});
            }
コード例 #3
0
     list($instance, $plugin) = $manager->get_user_enrolment_components($ue);
     if (!$instance || !$plugin || !$plugin->allow_unenrol($instance) || !has_capability("enrol/{$instance->enrol}:unenrol", $manager->get_context()) || !$manager->unenrol_user($ue)) {
         throw new enrol_ajax_exception('unenrolnotpermitted');
     }
     break;
 case 'unassign':
     $role = required_param('role', PARAM_INT);
     $user = required_param('user', PARAM_INT);
     if (!has_capability('moodle/role:assign', $manager->get_context()) || !$manager->unassign_role_from_user($user, $role)) {
         throw new enrol_ajax_exception('unassignnotpermitted');
     }
     break;
 case 'assign':
     $user = $DB->get_record('user', array('id' => required_param('user', PARAM_INT)), '*', MUST_EXIST);
     $roleid = required_param('roleid', PARAM_INT);
     if (!array_key_exists($roleid, $manager->get_assignable_roles())) {
         throw new enrol_ajax_exception('invalidrole');
     }
     if (!has_capability('moodle/role:assign', $manager->get_context()) || !$manager->assign_role_to_user($roleid, $user->id)) {
         throw new enrol_ajax_exception('assignnotpermitted');
     }
     $outcome->response->roleid = $roleid;
     break;
 case 'getassignable':
     $otheruserroles = optional_param('otherusers', false, PARAM_BOOL);
     $outcome->response = array_reverse($manager->get_assignable_roles($otheruserroles), true);
     break;
 case 'searchotherusers':
     $search = optional_param('search', '', PARAM_RAW);
     $page = optional_param('page', 0, PARAM_INT);
     $outcome->response = $manager->search_other_users($search, false, $page);
コード例 #4
0
ファイル: users.php プロジェクト: Keneth1212/moodle
         }
         $actiontaken = true;
     }
     break;
     /**
      * Assigns a new role to a user enrolled within this course.
      * A user must be enrolled in the course in order for this script to action
      */
 /**
  * Assigns a new role to a user enrolled within this course.
  * A user must be enrolled in the course in order for this script to action
  */
 case 'assign':
     $user = $DB->get_record('user', array('id' => required_param('user', PARAM_INT)), '*', MUST_EXIST);
     if (is_enrolled($context, $user) && has_capability('moodle/role:assign', $manager->get_context())) {
         $mform = new enrol_users_assign_form(NULL, array('user' => $user, 'course' => $course, 'assignable' => $manager->get_assignable_roles()));
         $mform->set_data($PAGE->url->params());
         $data = $mform->get_data();
         if ($mform->is_cancelled() || $data && array_key_exists($data->roleid, $manager->get_assignable_roles()) && $manager->assign_role_to_user($data->roleid, $user->id)) {
             redirect($PAGE->url);
         } else {
             $pagetitle = get_string('assignroles', 'role');
         }
         $actiontaken = true;
     }
     break;
     /**
      * Removes the user from the given group
      */
 /**
  * Removes the user from the given group
コード例 #5
0
ファイル: otherusers.php プロジェクト: nmicha/moodle
$PAGE->set_url('/enrol/otherusers.php', $manager->get_url_params() + $table->get_url_params());
$userdetails = array('picture' => false, 'firstname' => get_string('firstname'), 'lastname' => get_string('lastname'));
$extrafields = get_extra_user_fields($context);
foreach ($extrafields as $field) {
    $userdetails[$field] = get_user_field_name($field);
}
$fields = array('userdetails' => $userdetails, 'lastseen' => get_string('lastaccess'), 'role' => get_string('roles', 'role'));
// Remove hidden fields if the user has no access
if (!has_capability('moodle/course:viewhiddenuserfields', $context)) {
    $hiddenfields = array_flip(explode(',', $CFG->hiddenuserfields));
    if (isset($hiddenfields['lastaccess'])) {
        unset($fields['lastseen']);
    }
}
$table->set_fields($fields, $OUTPUT);
//$users = $manager->get_other_users($table->sort, $table->sortdirection, $table->page, $table->perpage);
$renderer = $PAGE->get_renderer('core_enrol');
$canassign = has_capability('moodle/role:assign', $manager->get_context());
$users = $manager->get_other_users_for_display($renderer, $PAGE->url, $table->sort, $table->sortdirection, $table->page, $table->perpage);
$assignableroles = $manager->get_assignable_roles(true);
foreach ($users as $userid => &$user) {
    $user['picture'] = $OUTPUT->render($user['picture']);
    $user['role'] = $renderer->user_roles_and_actions($userid, $user['roles'], $assignableroles, $canassign, $PAGE->url);
}
$table->set_total_users($manager->get_total_other_users());
$table->set_users($users);
$PAGE->set_title($course->fullname . ': ' . get_string('totalotherusers', 'enrol', $manager->get_total_other_users()));
$PAGE->set_heading($PAGE->title);
echo $OUTPUT->header();
echo $renderer->render($table);
echo $OUTPUT->footer();
コード例 #6
0
ファイル: users.php プロジェクト: esyacelga/sisadmaca
         }
         $actiontaken = true;
     }
     break;
     /**
      * Assigns a new role to a user enrolled within this course.
      * A user must be enrolled in the course in order for this script to action
      */
 /**
  * Assigns a new role to a user enrolled within this course.
  * A user must be enrolled in the course in order for this script to action
  */
 case 'assign':
     $user = $DB->get_record('user', array('id' => required_param('user', PARAM_INT)), '*', MUST_EXIST);
     if (is_enrolled($context, $user) && has_capability('moodle/role:assign', $manager->get_context())) {
         $mform = new enrol_users_assign_form(NULL, array('user' => $user, 'course' => $course, 'assignable' => $manager->get_assignable_roles()));
         $mform->set_data($PAGE->url->params());
         $data = $mform->get_data();
         if ($mform->is_cancelled() || $data && array_key_exists($data->roleid, $manager->get_assignable_roles()) && $manager->assign_role_to_user($data->roleid, $user->id)) {
             redirect($PAGE->url);
         } else {
             $pagetitle = get_string('assignroles', 'role');
         }
         $actiontaken = true;
     }
     break;
     /**
      * Removes the user from the given group
      */
 /**
  * Removes the user from the given group