You are here

function _timefield_map_input_format_to_display_format in Timefield 7

Helper function to map format settings for jQuery timepicker widget to PHP format settings, so that input formats are consistent.

1 call to _timefield_map_input_format_to_display_format()
timefield_field_widget_form in ./timefield.module
Implements hook_field_widget_form().

File

./timefield.module, line 1185
Defines a Field API field for time

Code

function _timefield_map_input_format_to_display_format($date, $display_format) {
  $date_value = date_parse($date);
  if (count($date_value['errors'])) {
    return '';
  }
  if ($display_format['showPeriod']) {
    switch ($date_value['hour']) {
      case 0:
        $format = 12;
        break;
      case $date_value['hour'] > 12:
        $format = $date_value['hour'] - 12;
        break;
      default:
        $format = $date_value['hour'];
        break;
    }
  }
  else {
    $format = $date_value['hour'];
  }
  $format .= $display_format['separator'];
  $format .= str_pad((string) $date_value['minute'], 2, "0", STR_PAD_LEFT);
  if ($display_format['showPeriod']) {
    $format .= $display_format['periodSeparator'];
    $format .= $date_value['hour'] >= 12 ? $display_format['pm_text'] : $display_format['am_text'];
  }
  return $format;
}