/**
  * Returns the most searched queries as a DataList
  *
  * @return DataList 
  * 
  * @author Sebastian Diel <*****@*****.**>, Roland Lehmann <*****@*****.**>
  * @since 05.06.2012
  */
 public function TagsForCloud()
 {
     $searchTags = SilvercartSearchQuery::get_most_searched($this->TagsPerCloud);
     if (!$searchTags) {
         return false;
     }
     $searchTags = $searchTags->sort('SearchQuery');
     $searchTagsArrayList = new ArrayList();
     /*
      * The following block is a replacement for the call DataObjectSet::groupBy()
      * which does not exist any more
      */
     $searchTagCounts = array();
     foreach ($searchTags as $item) {
         $key = $item->hasMethod('count') ? $item->count() : $item->Count;
         $searchTagCounts[$key] = $key;
     }
     $fontSizeRanges = $this->getFontSizeRanges($searchTagCounts);
     foreach ($searchTags as $searchTag) {
         foreach ($fontSizeRanges as $fontSize => $fontSizeRange) {
             if ($searchTag->Count >= $fontSizeRange['Min'] && $searchTag->Count <= $fontSizeRange['Max']) {
                 $searchTag->FontSize = $fontSize;
                 $searchTagsArrayList->push($searchTag);
             }
         }
     }
     return $searchTagsArrayList;
 }