X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Fadmin%2Fsupport%2FSupportEnterTicketForm.java;h=18afc0c662279ccf76ca0fd503e57693220c4272;hb=d46bd087fcf633dc2bccecbce63108011da33871;hp=5db93f30960df3c03c1bdbe4b349b2b7f30871ee;hpb=ec24cf6925bb3729a644580ad4a9375d05883c62;p=gigi.git diff --git a/src/org/cacert/gigi/pages/admin/support/SupportEnterTicketForm.java b/src/org/cacert/gigi/pages/admin/support/SupportEnterTicketForm.java index 5db93f30..18afc0c6 100644 --- a/src/org/cacert/gigi/pages/admin/support/SupportEnterTicketForm.java +++ b/src/org/cacert/gigi/pages/admin/support/SupportEnterTicketForm.java @@ -5,32 +5,36 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; +import org.cacert.gigi.Gigi; import org.cacert.gigi.GigiApiException; -import org.cacert.gigi.dbObjects.User; import org.cacert.gigi.localisation.Language; import org.cacert.gigi.output.template.Form; import org.cacert.gigi.output.template.Template; +import org.cacert.gigi.pages.LoginPage; +import org.cacert.gigi.util.AuthorizationContext; public class SupportEnterTicketForm extends Form { - private static Template t; + private static final Template t = new Template(SupportEnterTicketForm.class.getResource("SupportEnterTicketForm.templ")); - private User target; - static { - t = new Template(SupportEnterTicketForm.class.getResource("SupportEnterTicketForm.templ")); - } - - public SupportEnterTicketForm(HttpServletRequest hsr, User target) { + public SupportEnterTicketForm(HttpServletRequest hsr) { super(hsr); - this.target = target; } @Override public boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException { - // [asdmASDM]\d{8}\.\d+ - String ticket = req.getParameter("ticketno"); - if (ticket.matches("[asdmASDM]\\d{8}\\.\\d+")) { - req.getSession().setAttribute("ticketNo" + target.getId(), ticket); + if (req.getParameter("setTicket") != null) { + // [asdmASDM]\d{8}\.\d+ + String ticket = req.getParameter("ticketno"); + if (ticket.matches("[asdmASDM]\\d{8}\\.\\d+")) { + AuthorizationContext ac = LoginPage.getAuthorizationContext(req); + req.getSession().setAttribute(Gigi.AUTH_CONTEXT, new AuthorizationContext(ac.getActor(), ticket)); + return true; + } + return false; + } else if (req.getParameter("deleteTicket") != null) { + AuthorizationContext ac = LoginPage.getAuthorizationContext(req); + req.getSession().setAttribute(Gigi.AUTH_CONTEXT, new AuthorizationContext(ac.getActor(), ac.getActor())); return true; } return false;