Re: Handling pagination past the end of the result set

2014-11-04 Thread LDSign
Hi

Ive done this in Cake 2.5. Ive put all the pagination logic into a 
component and there is one function which checks for last page:

// Check if results are outside the current page stored in session (to 
prevent NotFound error)
 private function __checkLastPage($conditions = array(),$contain = array()) 
{
$count = 
$this-Controller-{$this-modelClass}-find('count',array('conditions' = 
$conditions,'contain' = $contain));
$lastPage = ceil($count / Configure::read('Config.paginateLimit'));
 if (empty($lastPage)) {
$lastPage = 1;
}
 if (empty($this-Controller-request-params['named']['page'])) {
$this-Controller-request-params['named']['page'] = 1;
}
 if ($lastPage  $this-Controller-request-params['named']['page']) {
$this-Controller-request-params['named']['page'] = $lastPage;
}
}


This should give you an idea. Have fun!

Frank


Am Samstag, 1. November 2014 17:20:05 UTC+1 schrieb Rob Cowie:

 Hi all, and have added filtering code to my app (cakephp3) and all is 
 great. The only problem I have is catching when the results set gives us 
 less pages than the user is on (ie, user sets a filter whilst on page 9, 
 but the resulting set only fills 3 pages). I am catching the exception, but 
 do not know the correct way to change the page I am going to display in the 
 controller. can any one help?


-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
CakePHP group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Handling pagination past the end of the result set

2014-11-01 Thread Rob Cowie
Hi all, and have added filtering code to my app (cakephp3) and all is 
great. The only problem I have is catching when the results set gives us 
less pages than the user is on (ie, user sets a filter whilst on page 9, 
but the resulting set only fills 3 pages). I am catching the exception, but 
do not know the correct way to change the page I am going to display in the 
controller. can any one help?

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
CakePHP group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.