[% MACRO link_page(num) BLOCK; %] [% IF num == pager.current_page %] [% IF num < 10 %] [% ELSE %] [[% num %]] [% END %] [% ELSE %] [% IF num < 10 %] [% ELSE %] [[% num %]] [% END %] [% END %] [% END %] [% IF pager.last_page > 1; SET begin_page = pager.current_page - 5; IF begin_page < 1; SET begin_page = pager.first_page; END; SET end_page = pager.current_page + 5; IF pager.last_page < end_page; SET end_page = pager.last_page; END; IF begin_page != 1; link_page(1); " ... "; END; FOREACH num = [begin_page .. end_page]; link_page(num); END; IF end_page != pager.last_page; "..."; link_page(pager.last_page); END; END %]