]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/BatchView.js
Auto-open logger (with associated preference), add re-open button in logger toolbar...
[gpl/argeo-slc.git] / server / org.argeo.slc.ria / src / argeo-ria-lib / slc / class / org / argeo / slc / ria / BatchView.js
index 2b7a30f3eb5678795bdc39d791c1a83d006bbc76..30a5e76c705bd52d8916f73a4419fe8cdbe1df8f 100644 (file)
@@ -17,6 +17,11 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                                label : "Autoclear batch on execution",\r
                                type : "boolean",\r
                                defaultValue : false\r
+                       },\r
+                       "slc.batch.autoOpenLog" : {\r
+                               label : "Auto open log on execution",\r
+                               type  : "boolean",\r
+                               defaultValue  : true                            \r
                        }\r
                }\r
        },\r
@@ -30,7 +35,7 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                        init : {\r
                                "submitform" : {\r
                                        label : "Execute Batch",\r
-                                       icon : "org.argeo.slc.ria/media-playback-start.png",\r
+                                       icon : "org/argeo/slc/ria/media-playback-start.png",\r
                                        shortcut : null,\r
                                        enabled : false,\r
                                        menu : "Launcher",\r
@@ -42,72 +47,19 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                                                }\r
                                                var prefName = "slc.batch.autoclear";\r
                                                var prefValue = this.getRiaPreferenceValue(prefName);\r
-                                               if(prefValue !== null && prefValue === true){\r
+                                               if(( prefValue !== null && prefValue === true ) || this.getForceClearPreference()){\r
                                                        this.executeBatchOnAgent(batchAgentId, true);                                                   \r
                                                }else{\r
                                                        this.executeBatchOnAgent(batchAgentId, false);\r
                                                }\r
+                                               this.setForceClearPreference(false);\r
                                                return;\r
-                                               var modal = new org.argeo.ria.components.Modal("Clear?", null);\r
-                                               modal.addYesNoReminder("Do you want to clear the batch automatically after execution?", prefName);\r
-                                               modal.addListener("cancel", function(e){\r
-                                                       this.executeBatchOnAgent(batchAgentId, false);\r
-                                               }, this);\r
-                                               modal.addListener("ok", function(e){\r
-                                                       this.executeBatchOnAgent(batchAgentId, true);\r
-                                               }, this);\r
-                                               modal.attachAndShow();                                          \r
-                                       },\r
-                                       command : null\r
-                               },\r
-                               /*\r
-                               "toggleopenonadd" : {\r
-                                       label : "Auto edit on Add",\r
-                                       icon : "org.argeo.slc.ria/document-open.png",\r
-                                       shortcut : null,\r
-                                       enabled : true,\r
-                                       toggle : true,\r
-                                       toggleInitialState : true,\r
-                                       menu : "Launcher",\r
-                                       toolbar : "launcher",\r
-                                       callback : function(event) {\r
-                                               var state = event.getTarget().getUserData("slc.command.toggleState");\r
-                                               this.setAutoOpen(state);\r
-                                       },\r
-                                       command : null\r
-                               },\r
-                               "editexecutionspecs" : {\r
-                                       label : "Edit Execution Specs",\r
-                                       icon : "org.argeo.slc.ria/document-open.png",\r
-                                       shortcut : null,\r
-                                       enabled : false,\r
-                                       menu : "Launcher",\r
-                                       toolbar : "batch",\r
-                                       callback : function(e) {\r
-                                               var sel = this.list.getSortedSelection();\r
-                                               var spec = sel[0].getUserData("batchEntrySpec");\r
-                                               if (spec.hasEditableValues()) {\r
-                                                       var specEditor = new org.argeo.slc.ria.execution.SpecEditor(spec);\r
-                                                       specEditor.attachAndShow();\r
-                                               }\r
-                                       },\r
-                                       selectionChange : function(viewId, selection) {\r
-                                               if (viewId != "batch:list")\r
-                                                       return;\r
-                                               this.setEnabled(false);\r
-                                               if ((selection && selection.length == 1)) {\r
-                                                       var selectedItemSpec = selection[0].getUserData("batchEntrySpec");\r
-                                                       if (selectedItemSpec.hasEditableValues()) {\r
-                                                               this.setEnabled(true);\r
-                                                       }\r
-                                               }\r
                                        },\r
                                        command : null\r
                                },\r
-                               */\r
                                "removefrombatch" : {\r
                                        label : "Remove from batch",\r
-                                       icon : "org.argeo.slc.ria/edit-delete.png",\r
+                                       icon : "org/argeo/slc/ria/edit-delete.png",\r
                                        shortcut : null,\r
                                        enabled : false,\r
                                        menu : "Launcher",\r
@@ -146,7 +98,7 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                                },\r
                                "clearbatch" : {\r
                                        label : "Clear batch",\r
-                                       icon : "org.argeo.slc.ria/user-trash-full.png",\r
+                                       icon : "org/argeo/slc/ria/user-trash-full.png",\r
                                        shortcut : null,\r
                                        enabled : true,\r
                                        menu : "Launcher",\r
@@ -184,7 +136,11 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                        nullable : true,\r
                        check : "String",\r
                        event : "changeBatchAgentId"\r
-               }               \r
+               },\r
+               forceClearPreference : {\r
+                       init : false,\r
+                       check : "Boolean"\r
+               }\r
        },\r
          \r
        construct : function(){\r
@@ -308,7 +264,7 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
 \r
                        this.dropDecorator = new qx.ui.decoration.Background();                 \r
                        this.dropDecorator.set({\r
-                               backgroundImage : "org.argeo.slc.ria/drophere.gif",\r
+                               backgroundImage : "org/argeo/slc/ria/drophere.gif",\r
                                backgroundRepeat : "no-repeat"\r
                        });\r
 \r
@@ -390,7 +346,7 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                \r
                appendBatchEntrySpec: function(batchEntrySpec, icon, after){\r
                                                \r
-                       var item = new qx.ui.form.ListItem(batchEntrySpec.getLabel(), icon || "org.argeo.slc.ria/system.png");\r
+                       var item = new qx.ui.form.ListItem(batchEntrySpec.getLabel(), icon || "org/argeo/slc/ria/system.png");\r
                        item.setUserData("batchEntrySpec", batchEntrySpec);\r
                        item.setPaddingTop(1);\r
                        item.setPaddingBottom(2);\r
@@ -402,7 +358,7 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                        } else {\r
                                this.list.add(item);\r
                        }\r
-                       this.list.select(item);\r
+                       this.list.setSelection([item]);\r
                        \r
                },\r
 \r
@@ -421,27 +377,23 @@ qx.Class.define("org.argeo.slc.ria.BatchView",
                        var host = agentsMap[agentUuid];\r
                        var slcExecMessage = new org.argeo.slc.ria.execution.Message();\r
                        slcExecMessage.setHost(host);\r
+                       var execUuid = slcExecMessage.getUuid();\r
                        for (var i = 0; i < selection.length; i++) {\r
                                var batchEntrySpec = selection[i].getUserData("batchEntrySpec");\r
                                slcExecMessage.addBatchEntrySpec(batchEntrySpec);\r
                        }\r
                        try{\r
                                var xmlMessage = slcExecMessage.toXml();\r
-                               if(!window.xmlExecStub){\r
-                                       window.xmlExecStub = {};\r
-                               }\r
-                               window.xmlExecStub[slcExecMessage.getUuid()] = qx.xml.Document.fromString(xmlMessage);\r
                                var req = org.argeo.slc.ria.SlcApi.getNewSlcExecutionService(\r
                                                agentUuid, xmlMessage);\r
+                               req.addListener("completed", function(response){\r
+                                       var loggerView = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneById("main").getContent();\r
+                                       loggerView.reloadLogger();\r
+                                       if(this.getRiaPreferenceValue("slc.batch.autoOpenLog")){\r
+                                               loggerView.openDetail([0,host,execUuid,0]);\r
+                                       }\r
+                               }, this);\r
                                req.send();\r
-                               // Force logs refresh right now!\r
-                               qx.event.Timer.once(function() {\r
-                                                       var command = org.argeo.ria.event.CommandsManager\r
-                                                                       .getInstance().getCommandById("reloadlogs");\r
-                                                       if (command) {\r
-                                                               command.execute();\r
-                                                       }\r
-                                               }, this, 2000);\r
                                if(clearBatch){\r
                                        req.addListener("completed", function(e){\r
                                                this.list.removeAll();\r