You are here

function date_all_day_date_formatter_dates_alter in Date 8

Same name and namespace in other branches
  1. 7.3 date_all_day/date_all_day.module \date_all_day_date_formatter_dates_alter()
  2. 7.2 date_all_day/date_all_day.module \date_all_day_date_formatter_dates_alter()

Implements hook_date_formatter_dates_alter().

This allows us to alter the $dates array created by date_formatter_process.

File

date_all_day/date_all_day.module, line 53
Adds All Day functionality to the Date field.

Code

function date_all_day_date_formatter_dates_alter(&$dates, $context) {
  $field = $context['field'];
  $instance = $context['instance'];
  $format = $context['format'];
  $entity = $context['entity'];
  $date1 = $dates['value']['local']['object'];
  $date2 = $dates['value2']['local']['object'];
  $is_all_day = date_all_day_field($field, $instance, $date1, $date2);
  $all_day1 = '';
  $all_day2 = '';
  if ($format != 'format_interval' && $is_all_day) {
    $all_day1 = theme('date_all_day', array(
      'field' => $field,
      'instance' => $instance,
      'which' => 'date1',
      'date1' => $date1,
      'date2' => $date2,
      'format' => $format,
      'entity' => $entity,
    ));
    $all_day2 = theme('date_all_day', array(
      'field' => $field,
      'instance' => $instance,
      'which' => 'date2',
      'date1' => $date1,
      'date2' => $date2,
      'format' => $format,
      'entity' => $entity,
    ));
    $dates['value']['formatted_time'] = theme('date_all_day_label');
    $dates['value2']['formatted_time'] = theme('date_all_day_label');
    $dates['value']['formatted'] = $all_day1;
    $dates['value2']['formatted'] = $all_day2;
  }
}