U_XML.js 16 KB

123456
  1. // Licensed Materials - Property of IBM
  2. // IBM Cognos Products: hal
  3. // (C) Copyright IBM Corp. 2003, 2017.
  4. // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  5. var U_XML={};U_XML.K_iNODE_ELEMENT=1;U_XML.K_iNODE_ATTRIBUTE=2;U_XML.K_iNODE_TEXT=3;U_XML.K_iNODE_CDATA_SECTION=4;U_XML.K_iNODE_ENTITY_REFERENCE=5;U_XML.K_iNODE_ENTITY=6;U_XML.K_iNODE_PROCESSING_INSTRUCTION=7;U_XML.K_iNODE_COMMENT=8;U_XML.K_iNODE_DOCUMENT=9;U_XML.K_iNODE_DOCUMENT_TYPE=10;U_XML.K_iNODE_DOCUMENT_FRAGMENT=11;U_XML.K_iNODE_NOTATION=12;U_XML.K_sProgID_DOMDocument="MSXML2.DOMDocument.3.0";U_XML.K_sProgID_XMLHTTP="MSXML2.XMLHTTP.3.0";U_XML.F_SetXml60=function(){this.K_sProgID_DOMDocument="Msxml2.DOMDocument.6.0";this.K_sProgID_XMLHTTP="Msxml2.XMLHTTP.6.0";};U_XML.M_bUseNativeXMLHttpRequest=true;U_XML.F_RemoveXmlProcessingInstruction=function(_hTD2){return _hTD2.replace(/^<\?xml.*?\?>/i, "");};U_XML.F_CreateDocument=function(){var d=G_BrowserInfo.M_bIsIE?new ActiveXObject( this.K_sProgID_DOMDocument ):document.implementation.createDocument( "", "", null );d.async=false;d.validateOnParse=false;d.setProperty( "SelectionLanguage", "XPath" );return d;};U_XML.F_XML_OnParseError=function(d){var _hLD2=d.parseError;G_Debug.F_Print( "XML Parse Error" );G_Debug.F_Print("---------------------------");G_Debug.F_Print( " reason: " + _hLD2.reason );G_Debug.F_Print( " url: " + _hLD2.url );G_Debug.F_Print( " line: " + _hLD2.line );G_Debug.F_Print( " linepos: " + _hLD2.linepos );G_Debug.F_Print( " srcText: " + _hLD2.srcText );};U_XML.F_LoadDocument=function(_h431,_hHD2,_hLT1,_hDD){var d=this.F_CreateDocument();d.validateOnParse=(_hLT1!=false);d.preserveWhiteSpace=(_hDD==true);try{if(!d.load(_hHD2)){_h431=_h431?_h431:this;_h431.F_XML_OnParseError(d);return null;}}catch(e){_h431=_h431?_h431:this;_h431.F_XML_OnParseError(d);return null;}return d;};U_XML.F_LoadString=function(_h431,_hTD2,_hLT1,_hDD){var d=null;var _hQ42=false;try{if(G_BrowserInfo.M_bIsIE){d=this.F_CreateDocument();d.validateOnParse=(_hLT1!=false);d.preserveWhiteSpace=(_hDD==true);_hQ42=d.loadXML(_hTD2);}else{d=(new DOMParser()).parseFromString(_hTD2, "text/xml");_hQ42=(d.parseError.errorCode==0);}if(!_hQ42){_h431=_h431?_h431:this;_h431.F_XML_OnParseError(d);this.F_AlertInvalidUtf8Bom(_hTD2);return null;}}catch(e){_h431=_h431?_h431:this;_h431.F_XML_OnParseError(d);this.F_AlertInvalidUtf8Bom(_hTD2);return null;}return d;};U_XML.F_LoadValidXML=function(_hTD2){return this.F_LoadString({F_XML_OnParseError:function(d){var _hLD2=d.parseError;G_HAL.F_AlertError("XML Parse Error" +"\r\n---------------------------"+"\r\n reason: " + _hLD2.reason +"\r\n url: " + _hLD2.url +"\r\n line: " + _hLD2.line +"\r\n linepos: " + _hLD2.linepos +"\r\n srcText: " + _hLD2.srcText );}}, _hTD2, false, false);};U_XML.F_LoadStringWithDTD=function(_h431,_hTD2,_h8E2,_hLT1,_hDD){var d=U_XML.F_LoadString(_h431,(_h8E2?_h8E2+_hTD2:_hTD2), _hLT1, _hDD);if(d&&!G_BrowserInfo.M_bIsIE){d.rawDTD=_h8E2;}return d;};U_XML.F_CreateElementNS=function(d,_h531,_hN8){return G_BrowserInfo.M_bIsIE?d.createNode(this.K_iNODE_ELEMENT, _hN8, _h531):d.createElementNS(_h531, _hN8);};U_XML.F_CreateAttributeNS=function(d,_h531,_hQ4){return G_BrowserInfo.M_bIsIE?d.createNode(this.K_iNODE_ATTRIBUTE, _hQ4, _h531):d.createAttributeNS(_h531, _hQ4);};U_XML.F_ImportNode=function(d,n,_h9C2){if(G_BrowserInfo.M_bIsIE||(n.ownerDocument==d)){return n.cloneNode(_h9C2!==false);}var _hMT1=d.documentElement?d.documentElement:d;if(!d.doctype){var _h7Z1=d.importNode(n, _h9C2!==false);_h7Z1=_hMT1.appendChild(_h7Z1);_h7Z1=_hMT1.removeChild(_h7Z1);return _h7Z1;}if(n.ownerDocument.doctype&&(n.ownerDocument.doctype.xml==d.doctype.xml)){var _h7Z1=d.importNode(n, _h9C2!==false);_h7Z1=_hMT1.appendChild(_h7Z1);_h7Z1=_hMT1.removeChild(_h7Z1);return _h7Z1;}var _h982=this.F_LoadString(null, d.doctype.xml+n.xml);var _h7Z1=d.importNode(_h982.documentElement, _h9C2!==false);_h7Z1=_hMT1.appendChild(_h7Z1);_h7Z1=_hMT1.removeChild(_h7Z1);return _h7Z1;};U_XML.F_GetUniqueId=function(d,_h5C2){var i=1;var _hAE2=_h5C2;while(d.nodeFromID(_hAE2)){_hAE2=_h5C2+i++;}return _hAE2;};U_XML.F_GiveNodeUniqueId=function(d,n,_h5C2){if(!_h5C2){_h5C2=n.nodeName;}n.setAttribute("id", this.F_GetUniqueId(d, _h5C2));return n;};U_XML.F_IndexOf=function(nl,n){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){if(nl.item(i)==n){return i;}}return-1;};U_XML.F_GetIndex=function(n){return this.F_IndexOf(n.parentNode.selectNodes("*"), n);};U_XML.F_RemoveNode=function(_hOA2,_hV82){var n=_hOA2.selectSingleNode(_hV82);if(n){n.parentNode.removeChild(n);}return n;};U_XML.F_RemoveNodeAndEmptyParent=function(_hOA2,_hV82){var n=_hOA2.selectSingleNode(_hV82);if(n){var _hH12=n.parentNode;_hH12.removeChild(n);if(!_hH12.selectSingleNode("*")){_hH12.parentNode.removeChild(_hH12);}}return n;};U_XML.F_RemoveNodes=function(_hOA2,_hV82){var nl=_hOA2.selectNodes(_hV82);var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var n=nl.item(i);n.parentNode.removeChild(n);}return nl;};U_XML.F_RemoveNodesAndEmptyParents=function(_hOA2,_hV82){var nl=_hOA2.selectNodes(_hV82);var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var n=nl.item(i);var _hH12=n.parentNode;n.parentNode.removeChild(n);if(_hH12&&_hH12.parentNode&&!_hH12.selectSingleNode("*")){_hH12.parentNode.removeChild(_hH12);}}return nl;};U_XML.F_RemoveNodesInArray=function(_hK82){var _hBZ1=_hK82.length;for(var i=0;i<_hBZ1;i++){var n=_hK82[i];var _hH12=n.parentNode;if(_hH12){_hH12.removeChild(n);}}};U_XML.F_AppendArray=function(n,_hK82){var _hBZ1=_hK82.length;for(var i=0;i<_hBZ1;++i){n.appendChild(_hK82[i]);}};U_XML.F_AppendNodeList=function(n,nl){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){n.appendChild(nl.item(i));}};U_XML.F_AppendNodeListToArray=function(a,nl){if(!a){a=[];}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){a.push(nl.item(i));}return a;};U_XML.F_AppendValues=function(a,nl){if(!a){a=[];}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var n=nl.item(i);a.push((n.nodeType==this.K_iNODE_ATTRIBUTE)?n.value:n.nodeValue);}return a;};U_XML.F_AppendValuesToObject=function(o,nl){if(!o){o={};}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var n=nl.item(i);o[(n.nodeType==this.K_iNODE_ATTRIBUTE)?n.value:n.nodeValue]=true;}return o;};U_XML.F_AppendUniqueValues=function(a,nl){if(!a){a=[];}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var n=nl.item(i);a.F_PushUnique((n.nodeType==this.K_iNODE_ATTRIBUTE)?n.value:n.nodeValue);}return a;};U_XML.F_GetXPath=function(_hAA2,_hOA2){var _hV82="";for(; _hOA2&&(_hOA2!=_hAA2); _hOA2=_hOA2.parentNode){_hV82="/" + _hOA2.nodeName + "[" + ( this.F_IndexOf( _hOA2.parentNode.selectNodes( _hOA2.nodeName ), _hOA2 ) + 1 ) + "]" + _hV82;}return(_hOA2?( "." + _hV82 ):"" );};U_XML.F_GetNextSiblingElement=function(n){return n.selectSingleNode("following-sibling::*");};U_XML.F_GetPreviousSiblingElement=function(n){return n.selectSingleNode("preceding-sibling::*[1]");};U_XML.F_GetNextElementOfSequence=function(n,_hFN1){if(_hFN1){return this.F_SelectSingleNode(n, "following-sibling::", _hFN1);}return n.selectSingleNode("following-sibling::"+n.nodeName);};U_XML.F_GetPreviousElementOfSequence=function(n,_hFN1){if(_hFN1){return this.F_SelectSingleNode(n, "preceding-sibling::", _hFN1);}return n.selectSingleNode( "preceding-sibling::" + n.nodeName + "[1]" );};U_XML.F_GetUniqueValue=function(_hD91,_hGN1,_hOA,_h3G1,_hWW){var _hR42={};var _hBZ1=_hD91.length;for(var i=0;i<_hBZ1;++i){_hR42[_hD91.item(i).value]=true;}return this._hXW(_hR42, _hGN1, _hOA, _h3G1, _hWW);};U_XML.F_GetUniqueValueFromArray=function(_hWZ1,_hGN1,_hOA,_h3G1,_hWW){var _hR42=_hWZ1.F_CreateDictionary();return this._hXW(_hR42, _hGN1, _hOA, _h3G1, _hWW);};U_XML._hXW=function(_hR42,_hGN1,_hOA,_h3G1,_hWW){if((_hWW!=false)&&_hGN1.match(/^(.*\D0*)(\d+)$/)){_hGN1=RegExp.$1;_h3G1=RegExp.$2;_hOA=true;}var i=_h3G1?parseInt(_h3G1):1;var _hS42=1073741823;var s=_hGN1;if(_hOA&&i<_hS42){s+= i++;}var _hQ52=_hS42;if(_hR42[s]&&i<_hS42){_hQ52=i;}var _h8Z1=1000;var _h082=0;while(_hR42[s]&&i<_hS42&&_h082<_h8Z1){s=_hGN1+i;i++;_h082++;}if(_hR42[s]){i=1;_h082=0;while(_hR42[s]&&i<_hQ52&&_h082<_h8Z1){s=_hGN1+i;i++;_h082++;}var _hE91="*#_abcdefghijklmnopqrstuvwxyz";var _hBZ1=_hE91.length;for(var j=0; j<_hBZ1&&_hR42[s]; j++){_h082=0;var _h4G1=_hE91.charAt(j);s=_hGN1+_h4G1;while(_hR42[s]&&_h082<_h8Z1){s=s+_h4G1;_h082++;}}}return s;};U_XML.F_GiveUniqueValue=function(n,_hSA2,_hNT1,_hD91,_hPF,_hWW){n.setAttribute(_hSA2, this.F_GetUniqueValue(_hD91, _hNT1, _hPF, null, _hWW));};U_XML.F_GiveUniqueName=function(n,_hNT1,_hD91,_hPF,_hWW){this.F_GiveUniqueValue(n, "name", _hNT1, _hD91, _hPF, _hWW);};U_XML.F_ReplaceNodeWithNodeList=function(n,nl){var _hH12=n.parentNode;var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){_hH12.insertBefore(nl.item(i), n);}_hH12.removeChild(n);};U_XML.F_ReplaceNodeWithArray=function(n,a){var _hH12=n.parentNode;var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){_hH12.insertBefore(a[i], n);}_hH12.removeChild(n);};U_XML.F_SetNodeName=function(n,_h4Q1){if(n.nodeName==_h4Q1){return n;}var _h7Z1=n.ownerDocument.createElement(_h4Q1);U_XML.F_CopyAttributes(_h7Z1, n, null, true);U_XML.F_AppendNodeList(_h7Z1, U_XML.F_RemoveNodes(n, "*"));if(n.parentNode){n.parentNode.replaceChild(_h7Z1, n);}return _h7Z1;};U_XML.F_CopyAttributes=function(_hT42,_hU42,_hW82,_hII,_hYW){var o=_hW82?_hW82.F_CreateDictionary():null;var nl=_hU42.selectNodes("@*");if(G_BrowserInfo.M_bIsFirefox){_hII=false;}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){var _hL92=nl.item(i);var _h4Q1=_hL92.name;if(o&&!o[_h4Q1]){continue;}if(_h4Q1==_hYW){continue;}if(_hII&&!U_XML.F_IsAttributeSpecified(_hU42, _hU42.attributes.getNamedItem(_h4Q1))){continue;}_hT42.setAttribute(_h4Q1, _hL92.value);}};U_XML.F_CopyAttribute=function(_hT42,_hU42,_h492){var _h552=_hU42.getAttribute(_h492);if(_h552!=null){_hT42.setAttribute(_h492, _h552);return true;}return false;};U_XML.F_ConstructFilter=function(_hV82,_hJQ1,_hWZ1,_hLM,_hM91,_h9E2){if(_hWZ1.length==0){if(!_h9E2){G_Debug.F_Alert("U_XML.F_ConstructFilter: Filter with no values and not = false is not supported. It will incorrectly return everything.");}return "";}var _hMM=[];for(var i=0;i<_hWZ1.length;i++){var _h552=_hWZ1[i];if(_hM91){_hMM.push( "translate(" + _hV82 + ", 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')" + _hJQ1 + _h552.toLowerCase().F_ToXPathString() );}else{_hMM.push(_hV82+_hJQ1+_h552.F_ToXPathString());}}return "[" + ( _h9E2?"not(":"" ) + _hMM.join( " " + _hLM + " " ) + ( _h9E2?")":"" ) + "]";};U_XML.F_ConstructInFilter=function(_hV82,_hWZ1,_hM91,_h9E2){return this.F_ConstructFilter(_hV82, "=", _hWZ1, "or", _hM91, _h9E2 );};U_XML.F_ConstructAttributeFilter=function(_hNG1,_hQF,_hWZ1,_hLM,_hM91,_h9E2){return this.F_ConstructFilter("@"+_hNG1, _hQF, _hWZ1, _hLM, _hM91, _h9E2);};U_XML.F_ConstructUnion=function(_hS02,_hFN1,_hHN1){var a=[];if(_hS02){a.push(_hS02);}a.push("*[self::");a.push( _hFN1.join( " | self::" ) );a.push("]");if(_hHN1){a.push(_hHN1);}return a.join("");};U_XML.F_SelectSingleNode=function(n,_hS02,_hFN1,_hHN1){return n.selectSingleNode(this.F_ConstructUnion(_hS02, _hFN1, _hHN1)+"[1]");};U_XML.F_SelectNodes=function(n,_hS02,_hFN1,_hHN1){return n.selectNodes(this.F_ConstructUnion(_hS02, _hFN1, _hHN1));};U_XML.F_GetAncestor=function(n,_h4Q1){return n.selectSingleNode( "ancestor::" + _h4Q1 + "[1]" );};U_XML.F_GetAncestorEx=function(n,_hFN1){return n.selectSingleNode( "(" + this.F_ConstructUnion( "ancestor::", _hFN1 ) + ")[last()]" );};U_XML.F_GetAncestorOrSelf=function(n,_h4Q1){return n?n.selectSingleNode( "ancestor-or-self::" + _h4Q1 + "[1]" ):null;};U_XML.F_GetAncestorOrSelfEx=function(n,_hFN1){return n?n.selectSingleNode( "(" + this.F_ConstructUnion( "ancestor-or-self::", _hFN1 ) + ")[last()]" ):null;};U_XML.F_GetClosestAncestorOrSelfEx=function(n,_hFN1){return n?n.selectSingleNode( "(" + this.F_ConstructUnion( "ancestor-or-self::", _hFN1 ) + ")[1]" ):null;};U_XML.F_GetAncestorOrSelfAttribute=function(n,_hIS){return n.selectSingleNode( "ancestor-or-self::*[@" + _hIS + "][1]" );};U_XML.F_IsAncestor=function(n,_hOT1){for(var _hOA2=n.parentNode;_hOA2;_hOA2=_hOA2.parentNode){if(_hOA2==_hOT1){return true;}}return false;};U_XML.F_GetSpecifiedAttributeValue=function(_hOA2,_hNG1){var _hL92=_hOA2.attributes.getNamedItem(_hNG1);return(_hL92&&U_XML.F_IsAttributeSpecified(_hOA2, _hL92))?_hOA2.getAttribute(_hNG1):null;};U_XML.F_SetAttributeString=function(n,_h5G1){var a=_h5G1.split(/\s+/g);var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){var _hIN1=a[i].split("=");var _h552=_hIN1[1];n.setAttribute(_hIN1[0], _h552.substr(1, _h552.length-2));}};U_XML.F_SetAttributes=function(a,_hNG1,_h552){var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){this.F_SetAttribute(a[i], _hNG1, _h552);}};U_XML.F_SetAttribute=function(n,_hNG1,_h552){n.removeAttribute(_hNG1);if(n.getAttribute(_hNG1)!=_h552){n.setAttribute(_hNG1, _h552);}};U_XML.F_SetAttributeValues=function(nl,_h552){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){nl.item(i).value=_h552;}};U_XML.F_SetNodeAttributeValues=function(nl,_hSA2,_h552){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;++i){nl.item(i).setAttribute(_hSA2, _h552);}};U_XML.F_RemoveAttribute=function(n,_h9Z1,_hNG1){this.F_RemoveAttributeFromNodeList( n.selectNodes( _h9Z1+"[@" + _hNG1 + "]" ), _hNG1 );};U_XML.F_RemoveAttributeFromNodeList=function(nl,_hNG1){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){nl.item(i).removeAttribute(_hNG1);}};U_XML.F_RemoveAttributes=function(a,_hNG1){var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){a[i].removeAttribute(_hNG1);}};U_XML.F_RemoveAllAttribute=function(n,_hNG1){this.F_RemoveAttributeFromNodeList( n.selectNodes( "descendant-or-self::*[@" + _hNG1 + "]" ), _hNG1 );};U_XML.F_GetNodeText=function(n){if(n){return n.nodeType==this.K_iNODE_ATTRIBUTE?n.value:n.text;}return "";};U_XML.F_GetCreateChild=function(n,_h4Q1){var _hP72=n.selectSingleNode(_h4Q1);if(_hP72){return _hP72;}return n.appendChild(n.ownerDocument.createElement(_h4Q1));};U_XML.F_AppendChild=function(n,_h4Q1){return n.appendChild(n.ownerDocument.createElement(_h4Q1));};U_XML.F_InsertNodePath=function(_hH12,_hPT1,_h6G1,_hV42){var d=_hH12.ownerDocument;var a=_hPT1.split("/");var _hAA2=null;var _hAC2=null;var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){var n=d.createElement(a[i]);if(i==0){_hAA2=n;_hH12.insertBefore(n, _hV42?_hV42:null);}else{_hAC2.appendChild(n);}_hAC2=n;}return _h6G1?_hAC2:_hAA2;};U_XML.F_GetCreateNodePath=function(_hH12,_hPT1,_h6G1,_hV42){var d=_hH12.ownerDocument;var a=_hPT1.split("/");var _hAA2=null;var _hAC2=_hH12;var _hBZ1=a.length;for(var i=0;i<_hBZ1;i++){var _hP72=_hAC2.selectSingleNode(a[i]);_hAC2=_hP72||_hAC2.insertBefore(d.createElement(a[i]),(!_hAA2&&_hV42)?_hV42:null);if(!_hAA2){_hAA2=_hAC2;}}return _h6G1?_hAC2:_hAA2;};U_XML.F_HaveSameNodeName=function(_hK82){var _h4Q1=_hK82[0].nodeName;var _hBZ1=_hK82.length;for(var i=1;i<_hBZ1;i++){if(_hK82[i].nodeName!=_h4Q1){return false;}}return true;};U_XML.F_HaveSameParent=function(_hK82){var _hH12=_hK82[0].parentNode;var _hBZ1=_hK82.length;for(var i=1;i<_hK82.length;i++){if(_hK82[i].parentNode!=_hH12){return false;}}return true;};U_XML.F_SerializeNode=function(_hAA2){if(G_BrowserInfo.M_bIsIE){return _hAA2.xml;}if(_hAA2.nodeType==U_XML.K_iNODE_DOCUMENT&&!_hAA2.doctype){return _hAA2.xml;}if(_hAA2.nodeType==U_XML.K_iNODE_ELEMENT&&!_hAA2.ownerDocument.doctype){return _hAA2.xml;}return(new C_XmlSerializer(_hAA2)).F_ToString();};U_XML.F_AlertInvalidUtf8Bom=function(_hX82){var i=_hX82.indexOf("\uFEFF");if(i!=-1){G_HAL.F_AlertError( "Found BOM at position " + i );}return(i!=-1);};U_XML.F_SerializeToHTML=function(n){var re=/<\s*(?!img|input|link|meta|area|br)([^>\/\s]+)([^>\/]*)\/>/gi;return n.xml.replace(re, this._hR4);};U_XML._hR4=function($0, $1, $2){return "<" + $1 + $2 + "></" + $1 + ">";};U_XML.F_SerializeNodeContentsToHTML=function(n){var _h192=this.F_SerializeToHTML(n);return _h192.replace(/^<[^>]*>|<\/[^>]*>$/g, "");};U_XML.F_CreateLookupByAttributeValue=function(_h2F2,_hSA2){var _hW42={};if(_h2F2&&_h2F2.length>0&&_hSA2){for(var i=0; i<_h2F2.length;++i){var n=_h2F2.item(i);var _h552=n.getAttribute(_hSA2);if(_h552){_hW42[_h552]=n;}}}return _hW42;};U_XML.F_IsAttributeSpecified=function(n,_hL92){if(G_BrowserInfo.M_bIsIE){return _hL92.specified;}var d=n.ownerDocument;if(d.doctype){var _hXX1=d._h31()[n.nodeName];return !(_hXX1&&_hXX1[_hL92.name]&&(_hXX1[_hL92.name]===_hL92.value));}return true;};