|
<?php |
|
|
|
namespace Kanboard\Filter; |
|
|
|
|
|
|
|
|
|
|
|
|
|
abstract class BaseComparisonFilter extends BaseFilter |
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
protected function parseOperator() |
|
{ |
|
$operators = array( |
|
'<=' => 'lte', |
|
'>=' => 'gte', |
|
'<' => 'lt', |
|
'>' => 'gt', |
|
); |
|
|
|
foreach ($operators as $operator => $method) { |
|
if (strpos($this->value, $operator) === 0) { |
|
$this->value = substr($this->value, strlen($operator)); |
|
return $method; |
|
} |
|
} |
|
|
|
return 'eq'; |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected function applyComparisonFilter($field) |
|
{ |
|
$method = $this->parseOperator(); |
|
$this->query->$method($field, $this->value); |
|
} |
|
} |
|
|