52 \
Magento\Customer\Helper\Address $addressHelper,
69 $this->
setTemplate(
'Magento_Customer::widget/dob.phtml');
78 return $attributeMetadata ? (bool)$attributeMetadata->isVisible() :
false;
87 return $attributeMetadata ? (bool)$attributeMetadata->isRequired() :
false;
96 $this->setTime($date ? strtotime($date) :
false);
109 $filterCode = $attributeMetadata->getInputFilter();
112 if ($filterCode ==
'date') {
115 $filter = $this->filterFactory->create($filterCode,
$data);
131 $value = date(
'Y-m-d', $this->getTime());
142 return $this->getTime() ? date(
'd', $this->getTime()) :
'';
150 return $this->getTime() ? date(
'm', $this->getTime()) :
'';
158 return $this->getTime() ? date(
'Y', $this->getTime()) :
'';
168 return __(
'Date of Birth');
178 $this->dateElement->setData([
182 'class' => $this->getHtmlClass(),
183 'value' => $this->getValue(),
186 'years_range' =>
'-120y:c+nn',
188 'change_month' =>
'true',
189 'change_year' =>
'true',
193 return $this->dateElement->getHtml();
215 $validators[
'required'] =
true;
217 $validators[
'validate-date'] = [
220 return 'data-validate="' . $this->_escaper->escapeHtml(json_encode($validators)) .
'"';
230 return $this->_localeDate->getDateFormatWithLongYear();
242 $this->_dateInputs[
$code] = $html;
255 if ($stripNonInputChars) {
256 $mapping[
'/[^medy]/i'] =
'\\1';
258 $mapping[
'/m{1,5}/i'] =
'%1$s';
259 $mapping[
'/e{1,5}/i'] =
'%2$s';
260 $mapping[
'/d{1,5}/i'] =
'%2$s';
261 $mapping[
'/y{1,5}/i'] =
'%3$s';
263 $dateFormat = preg_replace(array_keys($mapping), array_values($mapping), $this->
getDateFormat());
265 return sprintf($dateFormat, $this->_dateInputs[
'm'], $this->_dateInputs[
'd'], $this->_dateInputs[
'y']);
280 self::MIN_DATE_RANGE_KEY
282 if ($minDateValue !==
null) {
283 return date(
"Y/m/d", $minDateValue);
301 self::MAX_DATE_RANGE_KEY
303 if ($maxDateValue !==
null) {
304 return date(
"Y/m/d", $maxDateValue);
317 return (
int)$this->_scopeConfig->getValue(
318 'general/locale/firstday',
319 \
Magento\Store\Model\ScopeInterface::SCOPE_STORE
static getArrayElementByName($data, $keyValue, $keyName='name', $valueName='value')
getViewFileUrl($fileId, array $params=[])