# This patch file was generated by NetBeans IDE
# This patch can be applied using context Tools: Apply Diff Patch action on respective folder.
# It uses platform neutral UTF-8 encoding.
# Above lines and this line are ignored by the patching process.
Index: moodle/mod/assignment/lib.php
--- moodle/mod/assignment/lib.php Base (1.488)
+++ moodle/mod/assignment/lib.php Locally Modified (Based On 1.488)
@@ -747,6 +747,10 @@
                 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 @@
         $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: moodle/mod/assignment/type/upload/assignment.class.php
--- moodle/mod/assignment/type/upload/assignment.class.php Base (1.125)
+++ moodle/mod/assignment/type/upload/assignment.class.php Locally Modified (Based On 1.125)
@@ -361,6 +361,9 @@
         } else if ($finalize) {
             $this->finalize('single');
         }
+        if ($unfinalize || $finalize) {
+            $mode = 'singlenosave';
+        }
         parent::submissions($mode);
     }
 
@@ -689,8 +692,10 @@
         $eventdata->userid       = $userid;
         events_trigger('assessable_files_done', $eventdata);
 
+        if ($forcemode==null) {
         redirect($returnurl->out(false));
     }
+    }
 
     function finalizeclose() {
         global $DB;
@@ -752,8 +757,11 @@
                 die;
             }
         }
+
+        if ($forcemode==null) {
         redirect($returnurl);
     }
+    }
 
 
     function delete() {
