function viewreference_get_view in View reference 6.3
Same name and namespace in other branches
- 7.3 viewreference.module \viewreference_get_view()
Helper function for stock theme functions.
Parameters
$element: The field element.
$params: An array of special features needed to be built: 'embed' - The $view->preview() of the view display 'title' - The display title of the view display 'link' - A link to the view display, or the title if link not available.
Return value
The view object.
5 calls to viewreference_get_view()
- theme_viewreference_formatter_default in ./
viewreference.module - Theme function for 'default' viewreference field formatter.
- theme_viewreference_formatter_full in ./
viewreference.module - Theme function for 'full' viewreference field formatter.
- theme_viewreference_formatter_link in ./
viewreference.module - Theme function for 'link' viewreference field formatter.
- theme_viewreference_formatter_path in ./
viewreference.module - Theme function for 'path' viewreference field formatter.
- theme_viewreference_formatter_plain in ./
viewreference.module - Theme function for 'plain' viewreference field formatter.
File
- ./
viewreference.module, line 241 - Defines a field type for referencing a view from a node.
Code
function viewreference_get_view($element, $params = array()) {
if (!empty($element['#item']['view_id'])) {
$view_id_parts = explode(":", $element['#item']['view_id']);
$view['name'] = $view_id_parts[0];
$view['display'] = $view_id_parts[1];
$view['view'] = views_get_view($view['name']);
if ($view['view'] && $view['view']
->access($view['display'])) {
if (in_array('embed', $params)) {
$view['args'] = viewreference_get_element_args($element);
$view['embed'] = $view['view']
->preview($view['display'], $view['args']);
}
if (in_array('title', $params) || in_array('link', $params)) {
$view['title'] = theme('viewreference_display_title', $view['view'], $view['name'], $view['display']);
if (in_array('link', $params)) {
if (isset($view['view']->display[$view['display']]->display_options['path']) && !$view['view']->disabled) {
$view['args'] = $view['args'] ? $view['args'] : viewreference_get_element_args($element);
$view['url_args'] = implode("/", $view['args']);
$view['path'] = $view['view']->display[$view['display']]->display_options['path'];
if ($view['url_args']) {
$view['path'] .= "/" . $view['url_args'];
}
$view['link'] .= l($view['title'], $view['view']
->get_url($view['args'], $view['path']));
}
else {
$view['link'] .= $view['title'];
}
}
}
return $view;
}
}
}