When a panel/panelizer is recreated from feature, saved $display in hook_panels_display_save() doesn't contain $cache_key, this results as an error displayed in page and saved panel is not cached, and sometimes panels from page edit disappear. I used instead of panels_edit_cache_set() the panels_edit_cache_get_default() to set cache, last function can set cache even if $cache_key doesn't exist.
| Comment | File | Size | Author |
|---|---|---|---|
| #9 | pmini_ipe_missing-cache-key-2538468-9.patch | 635 bytes | jadsay |
| #1 | pmini_ipe_missing-cache-key-2538468-1.patch | 572 bytes | sdstyles |
Comments
Comment #1
sdstyles commentedComment #2
sdstyles commentedComment #3
mglamanGreat catch! Was experiencing this myself and wasn't sure where to track it down!
Comment #5
mglamanCommitted. Going to tag a new beta, as I feel something in Panels changed (maybe? or Chaos Tools) and this module will keep breaking things.
Comment #7
jadsay commentedThis patch is removing the changes made to fix Issue: #2158015.
Comment #8
jadsay commentedComment #9
jadsay commentedAfter checking the code of panels_edit_cache_get_default(), i noticed that it assigns the display's did as a cache_key.
The cache key format is usually in this form: mini_panels:DISPLAY_MACHINE_NAME, not the display's did so i think it's better to use the panels_edit_cache_get_default() function when cache_key is empty.
Comment #10
jadsay commentedComment #12
kmontyThanks for working on this issue! Should address issues people have had across the saving mechanism.
Committed.