You are here

public function PhpDefault::getArgument in Views Contextual Range Filter 8

Return the default argument.

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

Overrides ArgumentDefaultPluginBase::getArgument

File

src/Plugin/views/argument_default/PhpDefault.php, line 64

Class

PhpDefault
Default argument plugin to execute PHP code to return default argument value.

Namespace

Drupal\contextual_range_filter\Plugin\views\argument_default

Code

public function getArgument() {

  // Make common entities available in the PHP code through variable $entity:
  // $entity['view'], ie. $this->view.
  // $entity['node'], if on a content page, eg node/123.
  // $entity['user'], if on a user page, eg user/456.
  $entity = [];
  foreach ($params = \Drupal::routeMatch()
    ->getParameters() as $type => $param) {
    if ($param instanceof EntityInterface) {
      $entity[$type] = $param;
    }
  }
  ob_start();
  $result = eval($this->options['code']);
  ob_end_clean();
  return $result;
}