Jak ziskat typ inputu v latte?

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

Zdravim, snazim se vykreslit siginForm, ktery je tvoren takovouto funkci

	public function create()
	{
		$form = $this->factory->create();
		$form->addText('username', 'Username:')
			->setRequired('Please enter your username.');

		$form->addPassword('password', 'Password:')
			->setRequired('Please enter your password.');

		$form->addCheckbox('remember', 'Keep me signed in');

		$form->addSubmit('send', 'Sign in');

		$form->onSuccess[] = array($this, 'formSucceeded');
		return $form;
	}

Form obsahuje text input, passwordInput, checkbox a submit, ktere bych dale rad rucne vykreslil v sablone nejak takto

<form n:name=$form class="form-horizontal">
    <ul class=error n:if="$form->ownErrors">
	<li n:foreach="$form->ownErrors as $error">{$error}</li>
    </ul>


    <div n:foreach="$form->getComponents() as $input" n:class="form-group,row,$input->required ? required">
	{dump $input->control->type}
	<div class="col-xs-4 text-right">{label $input /}</div>
	{if true}
	    {dump $input}
	{/if}
	<div class="col-xs-4">{input $input class=>"form-control"} <span class=error n:ifcontent>{$input->error}</span></div>
    </div>
</form>

Pri vykreslovani bych rad rozlisoval input podle TYPU (text, checkbox, button etc…). Kdyz jsem si dumpoval jednotlive inputy, narazil jsem na jejich atribut TYPE, ale pokud se pokousim dumponvat tento atribut primo prez toto

{dump $input->control->type}

tak narazim na problem, ze checkbox ma atribut TYPE null (ikdyz v dumpu inputu samotneho je nastaven spravne)

Editoval Muhahe (15. 8. 2016 13:37)

Martk
Člen | 661
+
0
-

zkus jestli je toto funkční nebo taky obsahuje null:

{$input->getOption(type) === checkbox}
Muhahe
Člen | 79
+
0
-

Antik napsal(a):

zkus jestli je toto funkční nebo taky obsahuje null:

{$input->getOption(type) === checkbox}

Ano take obsahuje null a dokonce pro vsechny inputy. Nakonec jsem se dokumentaci prokousal k tomuto

{dump $input->getControlPrototype()->type}

Coz zatim funguje OK, tak snad to nekomu usetri cas ;)