function _views_maintenance_mini_panel_use_cases in Views Maintenance 6
Same name and namespace in other branches
- 7 includes/ctools.inc \_views_maintenance_mini_panel_use_cases()
Returns displays use cases in all mini-panels.
Return value
array Nested array with use cases grouped by view name and display id.
1 call to _views_maintenance_mini_panel_use_cases()
File
- includes/
ctools.inc, line 465 - Provides integration with Page Manager and Panels Mini.
Code
function _views_maintenance_mini_panel_use_cases() {
ctools_include('content');
ctools_include('plugins');
ctools_include('context');
ctools_include('export-ui');
$plugin = ctools_get_export_ui('panels_mini');
$mini_panels = panels_mini_load_all();
$result = array();
// Iterate through mini-panels and fill use cases.
foreach ($mini_panels as $name => $mini_panel) {
if (!empty($mini_panel->display->content)) {
foreach ($mini_panel->display->content as $pane) {
// Analyze each pane and get view name and display id (if any).
$id = _views_maintenance_display_id_from_pane($pane);
if (!empty($id)) {
list($view_id, $display_id) = $id;
$use_case = _views_maintenance_mini_panel_pane_use_case($plugin, $mini_panel, $pane);
$result[$view_id][$display_id][] = $use_case;
}
}
}
// Iterate over contexts and fill use cases.
$contexts = ctools_context_get_context_from_contexts($mini_panel->contexts, 'context', TRUE);
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_mini_panel_context_use_case($plugin, $mini_panel, $context);
$result[$view_id][$display_id][] = $use_case;
}
}
}
return $result;
}