воскресенье, 25 октября 2015 г.

DateAgo - Для работы с датами

Спонсор блога Магазин детской одежды Dress

Сниппет делает даты более дружелюбными.
Работает и как сниппет, и как фильтр вывода.

У MODX Revolution есть 2 встроенных фильтра обработки дат: ago и fuzzydate. Первый выводит сколько прошло времени от указанной даты, а второй — тоже самое, но с указанием «сегодня», «вчера».


Пример использования в чанке 
[[dateAgo?
&input=`[[+publishedon]]`
&dateFormat=`d F Y`

]]

с TV парамметром
[[dateAgo?
&input=`[[+tv.date]]`
&dateFormat=`d F Y`

]]


Использование

Вызов на странице, как сниппет:
[[dateAgo?
 &input=`[[*publishedon]]`
]]

Вывод с параметрами, отключаем «Только что»:
[[Jevix?
 &input=`[[*publishedon]]`
 &dateNow=`0`
]]

Вызов фильтром, например в чанке getResources:
[[+publishedon:dateAgo]]

Вызов фильтром, с указанием параметров:
[[+publishedon:dateAgo=`{"dateNow":0}`]]

Тексты для вывода «Только что», «Меньше минуты», «Сегодня» и другие можно менять в управлении словарями.

Парамметры


  • dateDay
    • по умолчанию: day H:i
    • тип: textfield
    • описание: Указывает на необходимость замены "Сегодня", "Вчера", "Завтра". В указанном формате "day" будет заменено на соответствующее значение.
  • dateFormat
    • по умолчанию: d F Y, H:i
    • тип: textfield
    • описание: Формат даты по умолчанию.
  • dateHours
    • по умолчанию: 10
    • тип: numberfield
    • описание: Количество часов, в течении которых событие имеет статус "... часов назад"
  • dateMinutes
    • по умолчанию: 59
    • тип: numberfield
    • описание: Количество минут, в течении которых событие имеет статус "... минут назад"
  • dateNow
    • по умолчанию: 10
    • тип: numberfield
    • описание: Количество секунд, в течении которых событие имеет статус "Только что"
  • input
    • по умолчанию: -
    • тип: textfield
    • описание: Дата для обработки

Официальная документация

1 комментарий: