X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FGigi.java;h=6ca25d7d9e49a373f20ce38b6de866dd71f9e6d3;hb=e11f39ada6c4a32e6cd77a47bb876666a2918db9;hp=8fbdbc22b71e06ded2748347f76331b685e0ac22;hpb=457c7c1aeadfb4145572ec1155603ae4bebfedd3;p=gigi.git diff --git a/src/org/cacert/gigi/Gigi.java b/src/org/cacert/gigi/Gigi.java index 8fbdbc22..6ca25d7d 100644 --- a/src/org/cacert/gigi/Gigi.java +++ b/src/org/cacert/gigi/Gigi.java @@ -59,14 +59,14 @@ public class Gigi extends HttpServlet { throws ServletException, IOException { X509Certificate[] cert = (X509Certificate[]) req .getAttribute("javax.servlet.request.X509Certificate"); - HttpSession hs = req.getSession(false); - if (hs == null || hs.getAttribute(LOGGEDIN) == null) { + HttpSession hs = req.getSession(); + if (hs.getAttribute(LOGGEDIN) == null) { if (cert != null) { tryAuthWithCertificate(req, cert[0]); - hs = req.getSession(false); + hs = req.getSession(); } } - if (hs != null && ((Boolean) hs.getAttribute("loggedin")) + if (hs.getAttribute("loggedin") != null && req.getPathInfo().equals("/login")) { resp.sendRedirect("/"); return; @@ -86,7 +86,7 @@ public class Gigi extends HttpServlet { return; } - if ((hs == null || !((Boolean) hs.getAttribute("loggedin"))) + if (hs.getAttribute("loggedin") == null && !"/login".equals(req.getPathInfo())) { System.out.println(req.getPathInfo()); resp.sendRedirect("/login"); @@ -96,13 +96,17 @@ public class Gigi extends HttpServlet { String b0 = baseTemplate[0]; Page p = pages.get(req.getPathInfo()); b0 = makeDynTempl(b0, p); - resp.setContentType("text/html"); + resp.setContentType("text/html; charset=utf-8"); resp.getWriter().print(b0); if (hs != null && hs.getAttribute(LOGGEDIN) != null) { resp.getWriter().println( "Hi " + ((User) hs.getAttribute(USER)).getFname()); } - p.doGet(req, resp); + if (req.getMethod().equals("POST")) { + p.doPost(req, resp); + } else { + p.doGet(req, resp); + } String b1 = baseTemplate[1]; b1 = makeDynTempl(b1, p); resp.getWriter().print(b1);