From 0356e9e734f82c91bd46709726098667fd01b2e8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Sun, 31 Aug 2014 00:13:26 +0200 Subject: [PATCH] ADD: Show a policy index directory. --- src/org/cacert/gigi/Gigi.java | 16 ++++---- src/org/cacert/gigi/PolicyRedirector.java | 3 ++ src/org/cacert/gigi/pages/PolicyIndex.java | 45 ++++++++++++++++++++++ 3 files changed, 57 insertions(+), 7 deletions(-) create mode 100644 src/org/cacert/gigi/pages/PolicyIndex.java diff --git a/src/org/cacert/gigi/Gigi.java b/src/org/cacert/gigi/Gigi.java index 5a41bf68..148556e8 100644 --- a/src/org/cacert/gigi/Gigi.java +++ b/src/org/cacert/gigi/Gigi.java @@ -27,6 +27,7 @@ import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.LogoutPage; import org.cacert.gigi.pages.MainPage; import org.cacert.gigi.pages.Page; +import org.cacert.gigi.pages.PolicyIndex; import org.cacert.gigi.pages.RootCertPage; import org.cacert.gigi.pages.StaticPage; import org.cacert.gigi.pages.TestSecure; @@ -103,21 +104,22 @@ public class Gigi extends HttpServlet { putPage("/wot/rules", new StaticPage("CAcert Web of Trust Rules", AssurePage.class.getResourceAsStream("Rules.templ")), "CAcert Web of Trust"); baseTemplate = new Template(Gigi.class.getResource("Gigi.templ")); rootMenu = new Menu("Main"); - for (Menu menu : categories) { - menu.prepare(); - rootMenu.addItem(menu); - } Menu about = new Menu("About CAcert.org"); + categories.add(about); + about.addItem(new SimpleMenuItem("//blog.cacert.org/", "CAcert News")); about.addItem(new SimpleMenuItem("//wiki.cacert.org/", "Wiki Documentation")); - about.addItem(new SimpleMenuItem("/policy", "Policies")); + putPage(PolicyIndex.DEFAULT_PATH, new PolicyIndex(), "About CAcert.org"); about.addItem(new SimpleMenuItem("//wiki.cacert.org/FAQ/Privileges", "Point System")); about.addItem(new SimpleMenuItem("//bugs.cacert.org/", "Bug Database")); about.addItem(new SimpleMenuItem("//wiki.cacert.org/Board", "CAcert Board")); about.addItem(new SimpleMenuItem("//lists.cacert.org/wws", "Mailing Lists")); about.addItem(new SimpleMenuItem("//blog.CAcert.org/feed", "RSS News Feed")); - about.prepare(); - rootMenu.addItem(about); + + for (Menu menu : categories) { + menu.prepare(); + rootMenu.addItem(menu); + } rootMenu.prepare(); firstInstanceInited = true; diff --git a/src/org/cacert/gigi/PolicyRedirector.java b/src/org/cacert/gigi/PolicyRedirector.java index c4a260e5..e907c376 100644 --- a/src/org/cacert/gigi/PolicyRedirector.java +++ b/src/org/cacert/gigi/PolicyRedirector.java @@ -16,6 +16,9 @@ public class PolicyRedirector extends HandlerWrapper { if (target.equals("/")) { return; } + if (target.equals("/policy/")) { + return; + } if (target.startsWith("/policy/") && target.endsWith(".php")) { target = target.replace(".php", ".html"); response.sendRedirect(target); diff --git a/src/org/cacert/gigi/pages/PolicyIndex.java b/src/org/cacert/gigi/pages/PolicyIndex.java new file mode 100644 index 00000000..d6416b69 --- /dev/null +++ b/src/org/cacert/gigi/pages/PolicyIndex.java @@ -0,0 +1,45 @@ +package org.cacert.gigi.pages; + +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +public class PolicyIndex extends Page { + + public PolicyIndex() { + super("CAcert.org Policies"); + } + + File root = new File("static/www/policy"); + + public static final String DEFAULT_PATH = "/policy"; + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { + PrintWriter out = resp.getWriter(); + out.println(""); + } + + @Override + public boolean needsLogin() { + return false; + } + +} -- 2.39.2