]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/admin/support/FindDomainPage.java
upd: Cleanup lang-string locations
[gigi.git] / src / org / cacert / gigi / pages / admin / support / FindDomainPage.java
index acff64631cac15042af139f4287cd646c1e88505..06d41621def5495df91c8c4a5ce923fa600da601 100644 (file)
@@ -1,6 +1,8 @@
 package org.cacert.gigi.pages.admin.support;
 
-import org.cacert.gigi.dbObjects.Group;
+import org.cacert.gigi.dbObjects.CertificateOwner;
+import org.cacert.gigi.dbObjects.Organisation;
+import org.cacert.gigi.dbObjects.User;
 import org.cacert.gigi.output.template.Form;
 import org.cacert.gigi.pages.OneFormPage;
 import org.cacert.gigi.util.AuthorizationContext;
@@ -9,17 +11,24 @@ public class FindDomainPage extends OneFormPage {
 
     public static final String PATH = "/support/find/domain";
 
-    public FindDomainPage(String title) {
-        super(title, FindDomainForm.class);
+    public FindDomainPage() {
+        super("Find Domain", FindDomainForm.class);
     }
 
     @Override
     public String getSuccessPath(Form f) {
-        return SupportUserDetailsPage.PATH + ((FindDomainForm) f).getUserId();
+        CertificateOwner res = ((FindDomainForm) f).getRes();
+        if (res instanceof User) {
+            return SupportUserDetailsPage.PATH + res.getId();
+        } else if (res instanceof Organisation) {
+            return "/support/domain/" + res.getId();
+        } else {
+            throw new Error("Unknown owner type.");
+        }
     }
 
     @Override
     public boolean isPermitted(AuthorizationContext ac) {
-        return ac != null && ac.isInGroup(Group.SUPPORTER);
+        return ac != null && ac.canSupport();
     }
 }