MDL-37455 Allow mod_folder to display the content inline on course page instead of on separate page
This commit is contained in:
+8
-3
@@ -31,7 +31,7 @@ require_once("$CFG->dirroot/repository/lib.php");
|
||||
|
||||
$id = required_param('id', PARAM_INT); // Course module ID
|
||||
|
||||
$cm = get_coursemodule_from_id('folder', $id, 0, false, MUST_EXIST);
|
||||
$cm = get_coursemodule_from_id('folder', $id, 0, true, MUST_EXIST);
|
||||
$context = context_module::instance($cm->id, MUST_EXIST);
|
||||
$folder = $DB->get_record('folder', array('id'=>$cm->instance), '*', MUST_EXIST);
|
||||
$course = $DB->get_record('course', array('id'=>$cm->course), '*', MUST_EXIST);
|
||||
@@ -52,14 +52,19 @@ $options = array('subdirs'=>1, 'maxbytes'=>$CFG->maxbytes, 'maxfiles'=>-1, 'acce
|
||||
file_prepare_standard_filemanager($data, 'files', $options, $context, 'mod_folder', 'content', 0);
|
||||
|
||||
$mform = new mod_folder_edit_form(null, array('data'=>$data, 'options'=>$options));
|
||||
if (!empty($folder->display) && $folder->display == FOLDER_DISPLAY_INLINE) {
|
||||
$redirecturl = course_get_url($cm->course, $cm->sectionnum);
|
||||
} else {
|
||||
$redirecturl = new moodle_url('/mod/folder/view.php', array('id' => $cm->id));
|
||||
}
|
||||
|
||||
if ($mform->is_cancelled()) {
|
||||
redirect(new moodle_url('/mod/folder/view.php', array('id'=>$cm->id)));
|
||||
redirect($redirecturl);
|
||||
|
||||
} else if ($formdata = $mform->get_data()) {
|
||||
$formdata = file_postupdate_standard_filemanager($formdata, 'files', $options, $context, 'mod_folder', 'content', 0);
|
||||
$DB->set_field('folder', 'revision', $folder->revision+1, array('id'=>$folder->id));
|
||||
redirect(new moodle_url('/mod/folder/view.php', array('id'=>$cm->id)));
|
||||
redirect($redirecturl);
|
||||
}
|
||||
|
||||
echo $OUTPUT->header();
|
||||
|
||||
Reference in New Issue
Block a user