From 4051cdcc800038b556c53b3e4373e6e6a9953721 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Mon, 27 Jun 2016 10:47:34 +0200 Subject: [PATCH] add: an about page that shows the currently deployed version. fixes #51 Change-Id: I6e6ca442c8d0b597599b1e85c3a1c98c73ca7a52 --- .gitignore | 1 + Gigi.MF | 3 --- build.xml | 8 ++++++ src/org/cacert/gigi/Gigi.java | 2 ++ src/org/cacert/gigi/pages/AboutPage.java | 30 +++++++++++++++++++++++ src/org/cacert/gigi/pages/AboutPage.templ | 1 + 6 files changed, 42 insertions(+), 3 deletions(-) delete mode 100644 Gigi.MF create mode 100644 src/org/cacert/gigi/pages/AboutPage.java create mode 100644 src/org/cacert/gigi/pages/AboutPage.templ diff --git a/.gitignore b/.gitignore index 0c170e19..5a68b3a4 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ static.tar.gz /src/org/cacert/gigi/util/effective_tld_names.dat +Gigi.MF diff --git a/Gigi.MF b/Gigi.MF deleted file mode 100644 index 614d595d..00000000 --- a/Gigi.MF +++ /dev/null @@ -1,3 +0,0 @@ -Manifest-Version: 1.0 -Main-Class: org.cacert.gigi.Launcher - diff --git a/build.xml b/build.xml index be1b127e..6816b7d8 100644 --- a/build.xml +++ b/build.xml @@ -81,6 +81,14 @@ + + + + + + + + diff --git a/src/org/cacert/gigi/Gigi.java b/src/org/cacert/gigi/Gigi.java index bf6c32ed..19954c60 100644 --- a/src/org/cacert/gigi/Gigi.java +++ b/src/org/cacert/gigi/Gigi.java @@ -33,6 +33,7 @@ import org.cacert.gigi.output.SimpleMenuItem; import org.cacert.gigi.output.template.Form.CSRFException; import org.cacert.gigi.output.template.Outputable; import org.cacert.gigi.output.template.Template; +import org.cacert.gigi.pages.AboutPage; import org.cacert.gigi.pages.HandlesMixedRequest; import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.LogoutPage; @@ -126,6 +127,7 @@ public final class Gigi extends HttpServlet { }); putPage("/", new MainPage(), null); putPage("/roots", new RootCertPage(truststore), "SomeCA.org"); + putPage("/about", new AboutPage(), "SomeCA.org"); putPage("/secure", new TestSecure(), null); putPage(Verify.PATH, new Verify(), null); diff --git a/src/org/cacert/gigi/pages/AboutPage.java b/src/org/cacert/gigi/pages/AboutPage.java new file mode 100644 index 00000000..0ab20111 --- /dev/null +++ b/src/org/cacert/gigi/pages/AboutPage.java @@ -0,0 +1,30 @@ +package org.cacert.gigi.pages; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.HashMap; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.cacert.gigi.util.AuthorizationContext; + +public class AboutPage extends Page { + + public AboutPage() { + super("About"); + } + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { + PrintWriter out = resp.getWriter(); + HashMap o = new HashMap<>(); + o.put("version", Package.getPackage("org.cacert.gigi").getImplementationVersion()); + getDefaultTemplate().output(out, getLanguage(req), o); + } + + @Override + public boolean isPermitted(AuthorizationContext ac) { + return true; + } +} diff --git a/src/org/cacert/gigi/pages/AboutPage.templ b/src/org/cacert/gigi/pages/AboutPage.templ new file mode 100644 index 00000000..eed6eb35 --- /dev/null +++ b/src/org/cacert/gigi/pages/AboutPage.templ @@ -0,0 +1 @@ + \ No newline at end of file -- 2.39.2