]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/account/MailAddForm.java
Merge remote-tracking branch 'origin/emailMgmt'
[gigi.git] / src / org / cacert / gigi / pages / account / MailAddForm.java
index bdbf0a39602be9d109014b9c5541994cd432d8b6..14f5ddba245cc6faa6eed06c86307dc716e17b1c 100644 (file)
@@ -8,11 +8,9 @@ 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;
@@ -30,14 +28,14 @@ public class MailAddForm extends Form {
        @Override
        public boolean submit(PrintWriter out, HttpServletRequest req) {
                String formMail = req.getParameter("newemail");
-               if (!EmailProvider.MAIL.matcher(formMail).matches()) {
-                       // TODO Proper error output (css, maybe abstract)
-                       out.println("<b>Error: Invalid address!</b>");
+               mail = formMail;
+               try {
+                       EmailAddress addr = new EmailAddress(mail, target);
+                       addr.insert(Page.getLanguage(req));
+               } catch (IllegalArgumentException e) {
+                       out.println("<div class='formError'>Error: Invalid address!</div>");
                        return false;
                }
-               mail = formMail;
-               EmailAddress addr = new EmailAddress(mail, target, RandomToken.generateToken(16));
-               addr.insert(Page.getLanguage(req));
                return true;
        }