mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 06:18:28 +01:00
94 lines
2.9 KiB
HTML
94 lines
2.9 KiB
HTML
<?php
|
|
//This page prints the backup todo list to see everything
|
|
|
|
//Check login
|
|
require_login();
|
|
|
|
$loginurl = get_login_url();
|
|
|
|
if (!empty($course->id)) {
|
|
if (!has_capability('moodle/backup:backupcourse', get_context_instance(CONTEXT_COURSE, $course->id))) {
|
|
if (empty($to)) {
|
|
print_error("cannotuseadminadminorteacher", '', $loginurl);
|
|
} else {
|
|
if (!has_capability('moodle/backup:backupcourse', get_context_instance(CONTEXT_COURSE, $to))) {
|
|
print_error("cannotuseadminadminorteacher", '', $loginurl);
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
if (!has_capability('moodle/backup:backupcourse', get_context_instance(CONTEXT_SYSTEM))) {
|
|
print_error("cannotuseadmin", '', $loginurl);
|
|
}
|
|
}
|
|
|
|
|
|
//Check site
|
|
$site = get_site();
|
|
|
|
$preferences = new StdClass;
|
|
backup_fetch_prefs_from_request($preferences,$count,$course);
|
|
//Another Info
|
|
backup_add_static_preferences($preferences);
|
|
|
|
if ($count == 0) {
|
|
notice("No backupable modules are installed!");
|
|
}
|
|
|
|
|
|
if (empty($to)) {
|
|
//Start the main table
|
|
echo "<table cellpadding=\"5\">";
|
|
|
|
//Now print the Backup Name tr
|
|
echo "<tr>";
|
|
echo "<td align=\"right\"><b>";
|
|
echo get_string("name").":";
|
|
echo "</b></td><td>";
|
|
echo $preferences->backup_name;
|
|
echo "</td></tr>";
|
|
|
|
//Start the main tr, where all the backup progress is done
|
|
echo "<tr>";
|
|
echo "<td colspan=\"2\">";
|
|
|
|
//Start the main ul
|
|
echo "<ul>";
|
|
}
|
|
|
|
$errorstr = '';
|
|
$status = backup_execute($preferences, $errorstr);
|
|
|
|
//Ends th main ul
|
|
echo "</ul>";
|
|
|
|
//End the main tr, where all the backup is done
|
|
echo "</td></tr>";
|
|
|
|
//End the main table
|
|
echo "</table>";
|
|
|
|
if (!$status) {
|
|
print_error('error', 'error', "$CFG->wwwroot/course/view.php?id=$course->id");
|
|
}
|
|
|
|
if (empty($to)) {
|
|
//Print final message
|
|
echo $OUTPUT->box(get_string("backupfinished"));
|
|
$context = get_context_instance(CONTEXT_COURSE, $course->id);
|
|
echo $OUTPUT->continue_button("$CFG->wwwroot/files/index.php?contextid=".$context->id."&filearea=course_backup&itemid=0");
|
|
} else {
|
|
echo $OUTPUT->box(get_string('importdataexported'));
|
|
if (!empty($preferences->backup_destination)) {
|
|
$filename = $preferences->backup_destination."/".$preferences->backup_name;
|
|
} else {
|
|
$filename = $preferences->backup_course."/backupdata/".$preferences->backup_name;
|
|
}
|
|
error_log($filename);
|
|
$SESSION->import_preferences = $preferences;
|
|
echo $OUTPUT->continue_button($CFG->wwwroot.'/course/import/activities/index.php?id='.$to.'&fromcourse='.$id.'&filename='.$filename);
|
|
}
|
|
|
|
$SESSION->backupprefs[$course->id] = null; // unset it so we're clear next time.
|
|
?>
|