Add search attribute to search by reference
This commit is contained in:
@@ -33,6 +33,8 @@ class Lexer
|
||||
"/^(category:)/" => 'T_CATEGORY',
|
||||
"/^(column:)/" => 'T_COLUMN',
|
||||
"/^(project:)/" => 'T_PROJECT',
|
||||
"/^(ref:)/" => 'T_REFERENCE',
|
||||
"/^(reference:)/" => 'T_REFERENCE',
|
||||
"/^(\s+)/" => 'T_WHITESPACE',
|
||||
'/^([<=>]{0,2}[0-9]{4}-[0-9]{2}-[0-9]{2})/' => 'T_DATE',
|
||||
'/^(yesterday|tomorrow|today)/' => 'T_DATE',
|
||||
@@ -124,6 +126,7 @@ class Lexer
|
||||
case 'T_STATUS':
|
||||
case 'T_DUE':
|
||||
case 'T_DESCRIPTION':
|
||||
case 'T_REFERENCE':
|
||||
$next = next($tokens);
|
||||
|
||||
if ($next !== false && ($next['token'] === 'T_DATE' || $next['token'] === 'T_STRING')) {
|
||||
|
||||
@@ -68,6 +68,9 @@ class TaskFilter extends Base
|
||||
case 'T_COLUMN':
|
||||
$this->filterByColumnName($value);
|
||||
break;
|
||||
case 'T_REFERENCE':
|
||||
$this->filterByReference($value);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -140,6 +143,22 @@ class TaskFilter extends Base
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Filter by reference
|
||||
*
|
||||
* @access public
|
||||
* @param string $reference
|
||||
* @return TaskFilter
|
||||
*/
|
||||
public function filterByReference($reference)
|
||||
{
|
||||
if (! empty($reference)) {
|
||||
$this->query->eq(Task::TABLE.'.reference', $reference);
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Filter by title
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user