X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Forga%2FAffiliationForm.java;h=ad988895b351d5c26e375813257ba881cbf5639c;hb=95840660b28dce27a38ed7de0b66634ec7f38ba2;hp=b9a42e7acbfc368d7badc2ca593678e18f42fbcc;hpb=6e68a37137bfb773a9eae63fb756e881644fafae;p=gigi.git diff --git a/src/org/cacert/gigi/pages/orga/AffiliationForm.java b/src/org/cacert/gigi/pages/orga/AffiliationForm.java index b9a42e7a..ad988895 100644 --- a/src/org/cacert/gigi/pages/orga/AffiliationForm.java +++ b/src/org/cacert/gigi/pages/orga/AffiliationForm.java @@ -12,10 +12,11 @@ import org.cacert.gigi.dbObjects.Organisation; import org.cacert.gigi.dbObjects.Organisation.Affiliation; import org.cacert.gigi.dbObjects.User; import org.cacert.gigi.localisation.Language; -import org.cacert.gigi.output.Form; +import org.cacert.gigi.output.template.Form; import org.cacert.gigi.output.template.IterableDataset; import org.cacert.gigi.output.template.Template; import org.cacert.gigi.pages.LoginPage; +import org.cacert.gigi.pages.Page; public class AffiliationForm extends Form { @@ -30,16 +31,21 @@ public class AffiliationForm extends Form { @Override public boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException { - User toRemove = User.getByEmail(req.getParameter("del")); - if (toRemove != null) { - o.removeAdmin(toRemove, LoginPage.getUser(req)); - } - - User byEmail = User.getByEmail(req.getParameter("email")); - if (byEmail != null) { - o.addAdmin(byEmail, LoginPage.getUser(req), req.getParameter("master") != null); + if (req.getParameter("del") != null) { + User toRemove = User.getByEmail(req.getParameter("del")); + if (toRemove != null) { + o.removeAdmin(toRemove, LoginPage.getUser(req)); + return true; + } + } else if (req.getParameter("do_affiliate") != null) { + User byEmail = User.getByEmail(req.getParameter("email")); + if (byEmail != null && byEmail.canAssure()) { + o.addAdmin(byEmail, LoginPage.getUser(req), req.getParameter("master") != null); + return true; + } } - return true; + out.println(Page.getLanguage(req).getTranslation("No action could have been carried out.")); + return false; } @Override @@ -51,8 +57,9 @@ public class AffiliationForm extends Form { @Override public boolean next(Language l, Map vars) { - if ( !iter.hasNext()) + if ( !iter.hasNext()) { return false; + } Affiliation aff = iter.next(); vars.put("name", aff.getTarget().getName()); vars.put("master", aff.isMaster() ? l.getTranslation("master") : "");