function viewreference_get_list_of_views in View reference 6.2
Same name and namespace in other branches
- 6 viewreference.module \viewreference_get_list_of_views()
Builds a table of view references, and returns data as an array
2 calls to viewreference_get_list_of_views()
- viewreference_field_settings in ./
viewreference.module - Implementation of hook_field_settings().
- _viewreference_potential_references in ./
viewreference.module - Fetch an array of all candidate referenced views, for use in presenting the selection form to the user.
File
- ./
viewreference.module, line 744 - Defines a field type for referencing a view from a node.
Code
function viewreference_get_list_of_views() {
$views = array();
$loaded_views = views_get_all_views();
foreach ((array) $loaded_views as $view_name => $view) {
foreach ((array) $view->display as $display_key => $display_data) {
// views guy reckons not to use default
if ($display_key != 'default') {
// Figure out what the view_id is by doing some queries
$view_id = db_result(db_query("SELECT view_id FROM {viewreference} WHERE name = '%s' AND position = '%s' ", $view_name, $display_key));
if (!$view_id) {
$view_id = db_result(db_query("SELECT MAX(view_id) FROM {viewreference}")) + 1;
}
if ($view_id) {
// Update database (delete [if possible] then insert)
db_query("DELETE FROM {viewreference} WHERE view_id = %d", $view_id);
$title = ucfirst($view_name) . ' ' . $display_data->display_title;
db_query("INSERT INTO {viewreference} (view_id, name, position, title) VALUES (%d, '%s', '%s', '%s')", $view_id, $view_name, $display_key, $title);
// Build return array
$views[$view_id] = $title;
}
}
}
}
return $views;
}