function panels_clone_display($did, $new = TRUE, $save = FALSE) {
// since objects are always passed by reference in php5, need to do this to ensure the original object,
// if $did is an object, is untouched by the cloning operation
$old_display = panels_load_display($did);
}
else {
$old_display = $did;
}
$display->content = panels_clone_panes($display->content, $new);
return $display;
}
function panels_clone_panes($panes, $new) {
$counter = 0;
foreach ($panes as $pid => $pane) {
$panes[$pid] = panels_clone_pane($pane, $new ? 'new-' . ++$counter : $pid);
}
return $panes;
}
function panels_clone_pane($old_pane, $pid = NULL) {
$pane->pid = $pid;
}
return $pane;
}