From: Felix Dörre Date: Wed, 11 Nov 2015 09:15:03 +0000 (+0100) Subject: upd: history also for organisations. X-Git-Url: https://code.wpia.club/?p=gigi.git;a=commitdiff_plain;h=330e2b7a3c2e525fee83ee5392df483e1be1f399 upd: history also for organisations. --- diff --git a/src/org/cacert/gigi/Gigi.java b/src/org/cacert/gigi/Gigi.java index 9dde23a9..f558a6e4 100644 --- a/src/org/cacert/gigi/Gigi.java +++ b/src/org/cacert/gigi/Gigi.java @@ -43,7 +43,7 @@ import org.cacert.gigi.pages.TestSecure; import org.cacert.gigi.pages.Verify; import org.cacert.gigi.pages.account.ChangePasswordPage; import org.cacert.gigi.pages.account.MyDetails; -import org.cacert.gigi.pages.account.UserHistory; +import org.cacert.gigi.pages.account.History; import org.cacert.gigi.pages.account.UserTrainings; import org.cacert.gigi.pages.account.certs.CertificateAdd; import org.cacert.gigi.pages.account.certs.Certificates; @@ -149,8 +149,8 @@ public class Gigi extends HttpServlet { putPage(FindDomainPage.PATH, new FindDomainPage("Find Domain"), "Support Console"); putPage(SupportUserDetailsPage.PATH + "*", new SupportUserDetailsPage("Support: User Details"), null); - putPage(UserHistory.PATH, new UserHistory(false), "My Account"); - putPage(UserHistory.SUPPORT_PATH, new UserHistory(true), null); + putPage(History.PATH, new History(false), "My Account"); + putPage(History.SUPPORT_PATH, new History(true), null); putPage(UserTrainings.PATH, new UserTrainings(false), "My Account"); putPage(UserTrainings.SUPPORT_PATH, new UserTrainings(true), null); if (testing) { diff --git a/src/org/cacert/gigi/dbObjects/CertificateOwner.java b/src/org/cacert/gigi/dbObjects/CertificateOwner.java index 661033fb..f9e9fbd5 100644 --- a/src/org/cacert/gigi/dbObjects/CertificateOwner.java +++ b/src/org/cacert/gigi/dbObjects/CertificateOwner.java @@ -1,6 +1,7 @@ package org.cacert.gigi.dbObjects; import java.util.LinkedList; +import java.util.List; import org.cacert.gigi.database.DatabaseConnection; import org.cacert.gigi.database.GigiPreparedStatement; @@ -103,4 +104,17 @@ public abstract class CertificateOwner implements IdCachable { myCache.remove(this); } + public String[] getAdminLog() { + GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("SELECT `when`, type, information FROM `adminLog` WHERE uid=? ORDER BY `when` ASC"); + prep.setInt(1, getId()); + GigiResultSet res = prep.executeQuery(); + List entries = new LinkedList(); + + while (res.next()) { + entries.add(res.getString(2) + " (" + res.getString(3) + ")"); + } + + return entries.toArray(new String[0]); + } + } diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index f1200233..72c26c23 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -469,19 +469,6 @@ public class User extends CertificateOwner { return false; } - public String[] getAdminLog() { - GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("SELECT `when`, type, information FROM `adminLog` WHERE uid=? ORDER BY `when` ASC"); - prep.setInt(1, getId()); - GigiResultSet res = prep.executeQuery(); - List entries = new LinkedList(); - - while (res.next()) { - entries.add(res.getString(2) + " (" + res.getString(3) + ")"); - } - - return entries.toArray(new String[0]); - } - public String[] getTrainings() { GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("SELECT `pass_date`, `type_text` FROM `cats_passed` LEFT JOIN `cats_type` ON `cats_type`.`id`=`cats_passed`.`variant_id` WHERE `user_id`=? ORDER BY `pass_date` ASC"); prep.setInt(1, getId()); diff --git a/src/org/cacert/gigi/pages/account/UserHistory.java b/src/org/cacert/gigi/pages/account/History.java similarity index 82% rename from src/org/cacert/gigi/pages/account/UserHistory.java rename to src/org/cacert/gigi/pages/account/History.java index 53e81a23..520e3a54 100644 --- a/src/org/cacert/gigi/pages/account/UserHistory.java +++ b/src/org/cacert/gigi/pages/account/History.java @@ -6,12 +6,14 @@ import java.util.HashMap; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.cacert.gigi.dbObjects.CertificateOwner; import org.cacert.gigi.dbObjects.User; import org.cacert.gigi.output.template.OutputableArrayIterable; +import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.Page; import org.cacert.gigi.util.AuthorizationContext; -public class UserHistory extends Page { +public class History extends Page { public static final String SUPPORT_PATH = "/support/user/*/history"; @@ -21,14 +23,14 @@ public class UserHistory extends Page { private boolean support; - public UserHistory(boolean support) { - super(support ? "Support user history" : "History"); + public History(boolean support) { + super(support ? "Support History" : "History"); this.support = support; } @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { - User u; + CertificateOwner u; if (support) { String info = req.getPathInfo(); int id = Integer.parseInt(info.substring(intStart, info.length() - SUPPORT_PATH.length() + intStart + 1)); @@ -38,7 +40,7 @@ public class UserHistory extends Page { return; } } else { - u = getUser(req); + u = LoginPage.getAuthorizationContext(req).getTarget(); } String[] adminLog = u.getAdminLog(); HashMap vars = new HashMap<>(); diff --git a/src/org/cacert/gigi/pages/account/UserHistory.templ b/src/org/cacert/gigi/pages/account/History.templ similarity index 100% rename from src/org/cacert/gigi/pages/account/UserHistory.templ rename to src/org/cacert/gigi/pages/account/History.templ diff --git a/tests/org/cacert/gigi/pages/admin/TestSEAdminPageDetails.java b/tests/org/cacert/gigi/pages/admin/TestSEAdminPageDetails.java index b554a2c3..3cb78b9a 100644 --- a/tests/org/cacert/gigi/pages/admin/TestSEAdminPageDetails.java +++ b/tests/org/cacert/gigi/pages/admin/TestSEAdminPageDetails.java @@ -12,7 +12,7 @@ import java.util.regex.Pattern; import org.cacert.gigi.dbObjects.Group; import org.cacert.gigi.pages.account.MyDetails; -import org.cacert.gigi.pages.account.UserHistory; +import org.cacert.gigi.pages.account.History; import org.cacert.gigi.pages.admin.support.SupportEnterTicketPage; import org.cacert.gigi.pages.admin.support.SupportUserDetailsPage; import org.cacert.gigi.testUtils.ClientTest; @@ -104,11 +104,11 @@ public class TestSEAdminPageDetails extends ClientTest { } private int logCountAdmin(int id) throws IOException { - return getLogEntryCount(IOUtils.readURL(get(UserHistory.SUPPORT_PATH.replace("*", Integer.toString(id))))); + return getLogEntryCount(IOUtils.readURL(get(History.SUPPORT_PATH.replace("*", Integer.toString(id))))); } private int logCountUser(String cookie) throws IOException { - return getLogEntryCount(IOUtils.readURL(get(cookie, UserHistory.PATH))); + return getLogEntryCount(IOUtils.readURL(get(cookie, History.PATH))); } private int getLogEntryCount(String readURL) {