assign('mas_do',get_sibnet_do(6)); $smarty->assign('toptitle','Попутчики - '._SHOT_TOP_DESC_); $pageurl='/pickup/'; $smarty->assign('pageurl',$pageurl); $action=@$_GET['action']; if (@$pst[0]<>'') { $action=$pst[0]; } if (isset($_POST['action'])) { $action=$_POST['action']; } $Pickup = new Pickup(); //<--постраничный вывод if(!empty($_GET['page'])) { $page=intval(abs(@$_GET['page']-1)); } else $page=0; $smarty->assign("sel_page",$page+1); $s=array("/&page=[0-9]*/","/pst=[a-z]*/"); $r=array(); $smarty->assign("url",in_text('/pickup'.preg_replace($s,$r,$_SERVER['QUERY_STRING']))); $page_limit=10; //постраничный вывод--> $order=@$_GET['sort']; if ($order!='date' and $order!='rate') $order='date'; $smarty->assign('mas_pickup',$Pickup->Leaders(10)); $smarty->assign('pickup_title','Top 10'); switch ($action) { default: //<--постраничный вывод $q="SELECT COUNT(*) AS ct FROM pickup WHERE publ>0 AND IF(regular,1,IF(to_date>".time().",1,0)) LIMIT 1"; $res=$DB->query($q); $row=$DB->nextRow($res); $smarty->assign("pages",intval(ceil($row['ct']/$page_limit))); //постраничный вывод--> $smarty->assign('mas_offers',$Pickup->ShowList($order,$page,$page_limit)); $smarty->display('pickup/main.tpl'); break; case 'show': $mas=array(); //обратная навигация $mas_back_nav=array(); $mas_back_nav[]=array('name'=>'Попутчики','link'=>'/pickup/'); $mas_back_nav[]=array('name'=>'Отзывы','link'=>''); $smarty->assign('mas_back_nav',$mas_back_nav); $oid=intval($pst[1]); //<--постраничный вывод $q="SELECT COUNT(*) AS ct FROM pickup_reviews WHERE offerid=$oid LIMIT 1"; $res=$DB->query($q); $row=$DB->nextRow($res); $smarty->assign("pages",intval(ceil($row['ct']/$page_limit))); //постраничный вывод--> if ($oid){ $Pickup->AddView($oid); } $mas=$Pickup->Show($oid,$page,$page_limit); $smarty->assign('offer',$mas['offer']); if (isset($mas['reviews'])){ $smarty->assign('reviews',$mas['reviews']); foreach ($mas['reviews'] as $key => $val){ if ( array_search(_USERID_,$val) == 'userid' ) $smarty->assign('already_reviewed',1); } } $smarty->display('pickup/show.tpl'); break; case 'ball': if ($_POST['text']==''){ $smarty->assign('pagetekst','Не указан текст!'); $smarty->display('blank_error.tpl'); } else{ if (_USERID_>0){ sinxron_users($BBSSOC_mas); $Pickup->AddReview(_USERID_,$pst[1],$_POST['text'],$_POST['ball']); } header('Location: '.$_SERVER['HTTP_REFERER']); } break; case 'complain': $Pickup->Complain(_USERLOGIN_,$pst[1],$_POST['text'],$_POST['offerid']); header('Location: '.$_SERVER['HTTP_REFERER']); break; case 'search': $qsearch=in_text($_GET['qsearch']); $smarty->assign("url",'/pickup.php?'.preg_replace($s,$r,$_SERVER['QUERY_STRING'])); //<--постраничный вывод if ($qsearch<>'') $sql=" AND ((from_point LIKE '%".$qsearch."%') OR (to_point LIKE '%".$qsearch."%')) "; else $sql=''; $q="SELECT COUNT(*) AS ct FROM pickup WHERE publ>0 AND IF(regular,1,IF(to_date>".time().",1,0)) ".$sql." LIMIT 1"; $res=$DB->query($q); $row=$DB->nextRow($res); $smarty->assign("pages",intval(ceil($row['ct']/$page_limit))); //постраничный вывод--> $smarty->assign('mas_offers',$Pickup->ShowList($order,$page,$page_limit,$sql)); $smarty->display('pickup/main.tpl'); break; } include("../inc/bottom.php"); ?>