wwwroot/login/index.php"); } } else { if (!isadmin()) { error("You need to be an admin user to use this page.", "$CFG->wwwroot/login/index.php"); } } //Check site if (!$site = get_site()) { error("Site not found!"); } //Prepend dataroot to variable to have the absolute path $file = $CFG->dataroot."/".$file; //Start the main table echo ""; echo ""; echo "
"; //Start the mail ul echo "
    "; //Check the file exists if (!is_file($file)) { error ("File not exists ($file)"); } //Check the file name ends with .zip if (!substr($file,-4) == ".zip") { error ("File has an incorrect extension"); } //Now calculate the unique_code for this restore $backup_unique_code = time(); //Now check and create the backup dir (if it doesn't exist) $status = check_and_create_backup_dir($backup_unique_code); //Empty dir if ($status) { echo "
  • ".get_string("creatingtemporarystructures"); $status = clear_backup_dir($backup_unique_code); } //Now delete old data and directories under dataroot/temp/backup if ($status) { echo "
  • ".get_string("deletingolddata"); $status = backup_delete_old_data(); } //Now copy he zip file to dataroot/temp/backup/backup_unique_code if ($status) { echo "
  • ".get_string("copyingzipfile"); $status = backup_copy_file($file,$CFG->dataroot."/temp/backup/".$backup_unique_code."/".basename($file)); } //Now unzip the file if ($status) { echo "
  • ".get_string("unzippingbackup"); $status = restore_unzip ($CFG->dataroot."/temp/backup/".$backup_unique_code."/".basename($file)); } //Now check for the moodle.xml file if ($status) { $xml_file = $CFG->dataroot."/temp/backup/".$backup_unique_code."/moodle.xml"; echo "
  • ".get_string("checkingbackup"); $status = restore_check_moodle_file ($xml_file); } $info = ""; $course_header = ""; //Now read the info tag (all) if ($status) { echo "
  • ".get_string("readinginfofrombackup"); //Reading info from file $info = restore_read_xml_info ($xml_file); //Reading course_header from file $course_header = restore_read_xml_course_header ($xml_file); } //End the main ul echo "
"; //End the main table echo "
"; //Now we print in other table, the backup and the course it contains info if ($info and $course_header and $status) { //First, the course info $status = restore_print_course_header($course_header); //Now, the backup info if ($status) { $status = restore_print_info($info); } } //Save course header and info into php session if ($status) { $SESSION->info = $info; $SESSION->course_header = $course_header; } //Finally, a little form to continue //with some hidden fields if ($status) { echo "
"; $hidden["backup_unique_code"] = $backup_unique_code; $hidden["launch"] = "form"; $hidden["file"] = $file; $hidden["id"] = $id; print_single_button("restore.php", $hidden, get_string("continue"),"post"); echo "
"; } if (!$status) { error ("An error has ocurred"); } ?>