You are here

function theme_views_view in Views (for Drupal 7) 5

Display a view.

1 theme call to theme_views_view()
theme_views_view_list_popular_alltime in modules/views_statistics.inc

File

./views.module, line 1526

Code

function theme_views_view($view, $type, $nodes, $level = NULL, $args = NULL) {
  $num_nodes = count($nodes);
  if ($type == 'page') {
    drupal_set_title(filter_xss_admin(views_get_title($view, 'page')));
    views_set_breadcrumb($view);
  }
  if ($num_nodes) {
    $output .= views_get_textarea($view, $type, 'header');
  }
  if ($type != 'block' && $view->exposed_filter) {
    $output .= views_theme('views_display_filters', $view);
  }
  $plugins = _views_get_style_plugins();
  $view_type = $type == 'block' ? $view->block_type : $view->page_type;
  if ($num_nodes || $plugins[$view_type]['even_empty']) {
    if ($level !== NULL) {
      $output .= "<div class='view-summary " . views_css_safe('view-summary-' . $view->name) . "'>" . views_theme($plugins[$view_type]['summary_theme'], $view, $type, $level, $nodes, $args) . '</div>';
    }
    else {
      $output .= "<div class='view-content " . views_css_safe('view-content-' . $view->name) . "'>" . views_theme($plugins[$view_type]['theme'], $view, $nodes, $type) . '</div>';
    }
    $output .= views_get_textarea($view, $type, 'footer');
    if ($type == 'block' && $view->block_more && $num_nodes >= $view->nodes_per_block) {
      $output .= theme('views_more', $view->real_url);
    }
  }
  else {
    $output .= views_get_textarea($view, $type, 'empty');
  }
  if ($view->use_pager) {
    $output .= theme('pager', '', $view->pager_limit, $view->use_pager - 1);
  }
  if ($output) {
    $output = "<div class='view " . views_css_safe('view-' . $view->name) . "'>{$output}</div>\n";
  }
  return $output;
}