Diskuse k šabloně:Měsíc
Skočit na navigaci
Skočit na vyhledávání
Je to elegantní a úsporné řešení pro Kalendář.
Jen už půl hodiny studuju kód a nevím, proč to funguje. S příkazem #ifexpr: jsem se ještě nesetkal. Splnění podmínky by mělo příkaz vykonat? Nemohu pochopit, proč je tam {{#ifexpr:{{{3}}}=29 a ne 30, a funguje to. A ještě nechápu různé umístění svislíků a dvojsvislíků v podmínkách. Rád bych to pochopil, abych to mohl někdy využít. Už se mi ale klíží oči. --Ervín 26. 4. 2009, 23:54 (UTC)
- Má to takovouhle syntax: {{#ifexpr:<výraz>|<jestliže výraz platí>|<jestliže neplatí>}}. V tomhle případě to znamená, že jestliže je 29 dní, tak se třicítka nevyplňuje (prázdno mezi pípami), jesliže není, tak se píše třicet (až za pípami). U 31. je to naopak. Možná čistší by v prvním případě bylo #ifexpr:{{{3}}}>'''29'''. O #ifexpr: snad je něco tady. Dokonce se dá v praserech udělat i cyklus, to by bylo ještě elegantnější.--Karkos 27. 4. 2009, 10:54 (UTC)
- Tady je to možná popsaný srozumitelnějc: mediawikiwiki:Help:Extension:ParserFunctions. --Karkos 27. 4. 2009, 10:59 (UTC)
- Takže cyklus nejde, protože proměnné tu nemáme zavedeny. Jinak by šly všechny dny takhle krásně:
- Tady je to možná popsaný srozumitelnějc: mediawikiwiki:Help:Extension:ParserFunctions. --Karkos 27. 4. 2009, 10:59 (UTC)
{{#vardefine:i|1}}{{ #while:expr|<esc>{{var:i}}<=31</esc> |<esc> |align="center"|{{#ifexpr:{{#var:i}}<=9| }}{{#ifexpr:{{{3|31}}}>={{#var:i}}| [[Necyklopedie:Kalendář/{{#var:i}}. {{{1|leden}}}|{{#var:i}}]]|}} {{#vardefine:i|{{#expr:{{#var:i}}+1}}}}</esc> }}
- Uvádím to zde pro případ, že to se to sem časem dostane, přece jenom wikia se snaží. --Karkos 27. 4. 2009, 21:11 (UTC)
- Díky za vysvětlení. Je to tedy "staré známé basicové:" IF THEN ELSE, jež jsem programoval na klasickém Sinclairu ZX Spectrum před asi 35 lety. Já nerad otravuju a pídil jsem i na stránkách MediaWiki, jenže neznalý jazyka jsem se jakéhokoli článku o syntaxi nedopátral, jenčto je to galymatiáš. To tvoje výše zmíněné „Tady je to možná popsaný srozumitelnějc“ je z mého pohledu dobrý fór. Nemohu si nepostesknout, spolu se zesnulým Jiřím Kodetem: proč se ty kurvy nenaučí česky. Děkovačka --Ervín 27. 4. 2009, 21:42 (UTC)
- Mě taky dalo hodně práce tyhle věci najít. Na central wikia to nemaj, na wikimedia ani na anglickopedii o ničem nevím a na mediawiki to maj strašně nepřehledně - protože je toho strašně moc, že jednou jsem to měl a podruhý jsem našel něco jinýho; vyhledávání podle slov moc nepomohlo. Asi by nebylo od věci aspoň tyhle odkazy sbírat a někam je dávat na jedno místo, aby byly snadno k nalezení. --Karkos 27. 4. 2009, 21:52 (UTC)
- Díky za vysvětlení. Je to tedy "staré známé basicové:" IF THEN ELSE, jež jsem programoval na klasickém Sinclairu ZX Spectrum před asi 35 lety. Já nerad otravuju a pídil jsem i na stránkách MediaWiki, jenže neznalý jazyka jsem se jakéhokoli článku o syntaxi nedopátral, jenčto je to galymatiáš. To tvoje výše zmíněné „Tady je to možná popsaný srozumitelnějc“ je z mého pohledu dobrý fór. Nemohu si nepostesknout, spolu se zesnulým Jiřím Kodetem: proč se ty kurvy nenaučí česky. Děkovačka --Ervín 27. 4. 2009, 21:42 (UTC)
- Uvádím to zde pro případ, že to se to sem časem dostane, přece jenom wikia se snaží. --Karkos 27. 4. 2009, 21:11 (UTC)