diff -ur date-orig/date/date_admin.inc ../date/date/date_admin.inc
--- date-orig/date/date_admin.inc	2009-03-03 09:16:54.000000000 -0600
+++ ../date/date/date_admin.inc	2009-05-16 18:07:01.000000000 -0500
@@ -69,7 +69,7 @@
   $form['input']['default_value'] = array(
     '#type' => 'select', '#title' => t('Default value'),
     '#default_value' => !empty($widget['default_value']) ? $widget['default_value'] : 'blank',
-    '#options' => array('blank' => t('Blank'), 'now' => t('Now'), 'strtotime' => t('Relative')),
+    '#options' => array('blank' => t('Blank'), 'now' => t('Now'), 'strtotime' => t('Relative'), 'destination' => t('Destination String')),
     '#description' => t("A default value to use for this field. If you select 'Relative', add details below."),
     );
   $form['input']['default_value2'] = array(
@@ -712,4 +712,4 @@
       );  
   }
   return $form;
-}
\ No newline at end of file
+}
diff -ur date-orig/date/date_elements.inc ../date/date/date_elements.inc
--- date-orig/date/date_elements.inc	2009-05-14 09:58:04.000000000 -0500
+++ ../date/date/date_elements.inc	2009-05-16 18:06:37.000000000 -0500
@@ -193,6 +193,11 @@
     $default_value = $field['widget']['default_value2'];
     $default_value_code = $field['widget']['default_value_code2'];
   }
+
+  // Custom support for making date match that supplied on the destination url arg.
+  $dest_arr = array();
+  preg_match('/(\d+)(?:-(\d+))?(?:-(\d+))?$/', urldecode(drupal_get_destination()), $dest_arr);
+
   if (empty($item) || empty($item[$part])) {
     if (empty($default_value) || $default_value == 'blank' || $delta > 0) {
       return NULL;
@@ -205,6 +210,16 @@
         $date = date_make_date($item['value'], $timezone, DATE_DATETIME, $field['granularity']);
       }
     }
+    elseif ($default_value == 'destination' && count($dest_arr)) {
+      if (empty($dest_arr[2])) {
+        $dest_arr[2] = '01';
+      }
+      if (empty($dest_arr[3])) {
+        $dest_arr[3] = '01';
+      }
+      $value = date_fuzzy_datetime("$dest_arr[1]-$dest_arr[2]-$dest_arr[3] ". strftime('%T',time()));
+      $date = date_make_date($value, $timezone, DATE_DATETIME, $field['granularity']);
+    }
     // Special case for 'now' when using dates with no timezone,
     // make sure 'now' isn't adjusted to UTC value of 'now'.
     elseif ($field['tz_handling'] == 'none') {
Only in ../date/translations: fr.po
