Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function pagination($rows, $perpage, $page=0, $offset, $base) {
- global $smarty;
- $paging = array();
- $range = 7; // max number of items either side current page
- $prev = '';
- $next = '';
- $paging['current'] = $page;
- $paging['base'] = $base;
- $pages = ceil($rows / $perpage);
- if ($page > 1) { $paging['prev'] = $page-1; }
- if ($page < $pages) { $paging['next'] = $page+1; }
- $eitherside = $range * $perpage;
- if($offset+1 > $eitherside) {
- $paging['leftrange'] = "... ";
- }
- if(($offset + $eitherside)<$rows) {
- $paging['rightrange'] = "... ";
- }
- $pg = 1;
- for($y=0;$y<$rows;$y+=$perpage) {
- if(($y > ($offset - $eitherside)) && ($y < ($offset + $eitherside))) {
- $paging['pages'][] = $pg;
- }
- $pg++;
- }
- $smarty->assign("paging", $paging);
- }
- <div class="paging">
- {if $paging.prev}<a href="{$paging.base}&page={$paging.prev}">Previous</a> {/if}
- {$paging.leftrange}
- <span>
- {section name=page loop=$paging.pages}
- <a href="{$paging.base}&page={$paging.pages[page]}" {if $paging.current eq $paging.pages[page]}class="highlight"{/if}>{$paging.pages[page]}</a>
- {/section}
- </span>
- {$paging.rightrange}
- {if $paging.next}<a href="{$paging.base}&page={$paging.next}">Next</a>{/if}
- </div>
Add Comment
Please, Sign In to add comment