X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Foutput%2Ftemplate%2FForm.java;h=ed1a86689cd261b95aa03807e56eb40d8dd11f29;hb=5abdbde7dc99a8de4ba7257d5ef1ad387f346e02;hp=f469c21c68bf53080d4f40863cb1e67a85dedc36;hpb=cd14b85c60f736a643842b421b11f41d8fca86c7;p=gigi.git diff --git a/src/org/cacert/gigi/output/template/Form.java b/src/org/cacert/gigi/output/template/Form.java index f469c21c..ed1a8668 100644 --- a/src/org/cacert/gigi/output/template/Form.java +++ b/src/org/cacert/gigi/output/template/Form.java @@ -17,13 +17,19 @@ public abstract class Form implements Outputable { public static final String CSRF_FIELD = "csrf"; - private String csrf; + private final String csrf; + + private final String action; public Form(HttpServletRequest hsr) { + this(hsr, null); + } + + public Form(HttpServletRequest hsr, String action) { csrf = RandomToken.generateToken(32); + this.action = action; HttpSession hs = hsr.getSession(); hs.setAttribute("form/" + getClass().getName() + "/" + csrf, this); - } public abstract boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException; @@ -34,7 +40,11 @@ public abstract class Form implements Outputable { @Override public void output(PrintWriter out, Language l, Map vars) { - out.println("
"); + if (action == null) { + out.println(""); + } else { + out.println(""); + } failed = false; outputContent(out, l, vars); out.print("