Neinvaliduje se snippet v sablone komponenty

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

Zdravim, mam problem. V sablone komponenty nakupniho kosiku mam tento kod:

{snippet products}
			<div class="line{if $iterator->isEven()} odd{/if}" n:foreach="$items as $id => $ks">
				{var $product = $control->getProduct($id)}
				<a href="#" title="{$product->name}" class="f1">
					<span class="div"><img src="{$basePath}/db_images/{$product->cover_image}" alt="{$product->name}" /></span>
					<span class="p">{$product->name}</span>
				</a>

					<input type="text" value="{$ks}" class="prod" />

				<a n:href="less id => $id, ks => $ks" title="Ubrat" class="minus ajax">-</a>
				<a n:href="more id => $id, ks => $ks" title="Přidat" class="plus ajax">+</a>
				<span class="price">{$product->price * $ks |number} ,- Kč</span>
				<span class="price">{$product->price * $ks |number} ,- Kč</span>
				<a n:href="removeFromBasket id => $id" title="Odstranit" class="del ajax">x</a>
				{var $sumPrice += $product->price * $ks}
			</div>
		{/snippet}

V komponente mam handle

public function handleRemoveFromBasket($id) {
		$content = $this->basket;
		unset($content[$id]);
		$this->presenter->session->getSection('basket')->content = $content;
		$this->presenter->invalidateControl();
	}

ale neinvaliduje se mi snippet products…v hlavicce mam nahled kosiku ktery funguje ajaxove v poradku ale toto ne…poradite prosim.
Diky

studna
Člen | 181
+
0
-

Toto řešení by mělo fungovat, pokud celou komponentu obalíš do snippetu (a má smysl, pokud bys chtěl invalidovat všechny snippety a komponenty připojené k presenteru). Pokud chceš invalidovat pouze tu komponentu, tak stačí zavolat jenom:

$this->invalidateControl();

Editoval studna (10. 1. 2013 22:23)