diff --git a/main/course_info/maintenance.php b/main/course_info/maintenance.php index bc70304701..3e7e27eedd 100755 --- a/main/course_info/maintenance.php +++ b/main/course_info/maintenance.php @@ -30,6 +30,9 @@ echo Display::page_header($nameTools);

  • +

  • + +
  • diff --git a/main/coursecopy/import_moodle.php b/main/coursecopy/import_moodle.php new file mode 100644 index 0000000000..edbabd2cac --- /dev/null +++ b/main/coursecopy/import_moodle.php @@ -0,0 +1,58 @@ + + * @package chamilo.backup + */ + +require_once '../inc/global.inc.php'; +require_once '../inc/lib/MoodleImport.lib.php'; + +$current_course_tool = TOOL_COURSE_MAINTENANCE; +api_protect_course_script(true); + +// Check access rights (only teachers are allowed here) +if (!api_is_allowed_to_edit()) { + api_not_allowed(true); +} + +// Remove memory and time limits as much as possible as this might be a long process... +if (function_exists('ini_set')) { + api_set_memory_limit('256M'); + ini_set('max_execution_time', 1800); +} + +// Section for the tabs +$this_section = SECTION_COURSES; + +// Breadcrumbs +$interbreadcrumb[] = array( + 'url' => '../course_info/maintenance.php', + 'name' => get_lang('Maintenance') +); + +$form = new FormValidator('import_moodle'); +$form->addFile('moodle_file', get_lang('MoodleFile')); +$form->addButtonImport(get_lang('Import')); + +if ($form->validate()) { + $file = $_FILES['moodle_file']['tmp_name']; + $moodleImport = new MoodleImport(); + var_dump($moodleImport->readMoodleFile($file)); +} + +$templateName = get_lang('ImportFromMoodle'); + +$template = new Template($templateName); +$infoMsg = Display::return_message(get_lang('ImportFromMoodleInstructions')); +$template->assign('info_msg', $infoMsg); +$template->assign('form', $form->returnForm()); +$content = $template->fetch('default/coursecopy/import_moodle.tpl'); + +$template->assign('header', $templateName); +$template->assign('content', $content); + +$template->display_one_col_template(); \ No newline at end of file diff --git a/main/inc/lib/MoodleImport.lib.php b/main/inc/lib/MoodleImport.lib.php new file mode 100644 index 0000000000..4e89b690d3 --- /dev/null +++ b/main/inc/lib/MoodleImport.lib.php @@ -0,0 +1,25 @@ + + * @package chamilo.library + */ + +class MoodleImport +{ + /** + * @param resource $file *.* mbz file moodle course backup + * @return bool + */ + public function readMoodleFile($file) + { + if (is_file($file) && is_readable($file) && ($xml = @file_get_contents($file))) { + $package = new PclZip($file); + $packageContent = $package->listContent(); + return $packageContent; + } + } +} \ No newline at end of file diff --git a/main/template/default/coursecopy/import_moodle.tpl b/main/template/default/coursecopy/import_moodle.tpl new file mode 100644 index 0000000000..07a5bc4770 --- /dev/null +++ b/main/template/default/coursecopy/import_moodle.tpl @@ -0,0 +1,4 @@ +{{ info_msg }} +
    +
    +{{ form }} \ No newline at end of file