- public boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException {
- o.addAdmin(User.getByEmail(req.getParameter("email")), LoginPage.getUser(req), req.getParameter("master") != null);
- return true;
+ public boolean submit(HttpServletRequest req) throws GigiApiException {
+ 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;
+ } else {
+ throw new GigiApiException("Requested user is not a RA Agent. We need a RA Agent here.");
+ }
+ }
+ throw new GigiApiException("No action could have been carried out.");