]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/account/DomainAddForm.java
ADD: Domain insert
[gigi.git] / src / org / cacert / gigi / pages / account / DomainAddForm.java
index da303a8d57761a79cb84247961d67de262613c51..1a2b61a015b9daa30f428ed59573896f37df1bb5 100644 (file)
@@ -5,21 +5,39 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.cacert.gigi.Domain;
+import org.cacert.gigi.GigiApiException;
 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.pages.Page;
 
 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);
+        this.target = target;
     }
 
     @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