FormIt: дата на русском

Обрабатываем выбранную дату в форме и получаем удобочитаемый формат, вида: 24 Июнь 2017.

  1. Для начала идём в Системные настройки > core > Словарь и язык. И устанавливаем для параметра "Локаль" значение "ru_RU.UTF-8".
  2. Затем в нашу форму добавляем поле ввода, с ограничением по дате (не ранее текущего дня).
<input name="date" type="date" min="[[!+nowdate:default=`now`:strtotime:date=`%Y-%m-%d`]]" value="[[!+fi.date]]" required>
  1. Добавляем сниппет dateHook (Хук для обработки даты перед отправкой формы)
<?php
$date = strftime('%d %B %Y', strtotime($hook->getValue('date')));
$hook->setValue('date', $date);
return true;
?>
  1. В вызове FormIt в hooks перед email добавляем dateHook (для преобразования даты на наш родной язык) и добавляем валидацию date:required:isDate=^%Y-%m-%d^
  2. Пример использования:
[[!FormIt?
    &hooks=`dateHook,email`
    &validate=`date:required:isDate=^%Y-%m-%d^`
    //остальные необходимые вам параметры
]]

На главную