'Каталог авто','link'=>'/catalog/'); $smarty->assign('mas_do',get_sibnet_do(6)); $smarty->assign('mas_lib',get_sibnet_lib(4)); // ----------- Выводим акции ------------- // $mas_share=get_share(1); $smarty->assign('share',$mas_share); if (@$pst[0]=='') { //популярные модели каталога $cache_name='catalog_pop'; $cache_class->cache_name = $cache_name; $cache_class->cache_time = 300; if (!$mas_pop = $cache_class->read_cache()) { $q_pop="SELECT DISTINCT(vendorid),modelid,ctview FROM car_cat ORDER BY ctview DESC LIMIT 4"; $res_pop=$DB->query($q_pop); $mas_pop=array(); while ($row_pop=$DB->nextRow($res_pop)){ $q="SELECT *,id AS modelid FROM car_model WHERE vendorid=".$row_pop['vendorid']." AND id=".$row_pop['modelid']." AND archiv=0 LIMIT 1"; $res=$DB->query($q); $row=$DB->nextRow($res); //выводим модификации $qm="SELECT id,modification,cost FROM car_cat WHERE modelid=".$row_pop['modelid']; $resm=$DB->query($qm); while ($rowm=$DB->nextRow($resm)) { $row['modif'][]=$rowm; } $qv="SELECT link FROM vendors WHERE id=".$row_pop['vendorid']; $resv=$DB->query($qv); $rowv=$DB->nextRow($resv); $row['parentlink']=$rowv['link']; $mas_pop[]=$row; } //пишем в кеш $cache_class->write_cache($mas_pop); } $smarty->assign('mas_pop',$mas_pop); } $smarty->assign('toptitle','Каталог новых автомобилей - '._SHOT_TOP_DESC_); $smarty->assign('mas_vendors',$mas_vendors); $smarty->assign('f_type','catalog'); switch ($action) { default: if (@$pst[0]<>'') { // ---------------------------------------------------------------- // // -------------- Выводим модели производителя -------------------- // // ---------------------------------------------------------------- // $rowv=get_vendor_by_name($pst[0],1); if ($rowv['id']>0) { $smarty->assign('vendor',$rowv); if ($pst[1]=='') { $mas_models=array(); $q="SELECT *,id AS modelid FROM car_model WHERE vendorid=".intval($rowv['id'])." AND archiv=0"; $res=$DB->query($q); while ($row=$DB->nextRow($res)) { //выводим модификации $qm="SELECT id,modification,cost FROM car_cat WHERE modelid=".intval($row['id'])." "; $resm=$DB->query($qm); while ($rowm=$DB->nextRow($resm)) { $row['modif'][]=$rowm; } $row['parentlink']=$rowv['link']; $mas_models[]=$row; } $smarty->assign('toptitle',$rowv['name'].' в каталоге '._SHOT_TOP_DESC_); $smarty->assign('topdes',$rowv['name'].' в каталоге '._SHOT_TOP_DESC_); $smarty->assign('topkeyw',$rowv['name'].' - описание, характеристики, продажа, фотографии, отзывы'); $smarty->assign('mas_models',$mas_models); $smarty->display('catalog/catalog_models.tpl'); } else { // ---------------------------------------------------------------- // // -------------- Выводим описание данной модели -------------- // // ---------------------------------------------------------------- // $rowm=get_model_by_name($rowv['id'],$pst[1]); if ($rowm['id']>0) { $smarty->assign('model',$rowm); $smarty->assign('toptitle',$rowv['name'].' '.$rowm['name'].' в каталоге '._SHOT_TOP_DESC_); $smarty->assign('topdes',$rowv['name'].' '.$rowm['name'].' в каталоге '._SHOT_TOP_DESC_); $smarty->assign('topkeyw',$rowv['name'].' '.$rowm['name'].' - описание, характеристики, продажа, фотографии, отзывы'); //массив инфы о модели $mas_model=array('modelid'=>$rowm['id'],'model'=>$rowm['name'],'model_link'=>$rowm['link'],'vendorid'=>$rowv['id'],'vendor'=>$rowv['name'],'vendor_link'=>$rowv['link']); $smarty->assign('model_block_info',$mas_model); //обрат навигация $mas_back_nav[]=array('name'=>$rowv['name'],'link'=>'/catalog/'.$rowv['link'].'/'); //массив с обобщенными характеристиками модели $mas_param=array(); //модификации $mas_cars=array(); $q="SELECT * FROM car_cat WHERE modelid=".intval($rowm['id'])." "; $res=$DB->query($q); while ($row=$DB->nextRow($res)) { $mas_param=get_common_car_model_param($row,$mas_param); $mas_cars[]=$row; } $smarty->assign('mas_cars',$mas_cars); $smarty->assign('mas_param',$mas_param); if ($pst[2]=='') { //выводим фотки $mas_foto=array(); $qf="SELECT * FROM car_model_img WHERE modelid=".intval($rowm['id']); $resf=$DB->query($qf); while ($rowf=$DB->nextRow($resf)) { $mas_foto[]=$rowf; } //выводим объявы из доски объявлений $mas_car_sale=get_sale_car_by_model($rowm['id'],5,$rowv,$rowm); $user = new users_class(); $smarty->assign('bit',$user->load()); $smarty->assign('mas_user_settings',$user->mas_user_settings); $smarty->assign('mas_car_sale',$mas_car_sale); add_views_to_all_models($rowm['id']); //увеличиваем число просмотров всем моделям (для популяных карточек) $mas_back_nav[]=array('name'=>$rowm['name'],'link'=>''); $smarty->assign('mas_back_nav',$mas_back_nav); $smarty->assign('mas_foto',$mas_foto); $smarty->display('catalog/catalog_cars.tpl'); } else { // ---------------------------------------------------------------- // // -------------- Выводим описание данной модификации ------------- // // ---------------------------------------------------------------- // $q="SELECT * FROM car_cat WHERE id=".intval($pst[2])." LIMIT 1"; $res=$DB->query($q); $row=$DB->nextRow($res); $smarty->assign('modif',$row); $mas_back_nav[]=array('name'=>$rowm['name'],'link'=>'/catalog/'.$rowv['link'].'/'.$rowm['link'].'/'); $mas_back_nav[]=array('name'=>$row['modification'],'link'=>''); $smarty->assign('mas_back_nav',$mas_back_nav); $smarty->display('catalog/catalog_car_modif.tpl'); } } else { $smarty->display('blank_error.tpl'); } } } else { $smarty->display('blank_error.tpl'); } } else { $smarty->display('catalog/catalog_main.tpl'); } break; case 'search': $cat_filtr=new cat_filtr; $cat_filtr->type='catalog'; $cat_filtr->param=$_GET; $sql=$cat_filtr->cars(); $sql2=''; if ($sql<>'') { $sql=substr($sql,4); $sql2=$sql; $sql=' WHERE '.$sql; } $pagenamb=intval(@$_GET['page']); // ------- постраничная ------------------ // $qt="SELECT COUNT(DISTINCT modelid) AS total FROM car_cat AS car ".$sql." LIMIT 1"; $maspage=pagebegin($qt,10,$pagenamb,'catalog.php?'.$_SERVER['QUERY_STRING'].'&'); $pagesqllim=$maspage['pagelim']; $smarty->assign('pagenav',$maspage["maspage"]); $smarty->assign('total',$maspage["total"]); $ct=-1; $last_model_id=0; $mas=array(); $q="SELECT DISTINCT model.id AS modelid,vendors.id AS vendorid,vendors.name AS vendor,vendors.link AS vendor_link, model.name AS model,model.img,model.link AS model_link FROM car_cat AS car INNER JOIN vendors ON (vendors.id=car.vendorid) INNER JOIN car_model AS model ON (model.id=car.modelid) ".$sql." GROUP BY car.modelid ORDER by model.name,car.modelid ".$pagesqllim." "; $res=$DB->query($q); while ($row=$DB->nextRow($res)) { $row['name']=$row['vendor'].' '.$row['model']; $row['parentlink']=$row['vendor_link']; $row['link']=$row['model_link']; //запрашиваем модификации подходящие под условие $q_m="SELECT * FROM car_cat AS car WHERE car.modelid=".intval($row['modelid'])." "; if ($sql2<>'') { $q_m.=" AND ".$sql2; } $q_m.=" ORDER BY cost ASC LIMIT 4"; $resm=$DB->query($q_m); while ($rowm=$DB->nextRow($resm)) { $row['modif'][]=array('id'=>$rowm['id'],'modification'=>$rowm['modification'],'cost'=>$rowm['cost']); } $mas[]=$row; } $smarty->assign('mas_models',$mas); $smarty->display('catalog/catalog_models_search.tpl'); break; } include("../inc/bottom.php"); ?>