Skip to content

Commit

Permalink
Merge branch 'wip-MDL-29469-stable21' of git://github.com/phalacee/mo…
Browse files Browse the repository at this point in the history
…odle into MOODLE_21_STABLE
  • Loading branch information
Aparup Banerjee committed Nov 30, 2011
2 parents ecbbcd5 + fd8fa80 commit fc51860
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 4 deletions.
26 changes: 23 additions & 3 deletions enrol/self/edit_form.php
Expand Up @@ -57,11 +57,11 @@ function definition() {
$mform->addElement('select', 'customint1', get_string('groupkey', 'enrol_self'), $options);
$mform->addHelpButton('customint1', 'groupkey', 'enrol_self');
$mform->setDefault('customint1', $plugin->get_config('groupkey'));

$roles = get_assignable_roles($context);
if ($instance->id) {
$roles = get_default_enrol_roles($context, $instance->roleid);
$roles = $this->extend_assignable_roles($context, $instance->roleid);
} else {
$roles = get_default_enrol_roles($context, $plugin->get_config('roleid'));
$roles = $this->extend_assignable_roles($context, $plugin->get_config('roleid'));
}
$mform->addElement('select', 'roleid', get_string('role', 'enrol_self'), $roles);
$mform->setDefault('roleid', $plugin->get_config('roleid'));
Expand Down Expand Up @@ -156,4 +156,24 @@ function validation($data, $files) {

return $errors;
}

/**
* Gets a list of roles that this user can assign for the course as the default for self-enrolment
*
* @param context $context the context.
* @param integer $defaultrole the id of the role that is set as the default for self-enrolement
* @return array index is the role id, value is the role name
*/
function extend_assignable_roles($context, $defaultrole) {
global $DB;
$roles = get_assignable_roles($context);
$sql = "SELECT r.id, r.name
FROM {role} r
WHERE r.id = $defaultrole";
$results = $DB->get_record_sql($sql);
if (isset($results->name)) {
$roles[$results->id] = $results->name;
}
return $roles;
}
}
2 changes: 1 addition & 1 deletion enrol/self/lang/en/enrol_self.php
Expand Up @@ -60,7 +60,7 @@
$string['pluginname_desc'] = 'The self enrolment plugin allows users to choose which courses they want to participate in. The courses may be protected by an enrolment key. Internally the enrolment is done via the manual enrolment plugin which has to be enabled in the same course.';
$string['requirepassword'] = 'Require enrolment key';
$string['requirepassword_desc'] = 'Require enrolment key in new courses and prevent removing of enrolment key from existing courses.';
$string['role'] = 'Assign role';
$string['role'] = 'Default assigned role';
$string['self:config'] = 'Configure self enrol instances';
$string['self:manage'] = 'Manage enrolled users';
$string['self:unenrol'] = 'Unenrol users from course';
Expand Down

0 comments on commit fc51860

Please sign in to comment.