At first I thought a lot of my issues were related to http://drupal.org/node/1572202 but it seems panelizer with full page overrides has a problem in conjunction with panels ipe when page_tabs + page_title are present are inside that layout.

Whenever I use Panels IPE (tested with panopoly) on a panelized node (full page override) with these elements present they completely disappear on save. When I refresh the page they do reappear however these are the only elements that have this problem of not appearing.

Proceeded to a panelized node page (full page override) and clicking Customize this Page

step1

Rearranged some panes by moving page_tabs above page_title

step2

Saved the page (Notice these panes are now missing)

step3

Unfortunately I need to have page_title + page_tabs inside a panelizer layout as don't want them spanning the whole page (sidebar + content) only the node section so I can't use them inside page manager.

My log shows the following:

Location http://drupal_wet:8082/eng/panels/ajax/ipe/save_form/panelizer%3Anode%3A...
Referrer http://drupal_wet:8082/eng/content/content-demo
Message Panels: saved display with id 1

Location http://drupal_wet:8082/eng/panels/ajax/ipe/save_form/panelizer%3Anode%3A...
Referrer http://drupal_wet:8082/eng/content/content-demo
Message Strict warning: Creating default object from empty value in
panels_renderer_ipe->render_pane_content() (line 145 of
/profiles/wetkit/modules/contrib/panels/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php).

Location http://drupal_wet:8082/eng/panels/ajax/ipe/save_form/panelizer%3Anode%3A...
Referrer http://drupal_wet:8082/eng/content/content-demo
Message Strict warning: Creating default object from empty value in
panels_renderer_ipe->render_pane_content() (line 145 of
/profiles/wetkit/modules/contrib/panels/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php).

Location http://drupal_wet:8082/eng/content/panels/ajax/ipe/unlock_ipe/panelizer:...
Referrer http://drupal_wet:8082/eng/content/content-demo
Message content/panels/ajax/ipe/unlock_ipe/panelizer:node:1:page_manager

Comments

merlinofchaos’s picture

Argh. Page elements disappear, most likely, because they use a token system and those tokens aren't filled in on the re-render that happens upon IPE save. That's actually very difficult to deal with because theme('page') is never called in that case, and that's when those tokens are generated.

This could be difficult to fix. :(

sylus’s picture

Oh really interesting :) At least I understand what is happening now thanks for that ^_^

I wouldn't be opposed to some sort of workaround if my use case was a bit different. Is it common that people would want to put page elements inside of panelizer?

Maybe a new custom ctools content type plugin, a default message pane or perhaps we could just keep the original tokens being displayed until a page refresh?

sylus’s picture

Title: Panelizer (Full Page Override) + page_tabs | page_title Breaks IPE » Panelizer (Full Page Override) + Page Elements (eg: page_tabs, page_title) break Panels IPE

Updating title

gmclelland’s picture

Maybe pages that include these tokens could cause IPE to do a full page refresh after any save? Probably a stupid idea, but I thought I would throw it out there.

I can see these tokens as a common need in layouts that have the main content area contained.

dshields’s picture

This still seems to be a problem. It's not that big of a deal to refresh the page, but it is frustrating that the preview won't work while adding these page elements.

dshields’s picture

Issue summary: View changes

Mod

damienmckenna’s picture

Component: Code » IPE integration
ccjjmartin’s picture

For anyone who comes across this in the future my quick fix was to remove all tokens (the problem) from page and display my information as page content (solution).

I should note that my problem was a bit different but I believe they could be solved (temporarily) using the same method.