Formulář zadání hesla s validací bez nutnosti zadání

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

Mám editační formulář, ve kterém mám pro jednoduchost 3 hesla:

<?php
		// vyžadováno vždy
		$form->addPassword('current', 'Aktuální heslo')
				->addRule(Form::FILLED, 'Zadej současné heslo');
		// volitelné
		$form->addPassword('newpw1', 'Nové heslo', 20)
				->addRule(Form::MIN_LENGTH, 'Nové heslo musí mít alespoň %d znaků.', 6);
		// vyžadováno pokud je zadáno nové heslo
		$form->addPassword('newpw2', 'Nové heslo znovu', 20)
				->addConditionOn($form['newpw1'], Form::VALID)
				->addRule(Form::EQUAL, 'Nové hesla se neshodují.', $form['newpw1']);
?>

Co v tomto kódu upravit, aby byly zachovány validační pravidla pro nové heslo a zároveň bych nemusel to nové heslo zadat?

Jan Mikeš
Člen | 771
+
+4
-

Snad jsem pochopil správně:

		$form->addPassword("current", "Staré heslo")
			->setRequired("Heslo je povinné")

		$form->addPassword("newpw1", "Nové heslo")
			->addCondition($form::FILLED)
				->addRule($form::MIN_LENGTH, "Minimální délka je %d znaky!", 6);

		$form->addPassword("newpw2", "Nové heslo kontrola")
			->addConditionOn($form["newpw1"], $form::FILLED)
				->setRequired("Heslo je povinné!")
				->addRule($form::EQUAL, "Hesla se neshodují!", $form["newpw1"]);

Editoval Lexi (30. 3. 2015 10:35)