Login redirect javitasa
authorelgekko <vasary@elgekko.net>
Sat, 1 Apr 2023 19:20:49 +0000 (21:20 +0200)
committerelgekko <vasary@elgekko.net>
Sat, 1 Apr 2023 19:20:49 +0000 (21:20 +0200)
server/user.mediacube.gui/src/user/jobengine/zk/model/IndexModel.java
server/user.mediacube.gui/src/user/jobengine/zk/model/LoginModel.java
server/user.mediacube.gui/src/user/jobengine/zk/util/AuthInitiator.java

index 80786d2d5e9312145ccd0fb4ffe26c398874bbc9..bf9d5b07eaa08b75b3a522b7a544c417cbac7bb9 100644 (file)
@@ -28,8 +28,8 @@ import user.jobengine.zk.util.SessionUtil;
 public class IndexModel extends BaseModel {\r
        private static final Logger logger = LogManager.getLogger();\r
        private String page;\r
-       private Map<String, Object> pathMap = ListUtils.asMap("/", "searchitems", "jobs", "jobs", "missingmaterials", "missingmaterials", "newshistory",\r
-                       "newshistory", "edithistory", "edithistory", "statistics", "statistics", "maestro", "maestro", "pwdgen", "pwdgen");\r
+       private Map<String, Object> pathMap = ListUtils.asMap("/", "searchitems", "login", "login", "jobs", "jobs", "missingmaterials", "missingmaterials",\r
+                       "newshistory", "newshistory", "edithistory", "edithistory", "statistics", "statistics", "maestro", "maestro", "pwdgen", "pwdgen");\r
 \r
        @Wire\r
        Component appTitle;\r
index 09feb4ae57dc0a8ca831fb08168283e5a615338d..47f39a825f8203722976fb991661c7eaa17bbbb5 100644 (file)
@@ -1,5 +1,7 @@
 package user.jobengine.zk.model;\r
 \r
+import java.util.Arrays;\r
+\r
 import org.apache.commons.lang.StringUtils;\r
 import org.zkoss.bind.annotation.AfterCompose;\r
 import org.zkoss.bind.annotation.Command;\r
@@ -21,7 +23,12 @@ public class LoginModel extends BaseModel {
 \r
        @AfterCompose\r
        public void afterCompose(@ContextParam(ContextType.VIEW) Component view) {\r
-               query = SessionUtil.getQueryString();\r
+               String action = Executions.getCurrent().getParameter("action");\r
+               if ("login".equals(action)) {\r
+                       query = SessionUtil.getQueryString(Arrays.asList("action"));\r
+               } else {\r
+                       query = SessionUtil.getQueryString();\r
+               }\r
 \r
                MediaCubeConfig mediaCubeConfig = SessionUtil.getMediaCubeConfig();\r
                MediaCubeAuthentication authentication = mediaCubeConfig.getAuthentication();\r
index 24a10be9b3835d6f7f3bc6b60ab9527fb7e8963c..6cbfa63a58e40a7309d0f965632c053058867943 100644 (file)
@@ -17,9 +17,15 @@ import org.zkoss.zk.ui.util.Initiator;
 public class AuthInitiator implements Initiator {\r
        @Override\r
        public void doInit(Page page, Map<String, Object> args) throws Exception {\r
+               HttpServletRequest request = (HttpServletRequest) Executions.getCurrent().getNativeRequest();\r
+               String action = request.getParameter("action");\r
+               if ("login".equals(action)) {\r
+                       return;\r
+               }\r
+\r
                if (!SessionUtil.isAuthenticated()) {\r
 \r
-                       Cookie[] cookies = ((HttpServletRequest) Executions.getCurrent().getNativeRequest()).getCookies();\r
+                       Cookie[] cookies = request.getCookies();\r
                        Optional<Cookie> clientTheme = Arrays.stream(cookies).filter(c -> "mediacube-theme".equals(c.getName())).findFirst();\r
                        String theme = null;\r
                        if (clientTheme.isPresent()) {\r
@@ -28,7 +34,7 @@ public class AuthInitiator implements Initiator {
                                theme = SessionUtil.getMediaCubeConfig().getTheme() == null ? "silvertail" : SessionUtil.getMediaCubeConfig().getTheme();\r
                        }\r
                        SessionUtil.applyTheme(theme);\r
-                       SessionUtil.redirect("/pages/login.zul");\r
+                       SessionUtil.redirect("/actions/login");\r
                }\r
        }\r
 \r