]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/orga/CreateOrgPage.java
upd: enforce a more strict Form call pattern.
[gigi.git] / src / org / cacert / gigi / pages / orga / CreateOrgPage.java
index f1e8ea6a39274e5257e586bb0d50078fa7bf7d1f..17d2a318a519296adc73766ed5e4ab05f3e9d224 100644 (file)
@@ -6,38 +6,23 @@ import java.util.HashMap;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.cacert.gigi.GigiApiException;
 import org.cacert.gigi.dbObjects.Group;
-import org.cacert.gigi.dbObjects.User;
-import org.cacert.gigi.output.template.Form;
-import org.cacert.gigi.pages.Page;
+import org.cacert.gigi.pages.ManagedFormPage;
+import org.cacert.gigi.util.AuthorizationContext;
 
-public class CreateOrgPage extends Page {
+public class CreateOrgPage extends ManagedFormPage {
 
-    public static final Group ORG_ASSURER = Group.getByString("orgassurer");
+    public static final Group ORG_ASSURER = Group.ORGASSURER;
 
     public static final String DEFAULT_PATH = "/orga/new";
 
     public CreateOrgPage() {
-        super("Create Organisation");
+        super("Create Organisation", CreateOrgForm.class);
     }
 
     @Override
-    public boolean isPermitted(User u) {
-        return u != null && u.isInGroup(ORG_ASSURER);
-    }
-
-    @Override
-    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
-        try {
-            CreateOrgForm form = Form.getForm(req, CreateOrgForm.class);
-            if (form.submit(resp.getWriter(), req)) {
-                resp.sendRedirect(ViewOrgPage.DEFAULT_PATH + "/" + form.getResult().getId());
-                return;
-            }
-        } catch (GigiApiException e) {
-            e.format(resp.getWriter(), getLanguage(req));
-        }
+    public boolean isPermitted(AuthorizationContext ac) {
+        return ac != null && ac.isInGroup(ORG_ASSURER);
     }
 
     @Override