You are here

public function views_xml_backend_handler_filter::generate in Views XML Backend 7

Same name and namespace in other branches
  1. 6 handlers/views_xml_backend_handler_filter.inc \views_xml_backend_handler_filter::generate()
1 call to views_xml_backend_handler_filter::generate()
views_xml_backend_handler_filter::__toString in handlers/views_xml_backend_handler_filter.inc

File

handlers/views_xml_backend_handler_filter.inc, line 156
Contains views_xml_backend_handler_filter.

Class

views_xml_backend_handler_filter
Base filter handler for views_xml_backend.

Code

public function generate() {
  $operator = $this->options['expose'] ? $this->operator : $this->options['operator'];
  $xpath = $this->options['xpath_selector'];
  $value = $this->value;

  // Awesome string escape.
  $value = '"' . str_replace('"', '\\"', $value) . '"';
  if ($operator == '=' || $operator == '!=') {
    return "{$xpath} {$operator} {$value}";
  }
  if (strpos($operator, '!') === 0) {
    $operator = ltrim($operator, '!');
    return "not({$operator}({$xpath}, {$value}))";
  }
  return "{$operator}({$xpath}, {$value})";
}