From e8011a7009c1e8e918ebe975a11f6f02040d6377 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Mon, 22 Sep 2014 18:46:10 +0200 Subject: [PATCH] ADD: Pagination for ttp list --- src/org/cacert/gigi/pages/admin/TTPAdminPage.java | 15 +++++++++++++-- .../cacert/gigi/pages/admin/TTPAdminPage.templ | 5 ++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/org/cacert/gigi/pages/admin/TTPAdminPage.java b/src/org/cacert/gigi/pages/admin/TTPAdminPage.java index d9c6740a..1bb6e4cd 100644 --- a/src/org/cacert/gigi/pages/admin/TTPAdminPage.java +++ b/src/org/cacert/gigi/pages/admin/TTPAdminPage.java @@ -35,6 +35,8 @@ public class TTPAdminPage extends Page { resp.sendRedirect(PATH); } + private static final int PAGE_LEN = 30; + @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { String path = req.getPathInfo(); @@ -47,7 +49,13 @@ public class TTPAdminPage extends Page { new TTPAdminForm(req, u).output(resp.getWriter(), getLanguage(req), new HashMap()); return; } - final User[] users = TTP_APPLICANT.getMembers(0, 30); + int offset = 0; + String offsetS = req.getParameter("offset"); + if (offsetS != null) { + offset = Integer.parseInt(offsetS); + } + + final User[] users = TTP_APPLICANT.getMembers(offset, PAGE_LEN + 1); HashMap vars = new HashMap<>(); vars.put("users", new IterableDataset() { @@ -55,7 +63,7 @@ public class TTPAdminPage extends Page { @Override public boolean next(Language l, Map vars) { - if (i >= users.length) { + if (i >= Math.min(PAGE_LEN, users.length)) { return false; } vars.put("id", Integer.toString(users[i].getId())); @@ -66,6 +74,9 @@ public class TTPAdminPage extends Page { return true; } }); + if (users.length == PAGE_LEN + 1) { + vars.put("next", Integer.toString(offset + 30)); + } getDefaultTemplate().output(resp.getWriter(), getLanguage(req), vars); } diff --git a/src/org/cacert/gigi/pages/admin/TTPAdminPage.templ b/src/org/cacert/gigi/pages/admin/TTPAdminPage.templ index 1e41bf85..2e0de030 100644 --- a/src/org/cacert/gigi/pages/admin/TTPAdminPage.templ +++ b/src/org/cacert/gigi/pages/admin/TTPAdminPage.templ @@ -3,4 +3,7 @@ Process - \ No newline at end of file + + + + -- 2.39.2