Rozšíření pro definování filtrů na datumy
- h4kuna
- Backer | 740
Ahoj,
připravil jsem doplněk, který vám pomůže pracovat s filtry pro datumy. Github
Mnohokrát jsem v šablonách viděl něco takového:
Dnes je {$datum|date:'j. n. Y'} <br>
Naposledy přihlášen {$logDate|date:'Y-m-d H:i'}
Registrace {$registrationDate|date:'d.m.Y'}
Formátování je nekonzistentní, nedrží formátování podle státu.
Proto jsem napsal jednoduché rozšíření, které Vám pomůže toto řešit.
Instalace je jednoduchá přes composer, následuje registrace doplňku a spíše popíšu zápis do neonu.
extensions:
dateFilterExtension: h4kuna\DateFilter\DI\DateFilterExtension
Minimálně jedna skupina formátování je povinná. Zápis je ve stylu – název filtru: formát
dateFilterExtension:
formats:
cze: # název skupiny třeba státu
day: D
date: j. n. Y # tímto přepíšete původní date
dateTime: j. n. Y H:i:s
uk:
day: D
date: d/m/Y
dateTime: d/m/Y H:i:s
Tím se do latte zaregistrují filtry day, date, dateTime. Původní date je přepsán, je to na vás zda si ho přepíšete. A pro zformátování datumu použijeme jeden z filrů např:
Naposledy přihlášen {$logDate|dateTime}
Přepnutí skupiny jde takto
/* @var $dateTimeFormat h4kuna\DateFilter\DateTimeFormat */
$dateTimeFormat = $container->getService('dateFilterExtension.dateTimeFormat');
$dateTimeFormat->setFormatsGroup('uk');
Moudří už vědí že pokud nepřepnete locale tak D se pokaždé vypíše v anglickém jazyce. Podpora je na dosah :) Upravit jsou tato písmenka D, l (malé L), F, M
dayMonth:
cs: # opět název skupiny, ale jedná se o jiné skupiny, zvolil jsem jazyk
D: # short
Mon: Po
Tue: Út
Wed: St
Thu: Čt
Fri: Pá
Sat: So
Sun: Ne
A teď bude fungovat i filter day, který jsem si definovali výše.
Editoval h4kuna (5. 5. 2017 16:55)