Ručně renderovaný label n:name nedoplní caption a required

Kajda23
Člen | 42
+
0
-

Ahoj,
narazil jsem na problém při ručním renderování labelu pomocí n:name. Nevím, jestli je to záměrné chování nebo dělám někde chybu.
Jde o to, do tagu v tomto zápisu:

<label n:name="existujici_input"></label>

není doplněn caption, který je u inputu nastavený. Podle zdrojového kódu makra si myslím, že by doplněn měl být dle výsledku podmínky if ($node->htmlNode->empty) ve fci macroNameEnd. Nevím přesně, co $node->htmlNode->empty znamená – domníval jsem se, že ověřuje, jestli je tag prázdný (jestli tam nebylo něco zapsáno ručně), ale i když prázdný je, je hodnota vždycky false. Otázka tedy zní – lze vlastně doplnění od n:name vůbec čekat nebo někde dělám chybu?

A pak ještě otázka číslo 2 – u labelu není doplněno ani class required (a to ani při použití makra {label}, ale to je zřejmě záměrné chování, protože ve zdrojovém kódu jsem nenašel žádný náznak, že by to tak mělo být. Jak nejlépe lze doplňování required doplnit?

David Matějka
Moderator | 6445
+
+1
-

ahoj, jestli se nepletu, tak caption by to melo doplnit, kdyz to neuvedes jako parovy tag:

<label n:name="existujici_input"/>

class se opravdu nedoplni, o to se stara (default) form renderer, ktery se pri rucnim vykreslovani ignoruje

Kajda23
Člen | 42
+
0
-

Funguje, díky.
Takže to $node->htmlNode->empty zřejmě znamená, zda jde o párový/nepárový tag.