Как вычислить время окончания приема?

Клиент записан на время Х, длительность приема У, как получить время окончания приема? В соответствующем типе материала устанавливаем три поля: 1. field_appointment_time - поле Date, для даты и времени начала приема клиента, 1. field_appointment_duration - тоже Date, но в формате H:i, для указания длительности приема в часах и минутах, 3. field_endof_appointment - поле Computed, для хранения вычисленного значения даты и времени окончания приема клиента. Итак, используем Computed Field, в поле для кода пишем (теги <?php
/** Вытаскиваем данные из полей */
$field_info = array_pop(field_get_items($entity_type, $entity, 'field_appointment_time'));
$start = $field_info['value'];
$date_start = new DateTime($start);

$field_duration = array_pop(field_get_items($entity_type, $entity, 'field_appointment_duration'));
$duration= $field_duration['value'];

/** Чтобы вытащить часы и минуты длительности приема, формируем промежуточный объект даты и обрезаем его до часов и минут, соответственно. */
$duration_dummy_date=new DateTime ($duration);
$duration_hours=$duration_dummy_date->format('H');
$duration_minutes=$duration_dummy_date->format('i');

/** Формируем интервал и прибавляем его к времени начала приема */
$interval='PT'.$duration_hours.'H'.$duration_minutes.'M';
$date_end = $date_start->add(new DateInterval($interval));

/** Формируем дату для вывода в поле */
$entity_field[0]['value']=$date_end->format('l, d/m/Y- H:i');
?>
Длительность приема в моей задаче обычно устанавливается в минутах, редко - в часах, поэтому в объекте $duration выделяются строки с часами и минутами. В поле для вывода оставляем выражение по умолчанию.
<?php
$display_output
= $entity_field_item['value'];
?>
Результат: Время записи: Sat, 13/06/2015 - 15:30 Длительность приема: 00:30 Время окончания записи: Saturday, 13/06/2015- 16:00