Make paging work for history
Lian Wan Situ [Tue, 8 Mar 2011 23:01:11 +0000 (18:01 -0500)]
lib/Gitalist/Controller/Fragment/Ref.pm
root/inc/log_pager.tt2
root/ref/history.tt2

index 15cd8ff..64434e2 100644 (file)
@@ -110,6 +110,7 @@ after history => sub {
        refs      => $repository->references,
        filename  => $filename,
        filetype  => $file->type,
+       page      => $page,
     );
 };
 
index bc2af4b..404f295 100755 (executable)
@@ -1,9 +1,9 @@
 <ul class="pager">
-       [% IF log_lines.first.sha1 != Commit.sha1 || (log_lines.size != c.config.paging.log && page) %]
-       <li class="pager_prev"><a href='[% c.uri_with(pg => (page||0) + 1) %]'>Newer commits</a></li>
+       [% IF ((page.defined && page > 0) || !page.defined) && (log_lines.first.sha1 != Commit.sha1 || (log_lines.size != 25 && page)) %]
+       <li class="pager_prev"><a href='[% c.uri_with(pg => (page||0) - 1) %]'>Newer commits</a></li>
        [% END %]
        
-       [% IF log_lines.size == c.config.paging.log %]
-       <li class="pager_next"><a href='[% c.uri_with(pg => (page||0) - 1) %]'>Older commits</a></li>
+       [% IF log_lines.size == 25 %]
+       <li class="pager_next"><a href='[% c.uri_with(pg => (page||0) + 1) %]'>Older commits</a></li>
        [% END %]
 </ul>
index 5820d4d..761c6d3 100644 (file)
@@ -1,2 +1 @@
-[%# FIXME - Pager links are broken because I can't figure out how to pass the parameters %]
-[% subinclude('/fragment/ref/history', c.req.captures, c.req.args.to_path) %]
+[% subinclude('/fragment/ref/history', c.req.captures, c.req.args.to_path, c.req.query_parameters) %]