$restoreThis = $webDir . '/courses/tmpUnzipping/' . $uid . '/' . safe_filename(); mkdir($restoreThis, 0755, true); archiveTables($course_id, $course_code, $restoreThis); recurse_copy($webDir . '/courses/' . $course_code, $restoreThis . '/html'); register_posted_variables(array( 'course_code' => true, 'course_lang' => true, 'course_title' => true, 'course_desc' => true, 'course_vis' => true, 'course_prof' => true), 'all'); create_restored_course($tool_content, $restoreThis, $course_code, $course_lang, $course_title, $course_desc, $course_vis, $course_prof); $course_code = $currentCourseCode; // revert course code to the correct value } else { $desc = Database::get()->querySingle("SELECT description FROM course WHERE id = ?d", $course_id)->description; $old_deps = array(); Database::get()->queryFunc("SELECT department FROM course_department WHERE course = ?d", function ($dep) use ($treeObj, &$old_deps) { $old_deps[] = array('name' => $treeObj->getFullPath($dep->department)); }, $course_id); $tool_content = course_details_form($public_code, $currentCourseName, $titulaires, $currentCourseLanguage, null, $visible, $desc, $old_deps); } load_js('jstree3'); list($js, $html) = $treeObj->buildCourseNodePicker(); $head_content .= $js;
<table class='table-default'>"; $tool_content .= "<tr><td>" . unpack_zip_show_files($pathToArchive) . "</td></tr>"; $tool_content .= "</table></fieldset>"; } else { $tool_content .= "<div class='alert alert-danger'>$langFileNotFound</div>"; } } elseif (isset($_POST['create_restored_course'])) { if (!isset($_POST['token']) || !validate_csrf_token($_POST['token'])) csrf_token_error(); register_posted_variables(array('restoreThis' => true, 'course_code' => true, 'course_lang' => true, 'course_title' => true, 'course_desc' => true, 'course_vis' => true, 'course_prof' => true), 'all'); create_restored_course($tool_content, getDirectReference($restoreThis) , $course_code, $course_lang, $course_title, $course_desc, $course_vis, $course_prof); } elseif (isset($_POST['do_restore'])) { if (!isset($_POST['token']) || !validate_csrf_token($_POST['token'])) csrf_token_error(); $base = getDirectReference($_POST['restoreThis']); if (!file_exists($base . '/config_vars')) { $tool_content .= "<div class='alert alert-warning'>$langInvalidArchive</div>"; draw($tool_content, 3); exit; } if (($data = get_serialized_file('course'))) { // 3.0-style backup $data = $data[0]; if (isset($data['fake_code'])) { $data['public_code'] = $data['fake_code']; } $hierarchy = get_serialized_file('hierarchy');