/** * Filters a query object given * * @param \Illuminate\Database\Query\Builder $query * @param array $selects * * @return void */ public function filterQuery(QueryBuilder &$query, &$selects = null) { //run the parent method parent::filterQuery($query, $selects); //if there is no value, return if (!$this->getOption('value')) { return; } $query->where($this->config->getDataModel()->getTable() . '.' . $this->getOption('field_name'), 'LIKE', '%' . $this->getOption('value') . '%'); }
/** * Filters a query object * * @param \Illuminate\Database\Query\Builder $query * @param array $selects * * @return void */ public function filterQuery(QueryBuilder &$query, &$selects = null) { //run the parent method parent::filterQuery($query, $selects); //if there is no value, return if (!$this->getOption('value')) { return; } if (is_callable($this->getOption('query'))) { call_user_func($this->getOption('query'), $query, $this->config->getDataModel()->getTable() . '.' . $this->getOption('field_name'), $this->getOption('value')); } else { $query->where($this->config->getDataModel()->getTable() . '.' . $this->getOption('field_name'), '=', $this->getOption('value')); } }