function panels_panel_context_clone in Panels 7.3
Same name and namespace in other branches
- 6.3 plugins/task_handlers/panel_context.inc \panels_panel_context_clone()
When a handler is cloned, we have to clone the display.
1 string reference to 'panels_panel_context_clone'
- panel_context.inc in plugins/
task_handlers/ panel_context.inc - This is the task handler plugin to handle attaching a panel to any task that advertises itself as a 'context' type, which all of the basic page tasks provided by page_manager.module do by default.
File
- plugins/
task_handlers/ panel_context.inc, line 400 - This is the task handler plugin to handle attaching a panel to any task that advertises itself as a 'context' type, which all of the basic page tasks provided by page_manager.module do by default.
Code
function panels_panel_context_clone(&$handler) {
$old_display = panels_panel_context_get_display($handler);
$code = panels_export_display($old_display);
eval($code);
foreach (array(
'display',
'did',
'css_cache',
'temp_layout',
) as $item) {
if (isset($handler->conf[$item])) {
unset($handler->conf[$item]);
}
}
$display = (object) array(
'did' => 'new',
'uuid' => ctools_uuid_generate(),
);
$handler->conf['display'] = $display;
}