]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/util/AuthorizationContext.java
Merge "upd: Cleanup lang-string locations"
[gigi.git] / src / org / cacert / gigi / util / AuthorizationContext.java
index 16f458cafd09d934d29686acfab91ce4caac0a80..6e4bd8bf4c1ec885f51ccf7f7caa661f568e6231 100644 (file)
@@ -24,6 +24,15 @@ public class AuthorizationContext implements Outputable {
         this.actor = actor;
     }
 
+    public AuthorizationContext(User actor, String supporterTicket) throws GigiApiException {
+        this.target = actor;
+        this.actor = actor;
+        if ( !isInGroup(Group.SUPPORTER)) {
+            throw new GigiApiException("requires a supporter");
+        }
+        supporterTicketId = supporterTicket;
+    }
+
     public CertificateOwner getTarget() {
         return target;
     }
@@ -43,13 +52,6 @@ public class AuthorizationContext implements Outputable {
         return ac.getActor();
     }
 
-    public void setSupporterTicketId(String supporterTicketId) throws GigiApiException {
-        if ( !isInGroup(Group.SUPPORTER)) {
-            throw new GigiApiException("requires a supporter");
-        }
-        this.supporterTicketId = supporterTicketId;
-    }
-
     public String getSupporterTicketId() {
         return supporterTicketId;
     }
@@ -71,13 +73,18 @@ public class AuthorizationContext implements Outputable {
         }
 
         out.println(l.getTranslation("with"));
-        out.println(vars.get("loginMethod"));
+        ((Outputable) vars.get("loginMethod")).output(out, l, vars);
+        out.println();
         out.println("</div>");
         if (supporterTicketId != null) {
             out.println("<div>");
             out.println(l.getTranslation("SupportTicket: "));
-            out.println(supporterTicketId);
+            out.println(HTMLEncoder.encodeHTML(supporterTicketId));
             out.println("</div>");
         }
     }
+
+    public boolean canAssure() {
+        return target instanceof User && ((User) target).canAssure();
+    }
 }