G_ResManager.js 8.5 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 G_ResManager={};G_ResManager._hK4=G_HAL.M_sPath+"hal/res/hal_strings.dtd";G_ResManager._hJ21=G_HAL.M_sPath+"hal/res/cptf.xml";G_ResManager._h4M1=[];G_ResManager.F_AddListener=function(_hLN1){this._h4M1.F_PushUnique(_hLN1);};G_ResManager.F_RemoveListener=function(_hLN1){this._h4M1.F_RemoveItem(_hLN1);};G_ResManager.F_ClearResources=function(){if(this._hM81&&this._hM81.documentElement){U_XML.F_RemoveNodes(this._hM81.documentElement, "*");}};G_ResManager.F_LoadResources=function(_hV52,_hLN1,_hTO1){G_HAL.F_VerifyDependencies("C_MultiFileRequest");this._hKF=_hLN1;var a=G_HAL.F_GetFilesNotLoaded(_hV52);this._h3K=new C_MultiFileRequest(this, a, null, _hTO1);this._h3K.F_Send();};G_ResManager.F_AbortLoadResources=function(){if(this._h3K){this._h3K.F_Abort();this._h3K=null;}this._hKF=null;};G_ResManager.F_GetResourcesDoc=function(){return this._hM81?this._hM81:null;};G_ResManager.F_AddResourcesDoc=function(d,_h8A2){if(!d){return;}this._h4M1.F_CallEach( "F_ResManager_OnBeforeAddResourcesDoc", d, _h8A2?_h8A2:"" );if(!this._hM81){var _h982=U_XML.F_CreateDocument();_h982.appendChild(U_XML.F_ImportNode(_h982, d.documentElement));this._hM81=_h982;return;}this._hK(d);var _hLM1=this._hM81.selectSingleNode("/resources");var nl=d.selectNodes("/resources/*");var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){_hLM1.appendChild(U_XML.F_ImportNode(d, nl.item(i)));}if(G_Debug.F_IsDebugEnabled()){var o={};var nl=_hLM1.selectNodes( ".//*[not(ancestor::xmlFragment)][not(ancestor::*[@isTemplate])][not(ancestor::*[self::treeView | self::listView])]/@id" );var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var _hJE2=nl.item(i).value;if(o[_hJE2]){alert( "Resources added with duplicate id: " + _hJE2 );break;}o[_hJE2]=true;}}};G_ResManager.F_AddResourceXML=function(_hTD2){var d=U_XML.F_LoadString(this, _hTD2, false, false);this.F_AddResourcesDoc(d);};G_ResManager._hK=function(d){var nl=d.selectNodes("/resources/propertySheetExtension");for(var i=0;i<nl.length;i++){var _hL4=nl.item(i);var _hJE2=_hL4.getAttribute("refPropertySheet");var _hAS=this._hM81.selectSingleNode( "resources/propertySheet[@id='" + _hJE2 + "']" );var _hU32=new C_TokenList( _hAS.getAttribute( "extendedBy" )||"" );_hU32.F_Add(_hJE2);_hAS.setAttribute("extendedBy", _hU32.F_ToString());this._hB( _hAS, _hL4, "properties", "group" );this._hB( _hAS, _hL4, "namedSets", "namedSet" );this._hB( _hAS, _hL4, "objects", "object" );}};G_ResManager._hB=function(_hAS,_hL4,_hMQ,_h3W){var _hH12=U_XML.F_GetCreateChild(_hAS, _hMQ);var nl=_hL4.selectNodes(_hMQ+"/" + _h3W);var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var _hMM1=nl.item(i);var _hP72=_hH12.selectSingleNode( _h3W+"[@name='" + _hMM1.getAttribute( "name" ) + "']" );if(_hP72){this._hJ3(_hP72, _hMM1.selectNodes("*"));}else{_hH12.appendChild(U_XML.F_ImportNode(this._hM81, _hMM1));}}};G_ResManager._hJ3=function(_hH12,nl){var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){_hH12.appendChild(U_XML.F_ImportNode(this._hM81, nl.item(i)));}};G_ResManager.F_GetResource=function(_hAE2){var n=this._hM81?this._hM81.selectSingleNode( "resources//*[@id='" + _hAE2 + "'][not(ancestor::xmlFragment)]" ):null;if(n){n=n.cloneNode(true);n.removeAttribute("id");}return n;};G_ResManager._hK21=function(d){this._h4W=d;};G_ResManager.F_AddStringsDoc=function(d,_h4I){if(!d){return;}if(!this._h4W){this._hK21(d);return;}var _hNQ=U_XML.F_ImportNode(d, d.selectSingleNode("/stringTable"));if(!_hNQ){return;}var nl=_hNQ.selectNodes("component/section/string");var _hL21=this._h4W.selectSingleNode("/stringTable/component/section");if(!_hL21){_hL21=U_XML.F_GetCreateChild( U_XML.F_GetCreateChild( this._h4W.documentElement, "component" ), "section" );}var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var _hV32=nl.item(i);var _hOQ=this._hN81(_hV32.getAttribute("id"));if(_hOQ){if(!_h4I){continue;}_hOQ.parentNode.removeChild(_hOQ);}_hL21.appendChild(_hV32.parentNode.removeChild(_hV32));}};G_ResManager.F_SetLocale=function(_hPB2){this._hQB2=_hPB2;};G_ResManager.F_GetLocale=function(){return this._hQB2;};G_ResManager.F_ClearStrings=function(){if(this._h4W&&this._h4W.documentElement){U_XML.F_RemoveNodes(this._h4W.documentElement, "*");}};G_ResManager.F_LoadStrings=function(_hV52,_hLN1,_hTO1){G_HAL.F_VerifyDependencies("C_MultiFileRequest");var a=this._h02(_hV52);this._hAM=_hLN1;this._hGT=new C_MultiFileRequest(this, a, null, _hTO1);this._hGT.F_Send();};G_ResManager.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 );};G_ResManager._h02=function(_hV52){if(!this._hQB2){G_HAL.F_AlertError( "G_ResManager.F_SetLocale must be called before loading strings." );}if(!_hV52){_hV52=[];}for(var i=0;i<_hV52.length;i++){var _h8A2=_hV52[i];if(_h8A2.substr( _h8A2.length-".xml".length ) != ".xml" ){_hV52[i]=( _h8A2+"_" + this._hQB2 + ".xml" );}}_hV52.unshift(this._hK4,G_HAL.M_sPath+"hal/res/hal_strings_" + this._hQB2 + ".xml",G_HAL.M_sPath+"hal/res/hal_strings_not_localized.xml");if(window["G_CPTF"]){_hV52.unshift(this._hJ21);}return G_HAL.F_GetFilesNotLoaded(_hV52);};G_ResManager.F_AbortLoadStrings=function(){if(this._hGT){this._hGT.F_Abort();this._hGT=null;}this._hAM=null;};G_ResManager._hS9=function(_hV52,_hEZ){for(var i=0;i<_hV52.length;i++){var _h8A2=_hV52[i];if(!G_HAL.F_FileHasBeenLoaded(_h8A2)){var _hX82=_hEZ[_h8A2];if(_hX82===null){continue;}var d=U_XML.F_LoadString(this, _hX82, false, false);this.F_AddResourcesDoc(d);G_HAL.F_AddFileToLoadedList(_h8A2);}}var _hLN1=this._hKF;this.F_AbortLoadResources();if(_hLN1&&_hLN1.F_ResManager_OnResourcesLoaded){_hLN1.F_ResManager_OnResourcesLoaded(_hV52);}};G_ResManager._hRE=function(_hV52,_hEZ){for(var i=0;i<_hV52.length;i++){var _h8A2=_hV52[i];if(!G_HAL.F_FileHasBeenLoaded(_h8A2)){var _hX82=_hEZ[_h8A2];if(_hX82===null){continue;}if(_h8A2==this._hJ21){G_CPTF.F_Init(_hX82);}else if(_h8A2==this._hK4){this.M_sStringTableDTD='<!DOCTYPE stringTable [\n' + _hX82 + '\n]>\n';}else{var d=U_XML.F_LoadStringWithDTD(this, _hX82, this.M_sStringTableDTD, true, false);this.F_AddStringsDoc(d, true);}G_HAL.F_AddFileToLoadedList(_h8A2);}}var _hLN1=this._hAM;if(_hLN1){this.F_AbortLoadStrings();if(_hLN1&&_hLN1.F_ResManager_OnStringsLoaded){_hLN1.F_ResManager_OnStringsLoaded(_hV52);}}};G_ResManager.F_Request_OnComplete=function(_hWU1){var _hW52=_hWU1.F_GetError();if(_hW52){G_HAL.F_AlertError(_hW52.F_GetErrorSummary()+"\n" + _hW52.F_GetErrorDetails());return;}var _hEZ=_hWU1.F_GetFileContents();var _hV52=_hWU1.F_GetFileNames();switch(_hWU1){case this._h3K:this._hS9(_hV52, _hEZ);break;case this._hGT:this._hRE(_hV52, _hEZ);break;}};G_ResManager.F_ApplyResStrings=function(_h5I){var nl=_h5I.querySelectorAll("[HAL_ids]");var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var el=nl.item(i);var ids=el.getAttribute("HAL_ids");var s=el.innerText?this.F_GetOptionalString(ids):this.F_GetString(ids);if(s){el.innerText=s;}}var nl=_h5I.querySelectorAll("[HAL_idsTooltip]");var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var el=nl.item(i);var ids=el.getAttribute("HAL_idsTooltip");var s=el.title?this.F_GetOptionalString(ids):this.F_GetString(ids);if(s){el.title=s;}}var nl=_h5I.querySelectorAll("[HAL_idsPlaceholder]");var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var el=nl.item(i);el.setAttribute("placeholder", this.F_GetString( el.getAttribute( "HAL_idsPlaceholder" ) ) );}if(G_HAL.M_oLibraries["hal"]["enableAccessibility"]){var nl=_h5I.querySelectorAll("[HAL_idsAriaLabel]");var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var el=nl.item(i);el.setAttribute( "aria-label", this.F_GetString( el.getAttribute( "HAL_idsAriaLabel" ) ) );}}};G_ResManager.F_GetOptionalString=function(ids){var _hV32=this._hN81(ids);if(!_hV32){return null;}if(arguments.length>1){return this._hL6(_hV32, arguments);}return _hV32.text;};G_ResManager.F_GetString=function(ids){var _hV32=this._hN81(ids);if(!_hV32){G_HAL.F_AlertError( "String ID not found: " + ids );return "---------";}if(arguments.length>1){return this._hL6(_hV32, arguments);}return _hV32.text;};G_ResManager._hN81=function(ids){if(!this._h4W||!ids){return null;}return this._h4W.nodeFromID(ids);};G_ResManager._hL6=function(_hV32,_hA82){var s="";for(var n=_hV32.firstChild;n;n=n.nextSibling){if(n.nodeName=="#text"){s+= n.text;}else if(n.nodeName=="param"){var sIndex=n.getAttribute("index");var iIndex=sIndex?parseInt(sIndex):1;s+= _hA82[iIndex];}}return s;};