Keep the current open test to close it if deleted.
authorCharles du Jeu <charles.dujeu@gmail.com>
Sun, 20 Jun 2010 20:16:46 +0000 (20:16 +0000)
committerCharles du Jeu <charles.dujeu@gmail.com>
Sun, 20 Jun 2010 20:16:46 +0000 (20:16 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@3611 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

server/org.argeo.slc.ria/src/argeo-ria-lib/slc-web/class/org/argeo/slc/web/TestList.js

index 31f97165dff9b4d96cbca7e049876465a005e2c6..613d927d4b1a705c61fe76a5d358db2e853f027a 100644 (file)
@@ -61,6 +61,10 @@ qx.Class.define("org.argeo.slc.web.TestList",
                init : 'My Collection',\r
                check : "String"\r
        },\r
+       currentOpenInstanceId : {\r
+               check : "String",\r
+               nullable:true\r
+       },\r
        /**\r
         * The applet commands.\r
         */\r
@@ -130,6 +134,7 @@ qx.Class.define("org.argeo.slc.web.TestList",
                                        var classObj = org.argeo.slc.ria.Applet;\r
                                        var xmlNodes = viewsManager.getViewPaneSelection("list").getNodes();\r
                                        var iView = viewsManager.initIViewClass(classObj, "applet", xmlNodes[0]);\r
+                                       this.setCurrentOpenInstanceId(iView.getInstanceId());\r
                                        iView.load(xmlNodes[0]);\r
                                },\r
                                selectionChange : function(viewId, xmlNodes){\r
@@ -260,10 +265,16 @@ qx.Class.define("org.argeo.slc.web.TestList",
                                toolbar         : "selection",\r
                                callback        : function(e){\r
                                        var modal = new org.argeo.ria.components.Modal("Confirm", null);\r
-                                       modal.addConfirm("Are you sure you want to delete<br> test " + this.extractTestUuid() + "?");\r
+                                       var testUuid = this.extractTestUuid();\r
+                                       modal.addConfirm("Are you sure you want to delete<br> test " + testUuid + "?");\r
                                        modal.addListener("ok", function(){\r
                                                var request = org.argeo.slc.ria.SlcApi.getRemoveResultService(this.getCollectionId(), this.extractTestUuid());\r
                                                request.addListener("completed", function(response){\r
+                                                       if(this.getCurrentOpenInstanceId() == "test:"+testUuid){\r
+                                                               var appletView = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneById("applet");\r
+                                                               appletView.closeCurrent();\r
+                                                               this.setCurrentOpenInstanceId(null);\r
+                                                       }\r
                                                        this.loadCollections();\r
                                                        this.loadList();\r
                                                        this.info("Test was successfully deleted");\r