Example #1
0
 /**
  * Recursive helper for _getMergedArray.
  */
 function &_getMergedPhraseResults(&$press, &$phrase, $type, $publishedFrom, $publishedTo, $resultsPerKeyword, $resultCacheHours)
 {
     if (isset($phrase['+'])) {
         $mergedResults =& MonographSearch::_getMergedKeywordResults($press, $phrase, $type, $publishedFrom, $publishedTo, $resultsPerKeyword, $resultCacheHours);
         return $mergedResults;
     }
     $mergedResults = array();
     $monographSearchDao =& DAORegistry::getDAO('MonographSearchDAO');
     $results =& $monographSearchDao->getPhraseResults($press, $phrase, $publishedFrom, $publishedTo, $type, $resultsPerKeyword, $resultCacheHours);
     while (!$results->eof()) {
         $result =& $results->next();
         $monographId = $result['monograph_id'];
         if (!isset($mergedResults[$monographId])) {
             $mergedResults[$monographId] = $result['count'];
         } else {
             $mergedResults[$monographId] += $result['count'];
         }
     }
     return $mergedResults;
 }