]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/admin/support/SupportEnterTicketForm.java
add: add boolean to separate groups for user and support
[gigi.git] / src / org / cacert / gigi / pages / admin / support / SupportEnterTicketForm.java
index 6357977c5ef50ab20ded50d1334ff7921fd1e80b..18afc0c662279ccf76ca0fd503e57693220c4272 100644 (file)
@@ -5,17 +5,17 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.cacert.gigi.Gigi;
 import org.cacert.gigi.GigiApiException;
 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;
-    static {
-        t = new Template(SupportEnterTicketForm.class.getResource("SupportEnterTicketForm.templ"));
-    }
+    private static final Template t = new Template(SupportEnterTicketForm.class.getResource("SupportEnterTicketForm.templ"));
 
     public SupportEnterTicketForm(HttpServletRequest hsr) {
         super(hsr);
@@ -23,6 +23,20 @@ public class SupportEnterTicketForm extends Form {
 
     @Override
     public boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException {
+        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;
     }