Přenášení obsahu formuláře přes session při použití tlačítka back

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

Zdravim.
Mam formular, ktery ajaxove filtruje obsah tabulky pod formularem. Pri kliknuti na radek tabulky se pres js otevre stranka s detaily radku. Potrebuji implementovat nasledujici funkcionalitu – Pri kliknuti na back potrebuji, aby se data, ktera byla pred kliknutim na radek tabulky ve formulari, obnovila, tj. zachovat filtr.

Diky za rady

Azim
Člen | 41
+
0
-

Mam nasledujici kod:

	public function renderDefault($filter = NULL)
	{
    if ($this->isAjax())
    {

        $result = $this->model->getProjectsByFilter($this->payload->filter);
        $this->template->projects = $result;

        $session = Environment::getSession('filter');
        $this->template->form = $this['filterProjectForm'];
        $this->template->form->setDefaults((array) $session->filter);
    }
    else
    {
		$this->template->projects = $this->model->getProjects();
    }
	}


	public function filterProjectFormSubmitted(AppForm $form)
{
    $entry = $form->getValues();


    if (!$this->isAjax())
        $this->redirect('this');
    else {
        $session = Environment::getSession('filter');
        $session->filter = $entry;


        $this->payload->filter = $entry;
        $this->invalidateControl('projects');
    }

}

teoreticky by to melo fungovat tak, ze pri vyplneni nejakeho pole formulare se ajaxem profiltruji projekty a zaroven se do session ulozi obsah filtru ve formulari a pri znovurenderovani stranky se do formu nactou hodnoty ze session, nicmene se tak nedeje. je mozne ze se ajax a session nemaji rady a pri ajaxovem pozadavku nedojde k ulozeni session, tj. problem by byl tady?

if (!$this->isAjax())
    $this->redirect('this');
else {
    $session = Environment::getSession('filter');
    $session->filter = $entry;


    $this->payload->filter = $entry;
    $this->invalidateControl('projects');
}

diky za odpovedi