]> WPIA git - gigi.git/commitdiff
ADD: Domain insert
authorJanis Streib <janis@dogcraft.de>
Tue, 29 Jul 2014 22:34:23 +0000 (00:34 +0200)
committerJanis Streib <janis@dogcraft.de>
Tue, 29 Jul 2014 22:34:23 +0000 (00:34 +0200)
src/org/cacert/gigi/pages/account/DomainAddForm.java
src/org/cacert/gigi/pages/account/DomainOverview.java

index da303a8d57761a79cb84247961d67de262613c51..1a2b61a015b9daa30f428ed59573896f37df1bb5 100644 (file)
@@ -5,21 +5,39 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.cacert.gigi.Domain;
+import org.cacert.gigi.GigiApiException;
 import org.cacert.gigi.Language;
 import org.cacert.gigi.Language;
+import org.cacert.gigi.User;
 import org.cacert.gigi.output.Form;
 import org.cacert.gigi.output.template.Template;
 import org.cacert.gigi.output.Form;
 import org.cacert.gigi.output.template.Template;
+import org.cacert.gigi.pages.Page;
 
 public class DomainAddForm extends Form {
 
     private static final Template t = new Template(DomainManagementForm.class.getResource("DomainAddForm.templ"));
 
 
 public class DomainAddForm extends Form {
 
     private static final Template t = new Template(DomainManagementForm.class.getResource("DomainAddForm.templ"));
 
-    public DomainAddForm(HttpServletRequest hsr) {
+    private User target;
+
+    public DomainAddForm(HttpServletRequest hsr, User target) {
         super(hsr);
         super(hsr);
+        this.target = target;
     }
 
     @Override
     public boolean submit(PrintWriter out, HttpServletRequest req) {
     }
 
     @Override
     public boolean submit(PrintWriter out, HttpServletRequest req) {
-        return false;
+        try {
+            String parameter = req.getParameter("newdomain");
+            if (parameter.trim().isEmpty()) {
+                throw new GigiApiException("No domain inserted.");
+            }
+            Domain d = new Domain(target, parameter);
+            d.insert();
+            return true;
+        } catch (GigiApiException e) {
+            e.format(out, Page.getLanguage(req));
+            return false;
+        }
     }
 
     @Override
     }
 
     @Override
index e80fff1b35bf32225f173315b1405b3833dd234f..cff8b28a7fd48230126f25d3e49456c5e6d969f1 100644 (file)
@@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.cacert.gigi.User;
 import javax.servlet.http.HttpServletResponse;
 
 import org.cacert.gigi.User;
+import org.cacert.gigi.output.Form;
 import org.cacert.gigi.pages.Page;
 
 public class DomainOverview extends Page {
 import org.cacert.gigi.pages.Page;
 
 public class DomainOverview extends Page {
@@ -21,7 +22,7 @@ public class DomainOverview extends Page {
     public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
         User u = getUser(req);
         DomainManagementForm domMan = new DomainManagementForm(req);
     public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
         User u = getUser(req);
         DomainManagementForm domMan = new DomainManagementForm(req);
-        DomainAddForm domAdd = new DomainAddForm(req);
+        DomainAddForm domAdd = new DomainAddForm(req, u);
         HashMap<String, Object> vars = new HashMap<>();
         vars.put("doms", u.getDomains());
         vars.put("domainman", domMan);
         HashMap<String, Object> vars = new HashMap<>();
         vars.put("doms", u.getDomains());
         vars.put("domainman", domMan);
@@ -29,4 +30,15 @@ public class DomainOverview extends Page {
         getDefaultTemplate().output(resp.getWriter(), getLanguage(req), vars);
     }
 
         getDefaultTemplate().output(resp.getWriter(), getLanguage(req), vars);
     }
 
+    @Override
+    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
+        if (req.getParameter("adddomain") != null) {
+            DomainAddForm f = Form.getForm(req, DomainAddForm.class);
+            f.submit(resp.getWriter(), req);
+        } else if (req.getParameter("") != null) {
+            DomainManagementForm f = Form.getForm(req, DomainManagementForm.class);
+            f.submit(resp.getWriter(), req);
+        }
+        super.doPost(req, resp);
+    }
 }
 }