public function createLuceneQuery($query = '') { // remove multiple whitespaces and trim ! // $andQuery = // implode ( " AND ", explode( " ", trim( preg_replace('/\s+/', ' ',$query)) )); $andQuery = aZendSearch::luceneCombineAnd( $query ); $hits = self::getLuceneIndex()->find($andQuery); // $query $pks = array(); foreach ($hits as $hit) { $pks[] = $hit->pk; } if (empty($pks)) { $pks[] = null; // return array(); } $q = $this->createQuery('a') ->andWhereIn('a.id', $pks); // $q = $this->addActiveJobsQuery($q); return $q; }