From: Vásáry Dániel Date: Fri, 13 Jul 2018 08:24:48 +0000 (+0000) Subject: git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube... X-Git-Url: http://git.useribm.hu/?a=commitdiff_plain;h=22d9e99148eebbed84fe47667ccc691364d5d580;p=mediacube.git git-tfs-id: [tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31155 --- diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AdminAuthInitiator.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AdminAuthInitiator.java index 2d599fbd..8350e8d8 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AdminAuthInitiator.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AdminAuthInitiator.java @@ -2,19 +2,20 @@ package user.jobengine.zk.util; import java.util.Map; -import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.util.Initiator; +import user.jobengine.zk.model.IndexModel; + public class AdminAuthInitiator implements Initiator { @Override public void doInit(Page page, Map args) throws Exception { if (!SessionUtil.isAuthenticated()) - Executions.sendRedirect("/pages/login.jsp"); + IndexModel.redirect("/pages/login.jsp"); if (!SessionUtil.isAdmin()) - Executions.sendRedirect("/"); + IndexModel.redirect("/pages/access-denied.zul"); } } \ No newline at end of file diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AuthInitiator.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AuthInitiator.java index dad1518a..e0219ff8 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AuthInitiator.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AuthInitiator.java @@ -2,10 +2,11 @@ package user.jobengine.zk.util; import java.util.Map; -import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.util.Initiator; +import user.jobengine.zk.model.IndexModel; + /** * Ellenorzi, hogy van e beloginelt user, ha nincs, akkor -> login.zul Minden oldal belinkeli ezt az ellenorzest. */ @@ -13,7 +14,7 @@ public class AuthInitiator implements Initiator { @Override public void doInit(Page page, Map args) throws Exception { if (!SessionUtil.isAuthenticated()) - Executions.sendRedirect("/pages/login.jsp"); + IndexModel.redirect("/pages/login.jsp"); } } \ No newline at end of file diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SessionUtil.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SessionUtil.java index 5ab21734..8c713091 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SessionUtil.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SessionUtil.java @@ -2,6 +2,8 @@ package user.jobengine.zk.util; import java.io.FileInputStream; import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; import java.util.Properties; import javax.servlet.http.HttpSession; @@ -11,6 +13,8 @@ import org.apache.logging.log4j.Logger; import org.zkoss.zk.ui.Session; import org.zkoss.zk.ui.Sessions; +import com.ibm.nosql.json.api.BasicDBObject; + import user.jobengine.server.IJobChangedListener; import user.jobengine.server.JobEngine; @@ -21,6 +25,7 @@ public class SessionUtil { private static final String AUTH_LOCATION = "mediacube.auth.location"; public static final String JOBLISTENER = "joblistener"; public static final String MENUMODEL = "menuModel"; + public static final String HISTORY = "hitory"; public static boolean authenticate(String account, String password) { Properties cfg = getConfiguration(); @@ -105,7 +110,37 @@ public class SessionUtil { } public static void logout() { - setAttribute(SessionUtil.USERPRINCIPAL, null); + setAttribute(USERPRINCIPAL, null); + setAttribute(HISTORY, null); + cleanup(); + } + + @SuppressWarnings("unchecked") + static public BasicDBObject popHistory() { + List history = (List) getAttribute(HISTORY); + if (history == null) + return null; + + BasicDBObject result = null; + if (history.size() > 0) { + history.remove(history.size() - 1); + if (history.size() > 0) { + result = history.get(history.size() - 1); + history.remove(history.size() - 1); + } + } + + return result; + } + + @SuppressWarnings("unchecked") + static public void pushHistory(String action, String query, boolean useQueryString) { + List history = (List) getAttribute(HISTORY); + if (history == null) + history = new ArrayList<>(); + + setAttribute(HISTORY, history); + history.add(new BasicDBObject("action", action).append("query", query).append("useQueryString", useQueryString)); } static public void registerJobChangedListener(IJobChangedListener listener) { @@ -125,5 +160,4 @@ public class SessionUtil { if (session != null) session.setAttribute(name, obj); } - } \ No newline at end of file diff --git a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SubmitterAuthInitiator.java b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SubmitterAuthInitiator.java index 016ee584..e1aeffaa 100644 --- a/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SubmitterAuthInitiator.java +++ b/server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SubmitterAuthInitiator.java @@ -2,19 +2,20 @@ package user.jobengine.zk.util; import java.util.Map; -import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Page; import org.zkoss.zk.ui.util.Initiator; +import user.jobengine.zk.model.IndexModel; + public class SubmitterAuthInitiator implements Initiator { @Override public void doInit(Page page, Map args) throws Exception { if (!SessionUtil.isAuthenticated()) - Executions.sendRedirect("/pages/login.jsp"); + IndexModel.redirect("/pages/login.jsp"); if (!SessionUtil.isSubmitter()) - Executions.sendRedirect("/"); + IndexModel.redirect("/pages/access-denied.zul"); } } \ No newline at end of file