Esempio n. 1
0
 /**
  * Date fields perform substitution on the parameters passed in to query.
  * To handle this we pass every parameter through `strtotime()` to make
  * sure that it is a valid search.
  *
  * @param QueryInterface $query
  * @param ClassMetadata  $metadata
  *
  * @return void
  */
 public function query(QueryInterface $query, ClassMetadata $metadata)
 {
     $field = $this->mapping['fieldname'];
     $dateParams = $query->getWhereParametersFor($field);
     foreach ($dateParams as $key => $val) {
         $time = strtotime($val);
         if (!$time) {
             throw new QueryParseException('Unable to query $field = $val, not a valid date search', 1);
         }
         $replacement = date('Y-m-d H:i:s', $time);
         $query->setWhereParameter($key, $replacement);
     }
 }