]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.webapp/src/main/webapp/argeo-ria-src/class/org/argeo/ria/util/Element.js
New services
[gpl/argeo-slc.git] / org.argeo.slc.webapp / src / main / webapp / argeo-ria-src / class / org / argeo / ria / util / Element.js
index 3fbb6f04218fcbd3e8e49cd92ee0b786f40cee6e..23df026c2e4eaf9f27482a232d8c63f100412154 100644 (file)
@@ -11,6 +11,9 @@ qx.Class.define("org.argeo.ria.util.Element",
                \r
   statics :\r
   {\r
+       \r
+       DEFAULT_NAMESPACE_MAP : null,\r
+       \r
      /**\r
      * Selects the first XmlNode that matches the XPath expression.\r
      *\r
@@ -23,7 +26,8 @@ qx.Class.define("org.argeo.ria.util.Element",
     selectSingleNode : qx.core.Variant.select("qx.client",\r
     {\r
       "mshtml|opera": function(element, query, NSMap) {\r
-       if(NSMap){\r
+       NSMap = NSMap || org.argeo.ria.util.Element.DEFAULT_NAMESPACE_MAP;\r
+       if(NSMap){                      \r
                var namespaces = [];\r
                var i=0;\r
                for(var prefix in NSMap){                       \r
@@ -40,6 +44,7 @@ qx.Class.define("org.argeo.ria.util.Element",
 \r
       "default": function(element, query, NSMap)\r
       {\r
+       NSMap = NSMap || org.argeo.ria.util.Element.DEFAULT_NAMESPACE_MAP;\r
         if(!this.__xpe) {\r
           this.__xpe = new XPathEvaluator();\r
         }\r
@@ -76,6 +81,7 @@ qx.Class.define("org.argeo.ria.util.Element",
     selectNodes : qx.core.Variant.select("qx.client",\r
     {\r
       "mshtml|opera": function(element, query, NSMap) {\r
+       NSMap = NSMap || org.argeo.ria.util.Element.DEFAULT_NAMESPACE_MAP;\r
        if(NSMap){\r
                var namespaces = [];\r
                var i=0;\r
@@ -91,6 +97,7 @@ qx.Class.define("org.argeo.ria.util.Element",
 \r
       "default": function(element, query, NSMap)\r
       {\r
+       NSMap = NSMap || org.argeo.ria.util.Element.DEFAULT_NAMESPACE_MAP;\r
         var xpe = this.__xpe;\r
 \r
         if(!xpe) {\r
@@ -134,7 +141,7 @@ qx.Class.define("org.argeo.ria.util.Element",
      * @signature function(element, namespaceURI, tagname)\r
      */\r
     getElementsByTagNameNS : qx.core.Variant.select("qx.client",\r
-    {\r
+    {          \r
       "mshtml": function(element, namespaceURI, tagname)\r
       {\r
         var doc = element.ownerDocument || element;\r
@@ -162,7 +169,8 @@ qx.Class.define("org.argeo.ria.util.Element",
      */\r
     getSingleNodeText : function(element, query, NSMap)\r
     {\r
-      var node = this.selectSingleNode(element, query, NSMap);\r
+      NSMap = NSMap || org.argeo.ria.util.Element.DEFAULT_NAMESPACE_MAP;\r
+      var node = org.argeo.ria.util.Element.selectSingleNode(element, query, NSMap);\r
       return qx.dom.Node.getText(node);\r
     }\r
   }\r