2 //This script is used to configure and execute the backup proccess.
4 //Define some globals for all the script
6 require_once ("../config.php");
7 require_once ("lib.php");
8 require_once ("backuplib.php");
9 require_once ("$CFG->libdir/blocklib.php");
11 $id = optional_param( 'id' ); // course id
12 $to = optional_param( 'to' ); // id of course to import into afterwards.
13 $cancel = optional_param( 'cancel' );
14 $launch = optional_param( 'launch' );
19 if (!isteacheredit($id)) {
21 error("You need to be a teacher or admin user to use this page.", "$CFG->wwwroot/login/index.php");
23 if (!isteacheredit($to)) {
24 error("You need to be a teacher or admin user to use this page.", "$CFG->wwwroot/login/index.php");
30 error("You need to be an admin user to use this page.", "$CFG->wwwroot/login/index.php");
35 if (!$site = get_site()) {
36 error("Site not found!");
39 //Check necessary functions exists. Thanks to gregb@crowncollege.edu
40 backup_required_functions();
42 //Check backup_version
44 $linkto = "backup.php?id=".$id.((!empty($to)) ?
'&to='.$to : '');
46 $linkto = "backup.php";
48 upgrade_backup_db($linkto);
52 $strcoursebackup = get_string("coursebackup");
55 $strcoursebackup = get_string('importdata');
57 $stradministration = get_string("administration");
59 //If cancel has been selected, go back to course main page (bug 2817)
62 $redirecto = $CFG->wwwroot
. '/course/view.php?id=' . $id; //Course page
64 $redirecto = $CFG->wwwroot
;
66 redirect ($redirecto, get_string('backupcancelled')); //Site page
70 //If no course has been selected, show a list of available courses
73 print_header("$site->shortname: $strcoursebackup", $site->fullname
,
74 "<a href=\"$CFG->wwwroot/$CFG->admin/index.php\">$stradministration</a> -> $strcoursebackup");
76 if ($courses = get_courses('all','c.shortname','c.id,c.shortname,c.fullname')) {
77 print_heading(get_string("choosecourse"));
78 print_simple_box_start("center");
79 foreach ($courses as $course) {
80 echo "<a href=\"backup.php?id=$course->id\">$course->fullname ($course->shortname)</a><br />";
82 print_simple_box_end();
84 print_heading(get_string("nocoursesyet"));
85 print_continue("$CFG->wwwroot/$CFG->admin/index.php");
91 //Get and check course
92 if (! $course = get_record("course", "id", $id)) {
93 error("Course ID was incorrect (can't find it)");
96 check_for_restricted_user($USER->username
, "$CFG->wwwroot/course/view.php?id=$course->id");
100 print_header("$site->shortname: $strcoursebackup", $site->fullname
,
101 "<a href=\"$CFG->wwwroot/$CFG->admin/index.php\">$stradministration</a> ->
102 <a href=\"backup.php\">$strcoursebackup</a> -> $course->fullname ($course->shortname)");
104 print_header("$course->shortname: $strcoursebackup", $course->fullname
,
105 "<a href=\"$CFG->wwwroot/course/view.php?id=$course->id\">$course->shortname</a> ->
110 print_heading("$strcoursebackup: $course->fullname ($course->shortname)");
111 print_simple_box_start("center");
113 //Adjust some php variables to the execution of this script
114 @ini_set
("max_execution_time","3000");
115 raise_memory_limit("128M");
117 //Call the form, depending the step we are
119 include_once("backup_form.html");
120 } else if ($launch == "check") {
121 include_once("backup_check.html");
122 } else if ($launch == "execute") {
123 include_once("backup_execute.html");
125 print_simple_box_end();