public function search(Search_SearchQuery $query, Search_SearchResults $search_results)
 {
     $user = UserManager::instance()->getCurrentUser();
     if ($user->isRestricted()) {
         $dao_results = $this->dao->searchGlobalPaginatedForRestrictedUsers($query->getWords(), $query->getOffset(), $query->getExact(), $user->getId(), $query->getNumberOfResults());
     } else {
         $dao_results = $this->dao->searchGlobalPaginated($query->getWords(), $query->getOffset(), $query->getExact(), $query->getNumberOfResults());
     }
     $results_count = count($dao_results);
     $maybe_more_results = $results_count < $query->getNumberOfResults() ? false : true;
     $search_results->setHasMore($maybe_more_results)->setCountResults($results_count);
     return $this->getSearchProjectResultPresenter($dao_results, $query->getWords(), $maybe_more_results);
 }