. * --------------------------------------------------------------------- */ if (!defined('GLPI_ROOT')) { die("Sorry. You can't access this file directly"); } /** * Holiday Class **/ class Holiday extends CommonDropdown { static $rightname = 'calendar'; public $can_be_translated = false; static function getTypeName($nb = 0) { return _n('Close time', 'Close times', $nb); } function getAdditionalFields() { return [['name' => 'begin_date', 'label' => __('Start'), 'type' => 'date'], ['name' => 'end_date', 'label' => __('End'), 'type' => 'date'], ['name' => 'is_perpetual', 'label' => __('Recurrent'), 'type' => 'bool']]; } function rawSearchOptions() { $tab = parent::rawSearchOptions(); $tab[] = [ 'id' => '11', 'table' => $this->getTable(), 'field' => 'begin_date', 'name' => __('Start'), 'datatype' => 'date' ]; $tab[] = [ 'id' => '12', 'table' => $this->getTable(), 'field' => 'end_date', 'name' => __('End'), 'datatype' => 'date' ]; $tab[] = [ 'id' => '13', 'table' => $this->getTable(), 'field' => 'is_perpetual', 'name' => __('Recurrent'), 'datatype' => 'bool' ]; return $tab; } function prepareInputForAdd($input) { $input = parent::prepareInputForAdd($input); if (empty($input['end_date']) || ($input['end_date'] == 'NULL') || ($input['end_date'] < $input['begin_date'])) { $input['end_date'] = $input['begin_date']; } return $input; } function prepareInputForUpdate($input) { $input = parent::prepareInputForUpdate($input); if (isset($input['begin_date']) && (empty($input['end_date']) || ($input['end_date'] == 'NULL') || ($input['end_date'] < $input['begin_date']))) { $input['end_date'] = $input['begin_date']; } return $input; } }