]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/account/MailAddForm.java
Add mail: relocate actions into form.
[gigi.git] / src / org / cacert / gigi / pages / account / MailAddForm.java
index 543dff147e7205494fd49d01816d41c9ea3dd3b6..bdbf0a39602be9d109014b9c5541994cd432d8b6 100644 (file)
@@ -5,10 +5,14 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.cacert.gigi.EmailAddress;
 import org.cacert.gigi.Language;
+import org.cacert.gigi.User;
 import org.cacert.gigi.email.EmailProvider;
 import org.cacert.gigi.output.Form;
 import org.cacert.gigi.output.template.Template;
+import org.cacert.gigi.pages.Page;
+import org.cacert.gigi.util.RandomToken;
 
 public class MailAddForm extends Form {
        private static Template t;
@@ -16,9 +20,11 @@ public class MailAddForm extends Form {
        static {
                t = new Template(ChangePasswordPage.class.getResource("MailAddForm.templ"));
        }
+       User target;
 
-       public MailAddForm(HttpServletRequest hsr) {
+       public MailAddForm(HttpServletRequest hsr, User target) {
                super(hsr);
+               this.target = target;
        }
 
        @Override
@@ -30,13 +36,11 @@ public class MailAddForm extends Form {
                        return false;
                }
                mail = formMail;
+               EmailAddress addr = new EmailAddress(mail, target, RandomToken.generateToken(16));
+               addr.insert(Page.getLanguage(req));
                return true;
        }
 
-       public String getMail() {
-               return mail;
-       }
-
        @Override
        protected void outputContent(PrintWriter out, Language l, Map<String, Object> vars) {
                t.output(out, l, vars);