1<?php
2
3/**
4 * Class ilDclDateTimeREpresentation
5 *
6 * @author  Michael Herren <mh@studer-raimann.ch>
7 * @version 1.0.0
8 */
9class ilDclDatetimeFieldRepresentation extends ilDclBaseFieldRepresentation
10{
11    public function getInputField(ilPropertyFormGUI $form, $record_id = 0)
12    {
13        $input = new ilDateTimeInputGUI($this->getField()->getTitle(), 'field_' . $this->getField()->getId());
14        $input->setStartYear(date("Y") - 100);
15        $this->setupInputField($input, $this->getField());
16
17        return $input;
18    }
19
20
21    public function addFilterInputFieldToTable(ilTable2GUI $table)
22    {
23        $input = $table->addFilterItemByMetaType("filter_" . $this->getField()->getId(), ilTable2GUI::FILTER_DATE_RANGE, false, $this->getField()->getId());
24        $input->setSubmitFormOnEnter(true);
25        $input->setStartYear(date("Y") - 100);
26
27        $this->setupFilterInputField($input);
28
29        return $this->getFilterInputFieldValue($input);
30    }
31
32
33    public function passThroughFilter(ilDclBaseRecordModel $record, $filter)
34    {
35        $value = $record->getRecordFieldValue($this->getField()->getId());
36        if ((!$filter['from'] || $value >= $filter['from']) && (!$filter['to'] || $value <= $filter['to'])) {
37            return true;
38        }
39
40        return false;
41    }
42}
43