SnippetRuntime: Fixed snippets rendering when multiple templates are rendered #349
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have component (BasketControl) with multiple templates. At nette 2.4 I was able to redraw snippets at all templates, but it is not working after upgrade to current version.
Example code:
public function handleAddProduct() {
...
$this->presenter['basketControl']->redrawControl('basketMessages');
$this->presenter['basketControl']->snippetMode = true;
$this->presenter['basketControl']->renderMessage();
$this->presenter['basketControl']->redrawControl('small');
$this->presenter['basketControl']->snippetMode = true;
$this->presenter['basketControl']->renderSmall();
$this->presenter->sendPayload();
}
Before this patch it ends with error - Possible problem: you are sending a HTTP header while already having some data in output buffer.
Is there some reason why it is not unsetted after snippetRendering? I have used this quick fix, but I'm not sure about consequences...