function _views_maintenance_process_page_handlers in Views Maintenance 7
Same name and namespace in other branches
- 6 includes/ctools.inc \_views_maintenance_process_page_handlers()
Processes handlers of task or subtask and returns use cases.
Parameters
array $handlers:
string $task_name: Full task name.
Return value
array
1 call to _views_maintenance_process_page_handlers()
- _views_maintenance_process_page_tasks in includes/
ctools.inc - Processes list of page manager page tasks and returns views use cases.
File
- includes/
ctools.inc, line 244 - Provides integration with Page Manager and Panels Mini.
Code
function _views_maintenance_process_page_handlers($handlers, $task, $task_name) {
ctools_include('content');
ctools_include('plugins');
ctools_include('context');
ctools_include('context-task-handler');
if (module_exists('panels')) {
ctools_get_plugins('page_manager', 'task_handlers');
}
$result = array();
foreach ($handlers as $handler) {
if ($handler->handler == 'panel_context') {
// Search for views content panes.
$display = panels_panel_context_get_display($handler);
if (!empty($display->content)) {
foreach ($display->content as $pane) {
$id = _views_maintenance_display_id_from_pane($pane);
if (!empty($id)) {
list($view_id, $display_id) = $id;
$use_case = _views_maintenance_page_pane_use_case($task_name, $task, $handler, $pane);
$result[$view_id][$display_id][] = $use_case;
}
}
}
}
// Search for views contexts.
$contexts = ctools_context_handler_get_all_contexts($task, $handler->subtask, $handler);
foreach ($contexts as $context) {
$id = _views_maintenance_display_id_from_context($context);
if (!empty($id)) {
list($view_id, $display_id) = $id;
$use_case = _views_maintenance_page_context_use_case($task_name, $task, $handler, $context);
$result[$view_id][$display_id][] = $use_case;
}
}
}
return $result;
}