reakce 1 addSelect na 2 addSelect

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

Dobry den, je to zacatecnicky dotaz, ale spis to spada do teto sekce, tak to sem dam.

Vytvarim formular pro pridani noveho uzivatele, toto pridani musi provadet administrator. Kazdy z uzivatelu ma urcitou roli (admin, hlavni auditor, auditor) v systemu a je zarazen do nejake skupiny (administratori, auditori1, auditori2, ..) a to prave vcetne administratoru. Mam 2 addboxy, 1 vybira ze seznamu roli, 2 ze seznamu skupin. A potreboval bych nejak osetrit, aby kdyz vyberu napriklad z addboxu roli roli Administrator, pak se automaticky vybere z addboxu skupiny skupina Administratori a naopak, a zaroven nechci docilit toho, abych treba jako novy uzivatel byl roli Hlavni auditor a byl ve skupine Administratori, ci role Administratora aby byla ve skupine pro auditory. Jde o to, abych separoval roli Administratora od jine skupiny, nez Administratori.

Lze to nejakym peknym prijatelnym zpusobem udelat?
Kod dole ukazuje jen, jak to mam v zakladu, predstavu.

<?php
...

if ($this->getUser()->isInRole('Administrátor')) {

	    $sorted = $this->model->getQuery('role')->order('name ASC');

	    $form->addSelect('role', 'Pozice:', $sorted->fetchPairs('id', 'name'))
		    ->setPrompt('- Vyberte -')
		    ->addRule(Form::FILLED, 'Je nutné vybrat pozici pro nového uživatele.');

	    $sorted = $this->model->getQuery('group')->order('name ASC');

	    $form->addSelect('group', 'Skupina:', $sorted->fetchPairs('id', 'name'))
		    ->setPrompt('- Vyberte -')
		    ->addRule(Form::FILLED, 'Je nutné zařadit uživatele do skupiny.');

...
?>
PavelJurasek
Člen | 39
+
0
-

buď pomocí addConditionOn, což bude asi zdlouhavé a komplikované, nebo koukni zde