X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMailManagementForm.java;h=9dc6c8daf3392d2ef2a2656a90509b66d37bca52;hb=2233a655b4ef4c1122a406e83a0e6334b9fd49b6;hp=0eaa16cbb25c3b430dbbf5a1c5a4159f81e4e607;hpb=590ed6b59f95c729f7f9f797a20fb11e18d77d61;p=gigi.git diff --git a/src/org/cacert/gigi/pages/account/MailManagementForm.java b/src/org/cacert/gigi/pages/account/MailManagementForm.java index 0eaa16cb..9dc6c8da 100644 --- a/src/org/cacert/gigi/pages/account/MailManagementForm.java +++ b/src/org/cacert/gigi/pages/account/MailManagementForm.java @@ -5,22 +5,57 @@ 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.output.Form; import org.cacert.gigi.output.template.Template; public class MailManagementForm extends Form { private static Template t; + private User target; static { t = new Template(ChangePasswordPage.class.getResource("MailManagementForm.templ")); } - public MailManagementForm(HttpServletRequest hsr) { + public MailManagementForm(HttpServletRequest hsr, User target) { super(hsr); + this.target = target; } @Override public boolean submit(PrintWriter out, HttpServletRequest req) { + if (req.getParameter("makedefault") != null) { + try { + String mailid = req.getParameter("emailid"); + if (mailid == null) { + return false; + } + target.updateDefaultEmail(EmailAddress.getById(Integer.parseInt(mailid.trim()))); + } catch (Exception e) { + out.println("
Error precessing your request.
"); + e.printStackTrace(); + return false; + } + return true; + } + if (req.getParameter("delete") != null) { + String[] toDel = req.getParameterValues("delid[]"); + if (toDel == null) { + return false; + } + for (int i = 0; i < toDel.length; i++) { + try { + target.deleteEmail(EmailAddress.getById(Integer.parseInt(toDel[i].trim()))); + } catch (Exception e) { + out.println("
Error precessing your request.
"); + e.printStackTrace(); + return false; + } + } + return true; + + } return false; }