You are here

function views_handler_arg_book_parent in Views (for Drupal 7) 5

1 string reference to 'views_handler_arg_book_parent'
book_views_arguments in modules/views_book.inc

File

modules/views_book.inc, line 84

Code

function views_handler_arg_book_parent($op, &$query, $argtype, $arg = '') {
  switch ($op) {
    case 'summary':
      $query
        ->ensure_table("book_parent_node");
      $query
        ->add_field("nid");
      $query
        ->add_field("parent", "book");
      $query
        ->add_field("title", "book_parent_node");
      $query
        ->add_field("nid", "book_parent_node", "pnid");
      $query
        ->add_where("book_parent_node.nid IS NOT NULL");
      $fieldinfo['field'] = "book_parent_node.title";
      return $fieldinfo;
      break;
    case 'sort':
      $query
        ->add_orderby('book', 'weight', $argtype);
      $query
        ->add_orderby('book_parent_node', 'title', $argtype);
      break;
    case 'filter':
      $query
        ->ensure_table("book");
      $query
        ->add_where("book.parent = '%s'", $arg);
      $query
        ->add_where("book.vid = node.vid");
      break;
    case 'link':
      return l($query->title, "{$arg}/{$query->pnid}");
    case 'title':
      if ($query) {
        $term = db_fetch_object(db_query("SELECT title FROM {node} WHERE nid = '%d'", $query));
        return check_plain($term->title);
      }
  }
}