fillFromConfig([ 'format', 'mode', 'minDate', 'maxDate', ]); $this->mode = strtolower($this->mode); if ($this->minDate !== null) { $this->minDate = is_integer($this->minDate) ? Carbon::createFromTimestamp($this->minDate) : Carbon::parse($this->minDate); } if ($this->maxDate !== null) { $this->maxDate = is_integer($this->maxDate) ? Carbon::createFromTimestamp($this->maxDate) : Carbon::parse($this->maxDate); } } /** * {@inheritDoc} */ public function render() { $this->prepareVars(); return $this->makePartial('datepicker'); } /** * Prepares the list data */ public function prepareVars() { $this->vars['name'] = $this->formField->getName(); if ($value = $this->getLoadValue()) { $value = DateTimeHelper::makeCarbon($value, false); $value = $value instanceof Carbon ? $value->toDateTimeString() : $value; } /* * Display alias, used by preview mode */ if ($this->mode == 'time') { $formatAlias = 'time'; } elseif ($this->mode == 'date') { $formatAlias = 'dateLong'; } else { $formatAlias = 'dateTimeLong'; } $this->vars['formatAlias'] = $formatAlias; $this->vars['value'] = $value ?: ''; $this->vars['field'] = $this->formField; $this->vars['mode'] = $this->mode; $this->vars['minDate'] = $this->minDate; $this->vars['maxDate'] = $this->maxDate; } /** * {@inheritDoc} */ public function getSaveValue($value) { if ($this->formField->disabled || $this->formField->hidden) { return FormField::NO_SAVE_DATA; } if (!strlen($value)) { return null; } return $value; } }