menu : "Selection",\r
toolbar : "selection",\r
callback : function(e){\r
- // Call service to delete\r
+ var viewsManager = org.argeo.ria.components.ViewsManager.getInstance();\r
+ var xmlNodes = viewsManager.getViewPaneSelection("list").getNodes();\r
+ var uuid = qx.xml.Element.getSingleNodeText(xmlNodes[0], 'param[@name="uuid"]');\r
+ var serviceManager = org.argeo.ria.remote.RequestManager.getInstance();\r
+ var request = serviceManager.getRequest(\r
+ "/org.argeo.slc.webapp/removeResultFromCollection.service",\r
+ "GET",\r
+ "application/xml"\r
+ );\r
+ request.setParameter("collectionId", this.getCollectionId());\r
+ request.setParameter("resultUuid", uuid);\r
+ request.addListener("completed", function(response){\r
+ this.loadCollections();\r
+ this.loadList();\r
+ this.info("Test was successfully deleted");\r
+ }, this);\r
+ request.send();\r
},\r
selectionChange : function(viewId, xmlNodes){\r
if(viewId != "list") return;\r
this.getView().setViewTitle("");\r
this.add(this.table, {flex:1});\r
\r
- select.addListener("changeValue", function(dataEvent){\r
- this.debug(dataEvent.getData());\r
- this.setCollectionId(dataEvent.getData());\r
- this.loadList();\r
- }, this);\r
+ select.addListener("changeValue", this.collectionSelectorListener, this);\r
\r
org.argeo.ria.remote.RequestManager.getInstance().addListener("reload", function(event){\r
if(event.getDataType()!="collection") return;\r
+ select.removeListener("changeValue", this.collectionSelectorListener, this);\r
var collectionList = event.getContent();\r
select.removeAll();\r
for(key in collectionList){\r
select.setSelected(item);\r
}\r
}\r
+ select.addListener("changeValue", this.collectionSelectorListener, this);\r
}, this);\r
\r
},\r
\r
loadCollections : function(){\r
- this.setCollectionList({"Charles":"Collection 'Charles'","My Collection":"Collection 'My Collection'"});\r
- org.argeo.ria.remote.RequestManager.getInstance().fireReloadEvent("collection", this.getCollectionList());\r
+ var url = "/org.argeo.slc.webapp/listCollectionRefs.service";\r
+ var serviceManager = org.argeo.ria.remote.RequestManager.getInstance();\r
+ var request = serviceManager.getRequest(\r
+ url,\r
+ "GET",\r
+ "application/xml"\r
+ );\r
+ var NSMap = {slc:"http://argeo.org/projects/slc/schemas"};\r
+ request.addListener("completed", function(response){\r
+ var xml = response.getContent();\r
+ var collections = {};\r
+ var nodes = org.argeo.ria.util.Element.selectNodes(xml, "//slc:ref", NSMap);\r
+ for(var i=0;i<nodes.length;i++){\r
+ var collId = qx.xml.Element.getSingleNodeText(nodes[i], ".");\r
+ collections[collId] = collId;\r
+ }\r
+ this.setCollectionList(collections);\r
+ org.argeo.ria.remote.RequestManager.getInstance().fireReloadEvent("collection", this.getCollectionList());\r
+ }, this);\r
+ request.setAsynchronous(false);\r
+ request.send();\r
},\r
\r
loadList : function(){\r
); \r
request.setParameter("collectionId", this.getCollectionId());\r
request.addListener("completed", function(response){\r
- xml = response.getContent();\r
- qx.log.Logger.info("Successfully loaded XML");\r
+ var xml = response.getContent();\r
+ this.info("Successfully loaded XML");\r
var nodes = qx.xml.Element.selectNodes(xml, "//data");\r
for(var i=0; i<nodes.length;i++){\r
var rowData = nodes[i];\r
}\r
}, this);\r
modal.attachAndShow();\r
- }else{ \r
- this.debug("Copying "+selectionType+" to collection " + collectionId);\r
+ return;\r
}\r
+\r
+ var serviceManager = org.argeo.ria.remote.RequestManager.getInstance();\r
+ var request = serviceManager.getRequest(\r
+ "/org.argeo.slc.webapp/addResultToCollection.service", \r
+ "GET", \r
+ "application/xml"\r
+ );\r
+\r
+ if(selectionType == "current_collection"){\r
+ this.error("Not implemented yet!"); \r
+ }else if(selectionType == "current_selection"){\r
+ // get selection ID\r
+ request.setParameter("collectionId", collectionId);\r
+ var xmlNodes = this.getView().getViewSelection().getNodes();\r
+ var uuid = qx.xml.Element.getSingleNodeText(xmlNodes[0], 'param[@name="uuid"]');\r
+ request.setParameter("resultUuid", uuid);\r
+ }\r
+ request.addListener("completed", function(response){\r
+ this.loadCollections();\r
+ }, this);\r
+ request.send(); \r
+ },\r
+ \r
+ collectionSelectorListener : function(event){\r
+ this.setCollectionId(event.getData());\r
+ this.loadList(); \r
},\r
\r
addScroll : function(){\r