git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Fri, 13 Jul 2018 13:26:24 +0000 (13:26 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Fri, 13 Jul 2018 13:26:24 +0000 (13:26 +0000)
server/user.jobengine.osgi.server/index.jsp
server/user.jobengine.osgi.server/pages/mediaplayer.jsp
server/user.jobengine.osgi.server/pages/searchitems.zul
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/IndexModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/LoginModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/MenuModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/model/SearchModel.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AdminAuthInitiator.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/util/AuthInitiator.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SessionUtil.java
server/user.jobengine.osgi.server/src/user/jobengine/zk/util/SubmitterAuthInitiator.java

index 07d462549162af6983e3ea3dbf908fb4c3cf7303..985886f6a3922b6cb775c9b07d7e48dcf0816192 100644 (file)
@@ -1,10 +1,11 @@
 <%@ page import="java.util.*, java.io.*, java.net.*, user.jobengine.zk.util.SessionUtil, org.apache.logging.log4j.*"%>\r
 <link rel="shortcut icon" href="/img/mediacube_logo_small.ico">\r
 <%\r
-       String targetPath = "/pages/index.zul";\r
-       String queryString = request.getQueryString();\r
-       if (queryString != null)\r
-               targetPath += "?" + queryString;\r
-       LogManager.getLogger().info("Forwaring to {}", targetPath);\r
-       pageContext.forward(targetPath);\r
+//     String targetPath = "/pages/index.zul";\r
+//     String queryString = request.getQueryString();\r
+//     if (queryString != null)\r
+//             targetPath += "?" + queryString;\r
+//     LogManager.getLogger().info("Forwaring to {}", targetPath);\r
+\r
+       pageContext.forward("/pages/index.zul");\r
 %>
\ No newline at end of file
index d51833ef46e27c611254968bb955aaa289b14421..1d5d0bcab21af9b745864e6b821df74af5a94060 100644 (file)
                //console.log('URL is: <%=mediaURL%> ');\r
        </script>\r
        <center>\r
-       <video id="myVideoDiv"\r
-               class="video-js vjs-default-skin vjs-big-play-centered"\r
+       <video id="myVideoDiv" class="video-js vjs-default-skin vjs-big-play-centered"\r
                <%if (poster != null && !poster.isEmpty()) {%> \r
                poster="<%=poster%>"\r
                <%}%>>\r
+               <%if (mediaURL != null && !mediaURL.isEmpty()) {%> \r
+               poster="<%=poster%>"\r
+               <%}%>>\r
                <source src="<%=mediaURL%>" type='video/mp4'>\r
                <!--source src="/zk/media_oceans.mp4" type='video/mp4' -->\r
                <!--source src="MY_VIDEO.webm" type='video/webm' -->\r
index 5eacbd0afa1440591a0251c1c9a646c578822248..e3a88aa8a98cccdf75c95c7b2523b9cdd99772bd 100644 (file)
                                        </popup>\r
                                        <groupbox vflex="true" closable="false">\r
                                                <grid id="itemsGrid" sizedByContent="false" span="true" vflex="true" hflex="true" mold="paging" autopaging="false"\r
-                                                       model="@load(vm.searchResult)" activePage="@bind(vm.activePage)" emptyMessage="Nincs találat!" onAfterRender="@command('onPaging')" pageSize="50"\r
+                                                       model="@load(vm.searchResult)" emptyMessage="Nincs találat!" onAfterRender="@command('onPaging')" pageSize="50"\r
                                                        style="border: none; background: white !important;" oddRowSclass="listbox-odd-style">\r
                                                        <columns>\r
                                                                <column hflex="min">\r
index ff5d473c1dfb8ad69629dc4d526d889e5158b9c5..8c9da5e007d9f4e329f8fc82fb3881962e283457 100644 (file)
@@ -1,5 +1,6 @@
 package user.jobengine.zk.model;\r
 \r
+import java.util.Arrays;\r
 import java.util.Map;\r
 \r
 import org.apache.logging.log4j.LogManager;\r
@@ -10,7 +11,6 @@ import org.zkoss.bind.annotation.Command;
 import org.zkoss.bind.annotation.ContextParam;\r
 import org.zkoss.bind.annotation.ContextType;\r
 import org.zkoss.zk.ui.Component;\r
-import org.zkoss.zk.ui.Execution;\r
 import org.zkoss.zk.ui.Executions;\r
 import org.zkoss.zk.ui.event.Event;\r
 import org.zkoss.zk.ui.select.Selectors;\r
@@ -24,42 +24,18 @@ import user.jobengine.zk.util.SessionUtil;
 public class IndexModel extends BaseModel {\r
        private static final Logger logger = LogManager.getLogger();\r
 \r
-       static public void redirect(String path) {\r
-               String query = IndexModel.toQueryString(Executions.getCurrent().getParameterMap());\r
-               if (query != null)\r
-                       path += query;\r
-               logger.info("Redirecting to {}", path);\r
-               Executions.sendRedirect(path);\r
-       }\r
-\r
-       static public BasicDBObject toParamObject(Map<String, String[]> parameters) {\r
-               BasicDBObject result = null;\r
-               if (parameters != null && parameters.size() > 0) {\r
-                       result = new BasicDBObject();\r
-                       for (String key : parameters.keySet()) {\r
-                               result.put(key, parameters.get(key)[0]);\r
-                               //logger.info("{}:{}", key, parameters.get(key)[0]);\r
-                       }\r
-               }\r
-               return result;\r
-       }\r
-\r
-       static public String toQueryString(Map<String, String[]> parameters) {\r
-               String result = null;\r
-               if (parameters != null && parameters.size() > 0) {\r
-                       StringBuilder sb = new StringBuilder("?");\r
-                       for (String key : parameters.keySet()) {\r
-                               if (sb.length() > 1)\r
-                                       sb.append("&");\r
-                               sb.append(key);\r
-                               sb.append("=");\r
-                               sb.append(parameters.get(key)[0]);\r
-                               //logger.info("{}:{}", key, parameters.get(key)[0]);\r
-                       }\r
-                       result = sb.toString();\r
-               }\r
-               return result;\r
-       }\r
+       //      static public BasicDBObject toParamObject(Map<String, String[]> parameters) {\r
+       //              BasicDBObject result = null;\r
+       //              if (parameters != null && parameters.size() > 0) {\r
+       //                      result = new BasicDBObject();\r
+       //                      for (String key : parameters.keySet()) {\r
+       //                              result.put(key, parameters.get(key)[0]);\r
+       //                              //logger.info("{}:{}", key, parameters.get(key)[0]);\r
+       //                      }\r
+       //              }\r
+       //              return result;\r
+       //      }\r
+       //\r
 \r
        private String page;\r
 \r
@@ -70,12 +46,7 @@ public class IndexModel extends BaseModel {
        public void afterCompose(@ContextParam(ContextType.VIEW) Component view) {\r
                Selectors.wireComponents(view, this, false);\r
                Selectors.wireEventListeners(view, this);\r
-\r
-               Execution execution = Executions.getCurrent();\r
-               String action = execution.getParameter("action");\r
-               Map<String, String[]> parameters = execution.getParameterMap();\r
-               route(action, toQueryString(parameters), true);\r
-\r
+               route(Executions.getCurrent().getParameter("action"), SessionUtil.getQueryString(Arrays.asList("action")));\r
                SessionUtil.setAttribute(IndexModel.class.getCanonicalName(), this);\r
        }\r
 \r
@@ -88,30 +59,26 @@ public class IndexModel extends BaseModel {
                BasicDBObject h = SessionUtil.popHistory();\r
                if (h == null)\r
                        return;\r
-               route(h.getString("action"), h.getString("query"), h.getBoolean("useQueryString"));\r
+               route(h.getString("action"), h.getString("query"));\r
        }\r
 \r
-       public void pushClientHistory(String action, String query, boolean useQueryString) {\r
-               if (!action.equals("/"))\r
-                       action = "/actions/" + action;\r
-               if (useQueryString && query != null)\r
-                       action += query;\r
-               Clients.evalJavaScript(String.format("window.history.pushState('%s', null, '%s');", query, action));\r
-               logger.info("Pushed to client: {} {}", action, query);\r
+       public void pushClientHistory(String action, String query) {\r
+               String realAction = action.equals("/") ? action : "/actions/" + action;\r
+               realAction += query;\r
+               Clients.evalJavaScript(String.format("window.history.pushState(null, null, '%s');", realAction));\r
+               logger.info("Pushed to client: {}", realAction);\r
        }\r
 \r
-       public void route(String action, String query, boolean useQueryString) {\r
-               //              HttpServletRequest r = (HttpServletRequest) Executions.getCurrent().getNativeRequest();\r
-               //              String pathInfo = r.getPathInfo();\r
+       public void route(String action, String query) {\r
                String actionString = action == null ? "/" : action;\r
                String page = (String) pathMap.get(actionString);\r
-               if (useQueryString && query != null)\r
-                       page = String.format("/pages/%s.zul?%s", page, query);\r
+               if (query != null)\r
+                       page = String.format("/pages/%s.zul%s", page, query);\r
                else\r
                        page = String.format("/pages/%s.zul", page);\r
                setPage(page);\r
-               pushClientHistory(actionString, query, useQueryString);\r
-               SessionUtil.pushHistory(actionString, query, useQueryString);\r
+               pushClientHistory(actionString, query);\r
+               SessionUtil.pushHistory(actionString, query);\r
        }\r
 \r
        public void setPage(String page) {\r
index 6688cfcfed45f44e16fdce64b82312d2351ff532..ef48a143185ee35024641c154ff59389a7e0e45a 100644 (file)
@@ -21,7 +21,7 @@ public class LoginModel extends BaseModel {
 \r
        @AfterCompose\r
        public void afterCompose(@ContextParam(ContextType.VIEW) Component view) {\r
-               query = IndexModel.toQueryString(Executions.getCurrent().getParameterMap());\r
+               query = SessionUtil.getQueryString();\r
        }\r
 \r
        @Command\r
@@ -31,10 +31,8 @@ public class LoginModel extends BaseModel {
                        setMessage("Hibás fiókadatok!");\r
                        return;\r
                }\r
-               String path = "/";\r
-               if (query != null)\r
-                       path += query;\r
-               Executions.sendRedirect(path);\r
+\r
+               Executions.sendRedirect("/" + query);\r
        }\r
 \r
        public String getAccount() {\r
index ec5c5a8720de8da1de523d8b8743540a8f3ccfed..16de942a05e1ec92e0c8a56b53c908ebc994e8ba 100644 (file)
@@ -67,7 +67,7 @@ public class MenuModel extends BaseModel {
        public void navigate(@BindingParam("action") String action) {\r
                IndexModel indexModel = (IndexModel) SessionUtil.getAttribute(IndexModel.class.getCanonicalName());\r
                if (indexModel != null) {\r
-                       indexModel.route(action, null, false);\r
+                       indexModel.route(action, null);\r
                }\r
        }\r
 \r
index 8ec7b570186346fffaaedc741be5a88e99dabcd8..be621395caad8ac375ec6292045fcf7de9e1afa8 100644 (file)
@@ -25,6 +25,7 @@ import org.zkoss.zk.ui.event.MouseEvent;
 import org.zkoss.zk.ui.event.SortEvent;\r
 import org.zkoss.zk.ui.select.Selectors;\r
 import org.zkoss.zk.ui.select.annotation.Wire;\r
+import org.zkoss.zk.ui.util.Clients;\r
 import org.zkoss.zul.Checkbox;\r
 import org.zkoss.zul.Column;\r
 import org.zkoss.zul.Detail;\r
@@ -69,7 +70,6 @@ public class SearchModel extends AsyncBaseModel {
        private Validator allFilterCheckedValidator;\r
        private Validator itemSelectedValidator;\r
        private boolean allChecked = true;\r
-       private int activePage;\r
        private boolean rowsExpanded = true;\r
        private boolean allSelected;\r
 \r
@@ -145,6 +145,9 @@ public class SearchModel extends AsyncBaseModel {
                Selectors.wireComponents(view, this, false);\r
                Selectors.wireEventListeners(view, this);\r
                itemsGrid.getPagingChild().setAutohide(false);\r
+               itemsGrid.getPaginal().addEventListener("onPaging ", pe -> {\r
+                       logger.info("PAGING");\r
+               });\r
                for (Component child : itemsGrid.getColumns().getChildren()) {\r
                        Column column = (Column) child;\r
                        column.addEventListener("onSort", evt -> doSort(evt));\r
@@ -163,7 +166,7 @@ public class SearchModel extends AsyncBaseModel {
        }\r
 \r
        @Command\r
-       @NotifyChange({ "activePage", "searchResult", "selectedObject", "hasLowresMediaFile", "lowresMediaFilePath" })\r
+       @NotifyChange({ "searchResult", "selectedObject", "hasLowresMediaFile", "lowresMediaFilePath" })\r
        public void doSearch() {\r
                try {\r
                        this.selectedObject = null;\r
@@ -189,7 +192,7 @@ public class SearchModel extends AsyncBaseModel {
                orderBy = columnHeaders.get(column.getLabel());\r
                orderAscending = evt.isAscending();\r
                doSearch();\r
-               NotifyChange("activePage", "searchResult", "selectedObject", "hasLowresMediaFile", "lowresMediaFilePath");\r
+               NotifyChange("searchResult", "selectedObject", "hasLowresMediaFile", "lowresMediaFilePath");\r
 \r
                evt.stopPropagation();\r
        }\r
@@ -207,10 +210,6 @@ public class SearchModel extends AsyncBaseModel {
                model.selectArchivedMedia(this.selectedObject, true);\r
        }\r
 \r
-       public int getActivePage() {\r
-               return activePage;\r
-       }\r
-\r
        public Validator getAllFilterCheckedValidator() {\r
                return allFilterCheckedValidator;\r
        }\r
@@ -369,8 +368,8 @@ public class SearchModel extends AsyncBaseModel {
 \r
        @Command\r
        public void onPaging() {\r
-               // if (rows != null)\r
-               // Clients.scrollIntoView(rows);\r
+               if (rows != null)\r
+                       Clients.scrollIntoView(rows);\r
        }\r
 \r
        @Command\r
@@ -399,10 +398,6 @@ public class SearchModel extends AsyncBaseModel {
                highlight(this.selectedObject, true);\r
        }\r
 \r
-       public void setActivePage(int activePage) {\r
-               this.activePage = activePage;\r
-       }\r
-\r
        @NotifyChange("typeFilters")\r
        public void setAllChecked(boolean allChecked) {\r
                this.allChecked = allChecked;\r
index 8350e8d8d877ec9d487e491a30656e2e1f64f51c..51c36df902d6497a1744296200a4e21e3988ca5d 100644 (file)
@@ -5,17 +5,15 @@ import java.util.Map;
 import org.zkoss.zk.ui.Page;\r
 import org.zkoss.zk.ui.util.Initiator;\r
 \r
-import user.jobengine.zk.model.IndexModel;\r
-\r
 public class AdminAuthInitiator implements Initiator {\r
 \r
        @Override\r
        public void doInit(Page page, Map<String, Object> args) throws Exception {\r
                if (!SessionUtil.isAuthenticated())\r
-                       IndexModel.redirect("/pages/login.jsp");\r
+                       SessionUtil.redirect("/pages/login.zul");\r
 \r
                if (!SessionUtil.isAdmin())\r
-                       IndexModel.redirect("/pages/access-denied.zul");\r
+                       SessionUtil.redirect("/pages/access-denied.zul");\r
        }\r
 \r
 }
\ No newline at end of file
index e0219ff8f4c26b48d23c484030e3dc1b4ffbbf20..7d4f3f045556dbff1b8e2da97ff8d14aa09dd7d3 100644 (file)
@@ -5,8 +5,6 @@ import java.util.Map;
 import org.zkoss.zk.ui.Page;\r
 import org.zkoss.zk.ui.util.Initiator;\r
 \r
-import user.jobengine.zk.model.IndexModel;\r
-\r
 /**\r
  * Ellenorzi, hogy van e beloginelt user, ha nincs, akkor -> login.zul Minden oldal belinkeli ezt az ellenorzest.\r
  */\r
@@ -14,7 +12,7 @@ public class AuthInitiator implements Initiator {
        @Override\r
        public void doInit(Page page, Map<String, Object> args) throws Exception {\r
                if (!SessionUtil.isAuthenticated())\r
-                       IndexModel.redirect("/pages/login.jsp");\r
+                       SessionUtil.redirect("/pages/login.zul");\r
        }\r
 \r
 }
\ No newline at end of file
index b7ff5630c5b32f622842aa9f065015063f195f90..95fbee3a6f88b4ceaa42136548e2e4a3732049bb 100644 (file)
@@ -4,12 +4,15 @@ import java.io.FileInputStream;
 import java.io.InputStream;\r
 import java.util.ArrayList;\r
 import java.util.List;\r
+import java.util.Map;\r
 import java.util.Properties;\r
 \r
+import javax.servlet.http.HttpServletRequest;\r
 import javax.servlet.http.HttpSession;\r
 \r
 import org.apache.logging.log4j.LogManager;\r
 import org.apache.logging.log4j.Logger;\r
+import org.zkoss.zk.ui.Executions;\r
 import org.zkoss.zk.ui.Session;\r
 import org.zkoss.zk.ui.Sessions;\r
 \r
@@ -54,6 +57,11 @@ public class SessionUtil {
                //setAttribute(SessionUtil.USERPRINCIPAL, null);\r
        }\r
 \r
+       static public void dumpQueryString() {\r
+               HttpServletRequest request = (HttpServletRequest) Executions.getCurrent().getNativeRequest();\r
+               logger.info(request.getQueryString());\r
+       }\r
+\r
        static public Object getAttribute(String name) {\r
                //HttpSession session = (HttpSession) (Executions.getCurrent()).getDesktop().getSession().getNativeSession();\r
                Session zkSession = Sessions.getCurrent();\r
@@ -75,6 +83,35 @@ public class SessionUtil {
                return cfg;\r
        }\r
 \r
+       static public String getQueryString() {\r
+               HttpServletRequest request = (HttpServletRequest) Executions.getCurrent().getNativeRequest();\r
+               String result = request.getQueryString();\r
+               result = result == null ? "" : "?" + result;\r
+               return result;\r
+       }\r
+\r
+       static public String getQueryString(List<String> exclude) {\r
+               String result = "";\r
+               HttpServletRequest request = (HttpServletRequest) Executions.getCurrent().getNativeRequest();\r
+               Map<String, String[]> parameters = request.getParameterMap();\r
+               if (parameters != null && parameters.size() > 0) {\r
+                       StringBuilder sb = new StringBuilder();\r
+                       for (String key : parameters.keySet()) {\r
+                               if (exclude.contains(key))\r
+                                       continue;\r
+                               if (sb.length() == 0)\r
+                                       sb.append("?");\r
+                               if (sb.length() > 1)\r
+                                       sb.append("&");\r
+                               sb.append(key);\r
+                               sb.append("=");\r
+                               sb.append(parameters.get(key)[0]);\r
+                       }\r
+                       result = sb.toString();\r
+               }\r
+               return result;\r
+       }\r
+\r
        static public UserPrincipal getUserPrincipal() {\r
                return (UserPrincipal) getAttribute(USERPRINCIPAL);\r
        }\r
@@ -136,13 +173,17 @@ public class SessionUtil {
        }\r
 \r
        @SuppressWarnings("unchecked")\r
-       static public void pushHistory(String action, String query, boolean useQueryString) {\r
+       static public void pushHistory(String action, String query) {\r
                List<BasicDBObject> history = (List<BasicDBObject>) getAttribute(HISTORY);\r
                if (history == null)\r
                        history = new ArrayList<>();\r
 \r
                setAttribute(HISTORY, history);\r
-               history.add(new BasicDBObject("action", action).append("query", query).append("useQueryString", useQueryString));\r
+               history.add(new BasicDBObject("action", action).append("query", query));\r
+       }\r
+\r
+       static public void redirect(String path) {\r
+               Executions.sendRedirect(path + getQueryString());\r
        }\r
 \r
        static public void registerJobChangedListener(IJobChangedListener listener) {\r
@@ -162,4 +203,5 @@ public class SessionUtil {
                if (session != null)\r
                        session.setAttribute(name, obj);\r
        }\r
+\r
 }
\ No newline at end of file
index e1aeffaaa28f1100b9d138a8fa9fd7f954c310ff..aadb6a31391f4c01bb775b5c5493b05d83df2a9a 100644 (file)
@@ -5,17 +5,15 @@ import java.util.Map;
 import org.zkoss.zk.ui.Page;\r
 import org.zkoss.zk.ui.util.Initiator;\r
 \r
-import user.jobengine.zk.model.IndexModel;\r
-\r
 public class SubmitterAuthInitiator implements Initiator {\r
 \r
        @Override\r
        public void doInit(Page page, Map<String, Object> args) throws Exception {\r
                if (!SessionUtil.isAuthenticated())\r
-                       IndexModel.redirect("/pages/login.jsp");\r
+                       SessionUtil.redirect("/pages/login.zul");\r
 \r
                if (!SessionUtil.isSubmitter())\r
-                       IndexModel.redirect("/pages/access-denied.zul");\r
+                       SessionUtil.redirect("/pages/access-denied.zul");\r
        }\r
 \r
 }
\ No newline at end of file