- if (hs == null || !((Boolean) hs.getAttribute("loggedin"))) {
- resp.setContentType("text/html");
- resp.getWriter().println("Access denied. Sending login form.");
- resp.getWriter()
- .println(
- "<form method='POST' action='/login'>"
- + "<input type='text' name='username'>"
- + "<input type='password' name='password'> <input type='submit' value='login'></form>");
- return;
+ if (pages.containsKey(req.getPathInfo())) {
+ Page p = pages.get(req.getPathInfo());
+ if (p.needsLogin() && hs.getAttribute("loggedin") == null) {
+ resp.sendRedirect("/login");
+ return;
+ }
+
+ String b0 = baseTemplate[0];
+ b0 = makeDynTempl(b0, p);
+ resp.setContentType("text/html; charset=utf-8");
+ resp.getWriter().print(b0);
+ 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);
+ } else {
+ resp.sendError(404, "Page not found.");