assignment mdl-24001 fixed toggling the 'revert to draft'/ 'no more submissions'...
authorAparup Banerjee <nebgor@gmail.com>
Tue, 31 Aug 2010 07:55:12 +0000 (07:55 +0000)
committerAparup Banerjee <nebgor@gmail.com>
Tue, 31 Aug 2010 07:55:12 +0000 (07:55 +0000)
mod/assignment/lib.php
mod/assignment/type/upload/assignment.class.php

index bc8d8cc..b50b4f8 100644 (file)
@@ -747,6 +747,10 @@ class assignment_base {
                 redirect('submissions.php?id='.$id.'&userid='. $nextid . '&mode=single&offset='.$offset);
                 break;
 
+            case 'singlenosave':
+                $this->display_submission();
+                break;
+
             default:
                 echo "something seriously is wrong!!";
                 break;
@@ -2175,7 +2179,7 @@ class mod_assignment_grading_form extends moodleform {
         $mform->addElement('hidden', 'sesskey', sesskey());
         $mform->setType('sesskey', PARAM_ALPHANUM);
         $mform->addElement('hidden', 'mode', 'grade');
-        $mform->setType('mode', PARAM_INT);
+        $mform->setType('mode', PARAM_TEXT);
         $mform->addElement('hidden', 'menuindex', "0");
         $mform->setType('menuindex', PARAM_INT);
         $mform->addElement('hidden', 'saveuserid', "-1");
index 12885f9..9e4254f 100644 (file)
@@ -361,6 +361,9 @@ class assignment_upload extends assignment_base {
         } else if ($finalize) {
             $this->finalize('single');
         }
+        if ($unfinalize || $finalize) {
+            $mode = 'singlenosave';
+        }
         parent::submissions($mode);
     }
 
@@ -689,7 +692,9 @@ class assignment_upload extends assignment_base {
         $eventdata->userid       = $userid;
         events_trigger('assessable_files_done', $eventdata);
 
-        redirect($returnurl->out(false));
+        if ($forcemode==null) {
+            redirect($returnurl->out(false));
+        }
     }
 
     function finalizeclose() {
@@ -752,7 +757,10 @@ class assignment_upload extends assignment_base {
                 die;
             }
         }
-        redirect($returnurl);
+
+        if ($forcemode==null) {
+            redirect($returnurl);
+        }
     }