HTML5 Date / Datetime string format

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Roman Rotter
Člen | 2
+
0
-

V návaznosti na https://forum.nette.org/…-formularich – bylo by možné pro případ

$form->addText('datum', 'Datum:')
    ->setType('datetime') //nebo 'date'

upravit chování tak, aby nativně podporoval očekávaný formát (Y-m-d\TH:i:s) nebo v případě date (Y-m-d)?

A nebo podporovat uživatelské formátování hodnoty pro view (možná to Nette umí, ale nenašel jsem v dokumentaci a s php / nette nedělám moc často, takže většinou tápu v tom, co se od minula změnilo).
Např. c#/WPF má StringFormat pro běžné typy jako je datum, číslo ⇒ něco jako ->setFormat(‚formatString‘)?.
Pro nestandardní převody pak třídu ValueConverter s metodami Convert a ConvertBack – jednoduchý princip, ale umí vyřešit hodně problémů. Hledal podobnou funkčnost, ale zatím neúspěšně.

Marek Šneberger
Člen | 130
+
0
-

Od toho tu jsou doplňky :-)

hrach
Člen | 1834
+
0
-

Nebo raděj Nextras :)

duke
Člen | 650
+
0
-

@hrach Co se stalo s DateTimePicker+? Všiml jsem si, že na Nextras máš jakousi podivnou třífázovou variantu. :-)

Roman Rotter
Člen | 2
+
0
-

Pluginem DateTimePicker+ jsem to obešel, proto jsem tady přidal podnět. Nepotřeboval jsem ty funkce navíc, když se o zbytek stará prohlížeč.

Pokud má mít Nette podporu html5 formulářů, tak by ten datum (nebo něco jiného) měl jít podle mého názoru bez doplňků, o které je třeba se při upgradech starat, nemluvě o tom, kolik času zabralo hledání, zprovozňování a zkoušení doplňků než jsem přišel na to, že zrovna tento po vypnutí init js dělá co je potřeba.

Standardně pokud se použije setType(‚datetime‘), tak Opera/Chrome, které už to podporují zobrazí ten control bez vložených dat, protože je formátován špatně. A pokud každá změna formátu vyžaduje samostatný doplněk, tak to snižuje udržitelnost v budoucnu, protože není zajištěno, že doplněk bude vyvíjen a updatován stejně jako framework.