Only in date: date_api_argument_handler.inc.orig
Only in date: date-configurable-summary-format.patch
diff -ubr date_old/includes/date_api_argument_handler.inc date/includes/date_api_argument_handler.inc
--- date_old/includes/date_api_argument_handler.inc	2011-01-03 09:39:15.000000000 +0700
+++ date/includes/date_api_argument_handler.inc	2011-07-29 14:46:39.818976420 +0700
@@ -50,6 +50,8 @@
     $options['year_range'] = array('default' => '-3:+3');
     $options['date_method'] = array('default' => 'OR');
     $options['granularity'] = array('default' => 'month');
+    $options['summary_display_format'] = array('default' => '');
+    $options['summary_argument_format'] = array('default' => '');
 
     return $options;
   }
@@ -78,6 +80,28 @@
       '#description' => t("Set the allowable minimum and maximum year range for this argument, either a -X:+X offset from the current year, like '-3:+3' or an absolute minimum and maximum year, like '2005:2010'. When the argument is set to a date outside the range, the page will be returned as 'Page not found (404)'."),
     );
     
+    $formatters = date_get_format_types();
+    $format_options = array();
+    foreach ($formatters as $name => $field) {
+     $format_options[$name] = $field['title'];
+    }
+
+    $optional_format_options = array_merge(array('' => 'Default'), $format_options);
+    $form['summary_display_format'] = array(
+     '#title' => t('Summary display format'),
+     '#type' => 'select',
+     '#options' => $optional_format_options,
+     '#default_value' => $this->options['summary_display_format'],
+     '#description' => t('A user-defined date format. See the <a href="@url">PHP manual</a> for available options.', array('@url' => 'http://php.net/manual/function.date.php')),
+    );
+
+    $form['summary_argument_format'] = array(
+     '#title' => t('Summary argument format'),
+     '#type' => 'textfield',
+     '#default_value' => $this->options['summary_argument_format'],
+     '#description' => t('A user-defined date format. See the <a href="@url">PHP manual</a> for available options.', array('@url' => 'http://php.net/manual/function.date.php')),
+    );
+
     $fields = date_api_fields($this->definition['base']);
     $options = array();
     foreach ($fields['name'] as $name => $field) {
@@ -174,7 +198,12 @@
    * Provide a link to the next level of the view from the summary.
    */
   function summary_name($data) {
+    if ($this->options['summary_display_format']) {
+      $format = variable_get('date_format_' . $this->options['summary_display_format'], '');
+    }
+    else {
     $format = $this->date_handler->views_formats($this->options['granularity'], 'display');
+    }
     $value = $data->{$this->name_alias};
     $range = $this->date_handler->arg_range($value);
     return date_format_date($range[0], 'custom', $format);
@@ -189,7 +218,12 @@
    *   The query results for the row.
    */
   function summary_argument($data) {
+    if ($this->options['summary_argument_format']) {
+      $format = $this->options['summary_argument_format'];
+    }
+    else {
     $format = $this->date_handler->views_formats($this->options['granularity'], 'sql');
+    }
     $value = $data->{$this->name_alias};
     $range = $this->date_handler->arg_range($value);
     return date_format_date($range[0], 'custom', $format);
@@ -199,7 +233,12 @@
    * Provide a link to the next level of the view from the argument.
    */
   function title() {
+    if ($this->options['summary_display_format']) {
+      $format = variable_get('date_format_' . $this->options['summary_display_format'], '');
+    }
+    else {
     $format = $this->date_handler->views_formats($this->options['granularity'], 'display');
+    }
     $range = $this->date_handler->arg_range($this->argument);
     return date_format_date($range[0], 'custom', $format);
   }
