opět Snippet, Ajax a flashMessage

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

Ahoj,

přijde mi, že mám vše tak jak má být a přesto to nefunguje (takže asi něco není jak má být)…

@layout.phtml

<?php
    @{if (!Environment::getUser()->isAuthenticated())}
        {$content}
    @{else}

	    <div id="wrapper">

	        <h1>AdminPro</h1>

	        {control menu}


	        {snippet flashes}
			    <div id="flashes">
			        {foreach $flashes as $flash}
			        <div class="flash {$flash->type}">{$flash->message}</div>
			        {/foreach}
			    </div>
		    {/snippet}




	        <div id="containerHolder">
	           <div id="main">
	               @{include #content}
	           </div>

	        </div>
	    </div>
    @{/if}
?>

šablona UserPresenteru default.phtml

<?php
@{block #content}
    @{control grid}
?>

zpracování delete z gridu v UserPresenteru

<?php
    public function renderDelete($ID) {
    	$this->flashMessage('blah');
    	$this->invalidateControl('flashes');
    }
?>

Po zavolání signálu delete se vrátí metoda renderDelete provede a zpět se vrátí {„state“:[]}.
Jak dosáhnu zobrazení blah v snippetu?

Diky

Editoval wotaen (14. 1. 2010 13:08)

Ondřej Mirtes
Člen | 1536
+
0
-

Pro začátek bych invalidateControl přesunul do handle* metody.

wotaen
Člen | 82
+
0
-

Ondřej Mirtes napsal(a):

Pro začátek bych invalidateControl přesunul do handle* metody.

ok, přesunuto, teď mám pouze

<?php
    public function handleDelete($ID) {
    	$this->flashMessage('blah');
    	$this->invalidateControl('flashes');
}
?>

a renderDelete jsem smazal. Pro změnu teď v response není vůbec nic

wotaen
Člen | 82
+
0
-

Uff, problém byl s generováním odkazu na ajax

<?php
$grid->addAction('Delete', 'delete!', Html::el('span')->class('icon icon-del'), $useAjax = TRUE);
?>

neměl jsem ! za signálem