function theme_viewreference_formatter_link in View reference 6.2
Same name and namespace in other branches
- 6.3 viewreference.module \theme_viewreference_formatter_link()
- 6 viewreference.module \theme_viewreference_formatter_link()
- 7.3 viewreference.module \theme_viewreference_formatter_link()
Theme function for 'link' nodereference field formatter.
File
- ./
viewreference.module, line 274 - Defines a field type for referencing a view from a node.
Code
function theme_viewreference_formatter_link($element) {
$output = '';
if (!empty($element['#item']['view_id']) && is_numeric($element['#item']['view_id'])) {
$view = db_fetch_object(db_query("SELECT name, position, title FROM {viewreference} WHERE view_id = '%d'", $element['#item']['view_id']));
if ($view) {
$view_object = views_get_view($view->name);
if ($view_object && $view_object
->access($view->position)) {
$title = $view_object
->get_title() ? $view_object
->get_title() : $view->title;
if (isset($view_object->display[$view->position]->display_options['path']) && !$view_object->disabled) {
$args = viewreference_get_element_args($element);
$url_args = implode("/", $args);
$path = $view_object->display[$view->position]->display_options['path'];
if ($url_args) {
$path .= "/" . $url_args;
}
$output .= l($title, $view_object
->get_url($args, $path));
}
else {
$output .= check_plain($title);
}
}
}
}
return $output;
}