diff --git a/latte/cs/filters.texy b/latte/cs/filters.texy index 2132055858..7fb6e78ec6 100644 --- a/latte/cs/filters.texy +++ b/latte/cs/filters.texy @@ -424,6 +424,14 @@ localDate(string format = null, string date = null, string time = null) .[filter --------------------------------------------------------------------------------- Formátuje datum a čas podle [národního prostředí |develop#locale], což zajišťuje konzistentní a lokalizované zobrazení časových údajů napříč různými jazyky a regiony. Filtr přijímá datum jako UNIX timestamp, řetězec nebo objekt typu `DateTimeInterface`. +```latte +{$date|localDate} {* 15. dubna 2024 *} +{$date|format: yM} {* 4/2024 *} +{$date|localDate: date: medium} {* 15. 4. 2024 *} +``` + +Pokud použijete filtr bez parametrů, vypíše se datum v úrovní `long`, viz dále. + **a) použití formátu** Parametr `format` popisuje, které časové složky se mají zobrazit. Používá pro ně písmenné kódy, jejichž počet opakování ovlivňuje šířku výstupu: @@ -431,26 +439,41 @@ Parametr `format` popisuje, které časové složky se mají zobrazit. Použív | rok | `y` / `yy` / `yyyy` | `2024` / `24` / `2024` | měsíc | `M` / `MM` / `MMM` / `MMMM` | `7` / `07` / `čvc` / `červenec` | den | `d` / `dd` | `1` / `01` -| hodina | `j` | v preferovaném formátu prostředí +| hodina | `j` / `H` / `h` | preferovaný / 24hodinový / 12hodinový | minuta | `m` / `mm` | `5` / `05` (2 číslice v kombinaci se sekundami) | sekunda | `s` / `ss` | `8` / `08` (2 číslice v kombinaci s minutami) Na pořadí kódů ve formátu nezáleží, protože pořadí složek se vypíše podle zvyklostí národního prostředí. Formát je tedy na něm nezávislý. -Například formát `yyyyMMMMd` v postředí `en_US` vypíše `April 15, 2024`, zatímco v prostředí `cs_CZ` vypíše `15. dubna 2024`. Nebo samotné `MMMM` se vypíše jako `duben`, atd. +Například formát `yyyyMMMMd` v postředí `en_US` vypíše `April 15, 2024`, zatímco v prostředí `cs_CZ` vypíše `15. dubna 2024`: + +| locale: | cs_CZ | en_US +|--- +| `format: 'dMy'` | 10. 8. 2024 | 8/10/2024 +| `format: 'yM'` | 8/2024 | 8/2024 +| `format: 'yyyyMMMM'` | srpen 2024 | August 2024 +| `format: 'MMMM'` | srpen | August +| `format: 'jm'` | 17:22 | 5:22 PM +| `format: 'Hm'` | 17:22 | 17:22 +| `format: 'hm'` | 5:22 odp. | 5:22 PM + **b) použití přednastavených stylů** Parametry `date` a `time` určují, jak podrobně se má datum a čas vypsat. Můžete si vybrat z několika úrovní: `full`, `long`, `medium`, `short`. Lze nechat vypsat jen datum, jen čas, nebo obojí: -```latte -{$date|localDate: date: short} {* 23.01.1978 *} -{$date|localDate: date: medium} {* 23. 1. 1978 *} -{$date|localDate: date: long} {* 23. ledna 1978 *} -{$date|localDate: date: full} {* pondělí 23. ledna 1978 *} -{$date|localDate: time: short} {* 14:30 *} -{$date|localDate: date: long, time: medium} {* 23. ledna 1978 v 14:30:59 *} -výstup se liší v závislosti na prostředí -``` +| locale: | cs_CZ | en_US +|--- +| `date: short` | 23.01.78 | 1/23/78 +| `date: medium` | 23. 1. 1978 | Jan 23, 1978 +| `date: long` | 23. ledna 1978 | January 23, 1978 +| `date: full` | pondělí 23. ledna 1978 | Monday, January 23, 1978 +| `time: short` | 8:30 | 8:30 AM +| `time: medium` | 8:30:59 | 8:30:59 AM +| `time: long` | 8:30:59 SEČ | 8:30:59 AM GMT+1 +| `date: short, time: short` | 23.01.78 8:30 | 1/23/78, 8:30 AM +| `date: medium, time: short` | 23. 1. 1978 8:30 | Jan 23, 1978, 8:30 AM +| `date: long, time: short` | 23. ledna 1978 v 8:30 | January 23, 1978 at 8:30 AM +| `date: full, time: short` | pondělí 23. ledna 1978 v 8:30 | Monday, January 23, 1978 at 8:30 AM U data lze navíc použít prefix `relative-` (např. `relative-short`), který pro data blízká současnosti zobrazí `včera`, `dnes` nebo `zítra`, jinak se vypíše standardním způsobem. @@ -458,12 +481,6 @@ U data lze navíc použít prefix `relative-` (např. `relative-short`), který {$date|localDate: date: relative-short} {* včera *} ``` -Pokud použijete filtr bez parametrů, vypíše se datum v úrovni `long`: - -```latte -{$date|localDate} {* 15. dubna 2024 *} -``` - Viz také [#date].