1 package org.cacert.gigi.pages.main;
3 import java.io.IOException;
4 import java.util.HashMap;
6 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse;
9 import org.cacert.gigi.output.template.Form;
10 import org.cacert.gigi.pages.Page;
11 import org.cacert.gigi.util.AuthorizationContext;
12 import org.cacert.gigi.util.RateLimit;
14 public class RegisterPage extends Page {
16 public static final String PATH = "/register";
19 public static final RateLimit RATE_LIMIT = new RateLimit(50, 5 * 60 * 1000);
21 public RegisterPage() {
26 public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
27 Signup s = new Signup(req);
28 outputGet(req, resp, s);
31 private void outputGet(HttpServletRequest req, HttpServletResponse resp, Signup s) throws IOException {
32 getDefaultTemplate().output(resp.getWriter(), getLanguage(req), new HashMap<String, Object>());
33 s.output(resp.getWriter(), getLanguage(req), new HashMap<String, Object>());
37 public boolean beforePost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
38 return Form.getForm(req, Signup.class).submitExceptionProtected(req, resp);
42 public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
43 if (Form.printFormErrors(req, resp.getWriter())) {
44 Signup s = Form.getForm(req, Signup.class);
45 outputGet(req, resp, s);
50 public boolean needsLogin() {
55 public boolean isPermitted(AuthorizationContext ac) {