1: <?php
2: 3: 4: 5: 6: 7: 8: 9:
10:
11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
27: function smarty_function_flvplayer($params, &$smarty)
28: {
29: $ret = "";
30:
31: if (isset($params['pagenavi']) && is_object($params['pagenavi'])) {
32:
33: $navi =& $params['pagenavi'];
34:
35: $perPage = $navi->getPerpage();
36:
37: $total = $navi->getTotalItems();
38: $totalPages = $navi->getTotalPages();
39:
40: if ($totalPages == 0) {
41: return;
42: }
43:
44: $url = $navi->renderURLForPage();
45: $current = $navi->getStart();
46:
47: $offset = isset($params['offset']) ? intval($params['offset']) : 4;
48:
49:
50:
51:
52: if($navi->hasPrivPage()) {
53: $ret .= @sprintf("<font class=\"navi_pagneutral\"><a href='%s'>«</a></font>", $navi->renderURLForPage($navi->getPrivStart()));
54: }
55:
56:
57:
58:
59: $counter=1;
60: $currentPage = $navi->getCurrentPage();
61: while($counter<=$totalPages) {
62: if($counter==$currentPage) {
63: $ret.=@sprintf("<strong><font class=\"navi_pagact\">%d</font></strong>",$counter);
64: }
65: elseif(($counter>$currentPage-$offset && $counter<$currentPage+$offset) || $counter==1 || $counter==$totalPages) {
66: if($counter==$totalPages && $currentPage<$totalPages-$offset) {
67: $ret.="... ";
68: }
69: $ret .= @sprintf("<font class=\"navi_pagneutral\"><a href='%s'>%d</a></font>",$navi->renderURLForPage(($counter-1)*$perPage),$counter);
70: if($counter==1 && $currentPage>1 + $offset) {
71: $ret.="... ";
72: }
73: }
74: $counter++;
75: }
76:
77:
78:
79:
80: $next=$current + $perPage;
81: if($navi->hasNextPage()) {
82: $ret.=@sprintf("<font class=\"navi_pagneutral\"><a href='%s'>»</a></font>",$navi->renderURLForPage($navi->getNextStart()));
83: }
84: }
85:
86: print $ret;
87: }
88:
89: ?>
90: