Assignment MDL-22893 fixed display of response files and the redirect when (advanced) uploading multiple response file.
This commit is contained in:
@@ -28,8 +28,8 @@ class mod_assignment_renderer extends plugin_renderer_base {
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function assignment_files($context, $itemid) {
|
||||
return $this->render(new assignment_files($context, $itemid));
|
||||
public function assignment_files($context, $itemid, $filearea='submission') {
|
||||
return $this->render(new assignment_files($context, $itemid, $filearea));
|
||||
}
|
||||
|
||||
public function render_assignment_files(assignment_files $tree) {
|
||||
@@ -74,10 +74,10 @@ class mod_assignment_renderer extends plugin_renderer_base {
|
||||
class assignment_files implements renderable {
|
||||
public $context;
|
||||
public $dir;
|
||||
public function __construct($context, $itemid) {
|
||||
public function __construct($context, $itemid, $filearea='submission') {
|
||||
global $USER;
|
||||
$this->context = $context;
|
||||
$fs = get_file_storage();
|
||||
$this->dir = $fs->get_area_tree($this->context->id, 'mod_assignment', 'submission', $itemid);
|
||||
$this->dir = $fs->get_area_tree($this->context->id, 'mod_assignment', $filearea, $itemid);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -400,7 +400,7 @@ class assignment_upload extends assignment_base {
|
||||
if ($submission = $this->get_submission($userid)) {
|
||||
$renderer = $PAGE->get_renderer('mod_assignment');
|
||||
$output = $OUTPUT->box_start('responsefiles').$output;
|
||||
$output .= $renderer->assignment_files($this->context, $submission->id);
|
||||
$output .= $renderer->assignment_files($this->context, $submission->id, 'response');
|
||||
$output .= $OUTPUT->box_end();
|
||||
}
|
||||
|
||||
@@ -419,7 +419,7 @@ class assignment_upload extends assignment_base {
|
||||
*/
|
||||
function upload($mform = null, $filemanager_options = null) {
|
||||
$action = required_param('action', PARAM_ALPHA);
|
||||
|
||||
error_log($action);
|
||||
switch ($action) {
|
||||
case 'finalize':
|
||||
$this->finalize();
|
||||
@@ -516,8 +516,7 @@ class assignment_upload extends assignment_base {
|
||||
$mode = required_param('mode', PARAM_ALPHA);
|
||||
$offset = required_param('offset', PARAM_INT);
|
||||
|
||||
$returnurl = "submissions.php?id={$this->cm->id}&userid=$userid&mode=$mode&offset=$offset";
|
||||
|
||||
$returnurl = new moodle_url("submissions.php?id={$this->cm->id}&userid=$userid&mode=$mode&offset=$offset"); //not xhtml, just url.
|
||||
$mform = new mod_assignment_upload_response_form(null, $this);
|
||||
if ($mform->get_data() and $this->can_manage_responsefiles()) {
|
||||
$fs = get_file_storage();
|
||||
@@ -526,7 +525,7 @@ class assignment_upload extends assignment_base {
|
||||
$submission = $this->get_submission($userid, true, true);
|
||||
if (!$fs->file_exists($this->context->id, 'mod_assignment', 'response', $submission->id, '/', $filename)) {
|
||||
if ($file = $mform->save_stored_file('newfile', $this->context->id, 'mod_assignment', 'response', $submission->id, '/', $filename, false, $USER->id)) {
|
||||
redirect($returnurl);
|
||||
redirect($returnurl->out(false));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -534,7 +533,7 @@ class assignment_upload extends assignment_base {
|
||||
$PAGE->set_title(get_string('upload'));
|
||||
echo $OUTPUT->header();
|
||||
echo $OUTPUT->notification(get_string('uploaderror', 'assignment'));
|
||||
echo $OUTPUT->continue_button($returnurl);
|
||||
echo $OUTPUT->continue_button($returnurl->out(true));
|
||||
echo $OUTPUT->footer();
|
||||
die;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user