_posts=$this->DataAccess->queryPostsSearch( $this->getPostKeywords(), 'ORDER BY create_time DESC', 'LIMIT '.$this->getPageOffset().','.$this->getPageSize()); } private function getPostKeywords() { return explode(' ',$this->Request['keyword']); } private function getPageOffset() { if(($offset=TPropertyValue::ensureInteger($this->Request['offset']))<=0) $offset=0; return $offset; } private function getPageSize() { if(($limit=TPropertyValue::ensureInteger($this->Request['limit']))<=0) $limit=TPropertyValue::ensureInteger($this->Application->Parameters['PostPerPage']); return $limit; } private function formUrl($newOffset) { $gets=array(); $gets['offset']=$newOffset; if($this->Request['limit']!==null) $gets['limit']=$this->Request['limit']; if($this->Request['time']!==null) $gets['time']=$this->Request['time']; if($this->Request['cat']!==null) $gets['cat']=$this->Request['cat']; return $this->Service->constructUrl('Posts.ListPost',$gets); } public function onLoad($param) { parent::onLoad($param); $this->PostList->DataSource=$this->_posts; $this->PostList->dataBind(); if($this->getPageOffset()>0) { if(($offset=$this->getPageOffset()-$this->getPageSize())<0) $offset=0; $this->PrevPage->NavigateUrl=$this->formUrl($offset); $this->PrevPage->Visible=true; } if(count($this->_posts)===$this->getPageSize()) { $this->NextPage->NavigateUrl=$this->formUrl($this->getPageOffset()+$this->getPageSize()); $this->NextPage->Visible=true; } } } ?>