You are here

function views_plugin_argument_default_ancestor::get_argument in Node Hierarchy 7.2

Same name and namespace in other branches
  1. 6.3 includes/views/views_plugin_argument_default_ancestor.inc \views_plugin_argument_default_ancestor::get_argument()
  2. 7.4 includes/views/views_plugin_argument_default_ancestor.inc \views_plugin_argument_default_ancestor::get_argument()

Return the default argument.

This needs to be overridden by every default argument handler to properly do what is needed.

Overrides views_plugin_argument_default::get_argument

File

includes/views/views_plugin_argument_default_ancestor.inc, line 27
Contains the node from URL argument default plugin.

Class

views_plugin_argument_default_ancestor
Default argument plugin to extract an ancestor node id of the currently active node.

Code

function get_argument() {
  foreach (range(1, 3) as $i) {
    $node = menu_get_object('node', $i);
    if (!empty($node) && ($ancestors = nodehierarchy_get_node_ancestor_nids($node->nid))) {
      $idx = $this->argument->options['default_argument_ancestor_depth'];
      if ($idx < 0) {
        $idx = count($ancestors) + $idx - 1;
      }
      return $ancestors[$idx];
    }
  }
  return NULL;
}