* @param nodeCallback Function\r
* @param childCallback Function\r
*/\r
- loadNode : function(node, nodeCallback, childCallback){\r
+ loadNode : function(node, depth, filter){\r
if(node.getLoadState() == "loaded") return;\r
\r
if(this.getXmlDocLoaded()){\r
// Parse document and load\r
node.setName(this._xmlDoc.documentElement.nodeName);\r
+ var properties = this.getSettings(); \r
node.fromDomElement(this._xmlDoc.documentElement);\r
node.setLoadState("loaded");\r
+ if(properties.dynamic){\r
+ this.setXmlDocLoaded(false);\r
+ }\r
}else{\r
this.addListenerOnce("changeXmlDocLoaded", function(){\r
- this.loadNode(node, nodeCallback, childCallback);\r
+ this.loadNode(node, depth, filter);\r
}, this);\r
node.setLoadState("loading");\r
- this.loadXmlDoc();\r
+ this.loadXmlDoc(node, depth, filter);\r
}\r
},\r
\r
- loadXmlDoc : function(){\r
+ loadXmlDoc : function(node, depth, filter){\r
var properties = this.getSettings();\r
if(!properties.xmlSrc && !properties.xmlString) return;\r
if(properties.xmlSrc){\r
var request = new org.argeo.ria.remote.Request(properties.xmlSrc, 'GET', 'application/xml');\r
+ if(properties.dynamic && properties.pathParameter){\r
+ request.setParameter(properties.pathParameter, (node.getPath()|| "/"));\r
+ if(depth && depth != -1){\r
+ request.setParameter("depth", depth);\r
+ }\r
+ }\r
request.addListener("completed", function(response){\r
this._xmlDoc = response.getContent();\r
this.setXmlDocLoaded(true);\r