Download & Extend

Panels re-render content which causes filters to be ran multiple times (patch included)

Project:Chaos tool suite (ctools)
Version:6.x-1.2
Component:Code
Category:bug report
Priority:normal
Assigned:Unassigned
Status:needs work

Issue Summary

I believe this is relevent to the TODO on line 283 of panels_node.module but maybe not. The problem arose for myself when using a combination of filters, the way panels renders the content, the node was getting processed twice, thus breaking presentation of the node since certain filters specifically had to be in a certain order. this patch to panels/plugins/content_types/node_context/node_content.inc prevents panels from re-rendering a node if it has already been processed by the panels_node module.

AttachmentSize
node_content_fix_render.patch444 bytes

Comments

#1

Is there a better way to see if the node is already prepared? I don't like checking that flag, unless we're pretty sure this is something that is going to be pretty exclusive to Panel nodes. Also, does this break if you view panel node A inside panel node B? I guess that's an unlikely case since you'd be adding that node via context, but there are ways.

#2

To the best of my knowledge I could not find a better way to tell if the node was prepared. Haven't tried in the scenario of adding panel nodes inside of each other. I tested a scenario of adding a panel node inside of another panel, and it does still render the panel contents of the node being included.

#3

Project:Panels» Chaos tool suite (ctools)
Version:6.x-3.2» 6.x-1.2

This appears to actually be a patch against CTools. This confused me quite a bit until I realized why that is why it didn't apply.

#4

Status:needs review» needs work

I am still highly dubious about this. Can you provide me a scenario that demonstrates the problem (tell me how ot set up...) so that I can work with it and see what is actually wrong?