--- lib.old.php	2013-03-31 21:18:10.146981093 +0200
+++ lib.php	2013-03-31 21:45:01.427005271 +0200
@@ -77,6 +77,19 @@
             $status = array_merge($status, $assignment->reset_userdata($data));
         }
     }
+        // Updating dates - shift may be negative too.
+       $componentstr = get_string('modulenameplural', 'assign');
+
+        if ($data->timeshift) {
+            shift_course_mod_dates('assign',
+                                    array('duedate', 'allowsubmissionsfromdate','cutoffdate'),
+                                    $data->timeshift,
+                                    $data->courseid);
+            $status[] = array('component'=>$componentstr,
+                              'item'=>get_string('datechanged'),
+                              'error'=>false);
+        }
+
     return $status;
 }
 
