function views_fetch_plugin_names
3.x views.module | views_fetch_plugin_names($type, $key = NULL, $base = array()) |
2.x admin.inc | views_fetch_plugin_names($type, $key = NULL, $base = array()) |
Fetch a list of all base tables available
Parameters
$type: Either 'display', 'style' or 'row'
$key: For style plugins, this is an optional type to restrict to. May be 'normal', 'summary', 'feed' or others based on the neds of the display.
$base: An array of possible base tables.
Return value
A keyed array of in the form of 'base_table' => 'Description'.
7 calls to views_fetch_plugin_names()
- ViewsUiBaseViewsWizard::build_form in plugins/
views_wizard/ views_ui_base_views_wizard.class.php - For AJAX callbacks to build other elements in the "show" form.
- ViewsUiBaseViewsWizard::row_style_options in plugins/
views_wizard/ views_ui_base_views_wizard.class.php - Add possible row style options.
- views_get_enabled_display_extenders in includes/
plugins.inc - Get enabled display extenders.
- views_plugin_display::options_form in plugins/
views_plugin_display.inc - Provide the default form for setting options.
- views_plugin_display_feed::init in plugins/
views_plugin_display_feed.inc
File
- ./
views.module, line 1272 - Primarily Drupal hooks and global API functions to manipulate views.
Code
function views_fetch_plugin_names($type, $key = NULL, $base = array()) {
$data = views_fetch_plugin_data();
$plugins[$type] = array();
foreach ($data[$type] as $id => $plugin) {
// Skip plugins that don't conform to our key.
if ($key && (empty($plugin['type']) || $plugin['type'] != $key)) {
continue;
}
if (empty($plugin['no ui']) && (empty($base) || empty($plugin['base']) || array_intersect($base, $plugin['base']))) {
$plugins[$type][$id] = $plugin['title'];
}
}
if (!empty($plugins[$type])) {
asort($plugins[$type]);
return $plugins[$type];
}
// fall-through
return array();
}