From a2d1d7696102cdd1d23ebd896e60486eb0794fe6 Mon Sep 17 00:00:00 2001 From: Damyon Wiese Date: Wed, 6 Jun 2012 15:49:37 +0800 Subject: [PATCH] MDL-33547: Fix for mod_assign portfolio export for a list of files. This will fix any submission or feedback plugin using render_area_files to show a list of files. --- mod/assign/locallib.php | 10 ---------- mod/assign/portfolio_callback.php | 4 ++-- mod/assign/renderable.php | 2 +- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/mod/assign/locallib.php b/mod/assign/locallib.php index 2ab70d61029..bb203f0b4e0 100644 --- a/mod/assign/locallib.php +++ b/mod/assign/locallib.php @@ -39,12 +39,6 @@ define('ASSIGN_FILTER_SUBMITTED', 'submitted'); define('ASSIGN_FILTER_SINGLE_USER', 'singleuser'); define('ASSIGN_FILTER_REQUIRE_GRADING', 'require_grading'); -/** - * File areas for assignment portfolio if enabled - */ -define('ASSIGN_FILEAREA_PORTFOLIO_FILES', 'portfolio_files'); - - /** Include accesslib.php */ require_once($CFG->libdir.'/accesslib.php'); /** Include formslib.php */ @@ -53,8 +47,6 @@ require_once($CFG->libdir.'/formslib.php'); require_once($CFG->dirroot . '/repository/lib.php'); /** Include local mod_form.php */ require_once($CFG->dirroot.'/mod/assign/mod_form.php'); -/** Include portfoliolib.php */ -require_once($CFG->libdir . '/portfoliolib.php'); /** gradelib.php */ require_once($CFG->libdir.'/gradelib.php'); /** grading lib.php */ @@ -2275,8 +2267,6 @@ class assign { $submissionid = $submission->id; } - - $fs = get_file_storage(); $browser = get_file_browser(); $files = $fs->get_area_files($this->get_context()->id, $component, $area , $submissionid , "timemodified", false); diff --git a/mod/assign/portfolio_callback.php b/mod/assign/portfolio_callback.php index 7453ef22cf4..cee75bcd272 100644 --- a/mod/assign/portfolio_callback.php +++ b/mod/assign/portfolio_callback.php @@ -69,6 +69,7 @@ class assign_portfolio_caller extends portfolio_module_caller_base { 'cmid' => true, 'sid' => false, 'area' => false, + 'component' => false, 'fileid' => false, 'plugin' => false, 'editor' => false, @@ -105,11 +106,10 @@ class assign_portfolio_caller extends portfolio_module_caller_base { } - // export either an area of files or a single file (see function for more detail) // the first arg is an id or null. If it is an id, the rest of the args are ignored // if it is null, the rest of the args are used to load a list of files from get_areafiles - $this->set_file_and_format_data($this->fileid, $context->id, 'mod_assign', $this->area, $this->sid, 'timemodified', false); + $this->set_file_and_format_data($this->fileid, $context->id, $this->component, $this->area, $this->sid, 'timemodified', false); } diff --git a/mod/assign/renderable.php b/mod/assign/renderable.php index fa7a9fe4f40..2f52c347ff6 100644 --- a/mod/assign/renderable.php +++ b/mod/assign/renderable.php @@ -473,7 +473,7 @@ class assign_files implements renderable { require_once($CFG->libdir . '/portfoliolib.php'); if (count($files) >= 1 && has_capability('mod/assign:exportownsubmission', $this->context)) { $button = new portfolio_add_button(); - $button->set_callback_options('assign_portfolio_caller', array('cmid' => $this->cm->id, 'sid'=>$sid, 'area'=>$filearea), '/mod/assign/portfolio_callback.php'); + $button->set_callback_options('assign_portfolio_caller', array('cmid' => $this->cm->id, 'sid'=>$sid, 'area'=>$filearea, 'component'=>$component), '/mod/assign/portfolio_callback.php'); $button->reset_formats(); $this->portfolioform = $button->to_html(PORTFOLIO_ADD_TEXT_LINK); }