diff --git a/backup/restore_form.html b/backup/restore_form.html index 8e50ac97efd..20393f0b0d5 100644 --- a/backup/restore_form.html +++ b/backup/restore_form.html @@ -422,7 +422,7 @@ $xml_file = $CFG->dataroot."/temp/backup/".$backup_unique_code."/moodle.xml"; $info = restore_read_xml_info($xml_file); -$siterolesarray = get_assignable_roles (get_context_instance(CONTEXT_COURSE, $course_header->course_id), "shortname"); +$siterolesarray = get_assignable_roles (get_context_instance(CONTEXT_COURSE, $course->id), "shortname"); echo ('
'.get_string('sourcerole').' | '.get_string('targetrole').' |
'); - print_string('teacheredit'); + print_string('defaultcourseteacher'); echo (' | '); // get the first teacheredit legacy $roles = get_roles_with_capability('moodle/legacy:editingteacher', CAP_ALLOW, get_context_instance(CONTEXT_SYSTEM, SITEID)); - + $editteacher = array_shift($roles); choose_from_menu ($siterolesarray, "defaultteacheredit", $editteacher->id); echo (' |
'); - print_string('teacher'); + print_string('noneditingteacher'); echo (' | '); // get the first teacheredit legacy @@ -457,7 +457,7 @@ if ($info->backup_moodle_version < 2006092801) { /// Student echo (' |
'); - print_string('student'); + print_string('defaultcoursestudent'); echo (' | '); // get the first teacheredit legacy @@ -469,25 +469,26 @@ if ($info->backup_moodle_version < 2006092801) { } else { // 1.7 and above backup - $roles = restore_read_xml_roles($xml_file); + if (is_array($roles)) { // possible to have course with no roles - foreach ($roles->roles as $roleid=>$role) { - echo (' |
'); - echo $role->shortname; - echo (' | '); + foreach ($roles->roles as $roleid=>$role) { + echo (' |
'); + echo $role->shortname; + echo (' | '); - // see if any short name match - $matchrole = 0; - foreach ($siterolesarray as $siteroleid=>$siteroleshortname) { - if ($siteroleshortname == $role->shortname) { - $matchrole = $siteroleid; - break; - } + // see if any short name match + $matchrole = 0; + foreach ($siterolesarray as $siteroleid=>$siteroleshortname) { + if ($siteroleshortname == $role->shortname) { + $matchrole = $siteroleid; + break; + } + } + + choose_from_menu ($siterolesarray, "roles_".$roleid, $matchrole, 'new role', '', '0'); + echo (' |