Beispiel #1
0
 static function getImagesFromBookSlideShow($params)
 {
     if (!is_numeric($max = $params->get('count_book'))) {
         $max = 20;
     }
     if (!is_numeric($limit_title = $params->get('limit_title'))) {
         $limit_title = 15;
     }
     $cat_id = trim($params->get('cat_id'));
     if ($cat_id != "") {
         $cat_id = " and c.id in ( " . $cat_id . " ) ";
     }
     $book_id = trim($params->get('book_id'));
     if ($book_id != "") {
         $book_id = " and b.id in ( " . $book_id . " ) ";
     }
     // build query to get slides
     $db = JFactory::getDBO();
     $s = modBOOKSlideShowHelper::GetWhereUserGroupsString("c");
     $temp_sort = $params->get('sort_by');
     switch ($temp_sort) {
         case 4:
             $sql_sort_top = ' CAST( b.hits AS SIGNED) ASC ';
             break;
         case 3:
             $sql_sort_top = ' b.title ASC ';
             break;
         case 2:
             $sql_sort_top = ' CAST( b.price AS SIGNED) ASC ';
             break;
         case 1:
             $sql_sort_top = ' b.date DESC ';
             break;
         case 0:
             $sql_sort_top = ' RAND() ';
             break;
     }
     $selectstring = "SELECT b.title AS title,b.id,b.imageURL as src,b.hits,b.price,b.priceunit,b.authors,b.date,bc.catid \n    \nFROM #__booklibrary AS b \n    \nLEFT JOIN #__booklibrary_categories AS bc ON bc.bookid=b.id \n    \nLEFT JOIN #__booklibrary_main_categories AS c ON c.id=bc.catid \n    \n WHERE ({$s}) and b.published=1 and b.approved=1  " . $cat_id . $book_id . "GROUP BY b.id ORDER BY " . $sql_sort_top . " LIMIT 0, {$max};";
     $db->setQuery($selectstring);
     $slides = $db->loadObjectList();
     foreach ($slides as $slide) {
         $slide->price = $slide->price . $slide->priceunit;
         $slide->src = modBOOKSlideShowHelper::getSlideImage($slide, $params);
         $slide->link = modBOOKSlideShowHelper::getSlideLink($slide, $params);
         //$slide->description = modBOOKSlideShowHelper::getSlideDescription($slide, $params->get('limit_desc'));
         if (strlen($slide->title) > $limit_title) {
             $slide->title = substr($slide->title, 0, $limit_title) . "..";
         }
         $slide->alt = $slide->title;
         $slide->target = modBOOKSlideShowHelper::getSlideTarget($slide->link);
     }
     return $slides;
 }