protected function _setEndTime($val) { if (!is_array($val)) { //Only expecting direct setter from Form input return; } $date = new Time("{$val['hour']}:{$val['minute']} {$val['meridian']}"); if (!empty($this->end)) { $date->year($this->end->year); $date->month($this->end->month); $date->day($this->end->day); } if ($date != $this->end) { //Do not trigger "dirty" unless actually changed $this->end = $date; } }