C_Tab.js 13 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. function C_Tab(_hDR1, _hLN1, _hM2, _hF31){var doc=document;this._hXN1=_hLN1?_hLN1:null;this._hER1=doc.getElementById(_hDR1);this._hER1.onselectstart=U_DOM.F_HandleSelectStart;this._hER1.ondragstart=U_DOM.F_CancelEvent;this._hID1=( this._hER1.getAttribute( "HAL_scrollable" )=="true" );if(this._hID1){var tbl=this._hER1.parentNode.insertBefore(doc.createElement("table"), this._hER1);tbl.cellPadding="0";tbl.style.borderSpacing="0px";tbl.style.borderCollapse="collapse";tbl.style.width=this._hER1.currentStyle.width;this._hER1.style.width="auto";var tr=tbl.insertRow(-1);this._h4L1=tr.insertCell(-1);this._h4L1.innerHTML='<svg height="' + this._hER1.getAttribute( "HAL_scrollIconHeight" ) + '" width="' + this._hER1.getAttribute( "HAL_scrollIconWidth" ) + '" style="' + 'vertical-align:middle;"><use xlink:href="#' + this._hER1.getAttribute( "HAL_svgPreviousIcon" ) + '"/></svg>';this._h4L1.onmousedown=this._h5L1.bind(this);var td=tr.insertCell(-1);this._hE72=tr.insertCell(-1);this._hE72.innerHTML='<svg height="' + this._hER1.getAttribute( "HAL_scrollIconHeight" ) + '" width="' + this._hER1.getAttribute( "HAL_scrollIconWidth" ) + '" style="' + 'vertical-align:middle;"><use xlink:href="#' + this._hER1.getAttribute( "HAL_svgNextIcon" ) + '"/></svg>';this._hE72.onmousedown=this._hF72.bind(this);this._hFR1=td.appendChild(doc.createElement("div"));this._hFR1.appendChild(this._hER1);this._hFR1.style.width=this._hER1.currentStyle.width;this._hFR1.style.overflowX="hidden";this._hFR1.onscroll=this._hGX1.bind(this);}this._h671=this._hER1.getAttribute( "HAL_tabPanelsId" )||( _hDR1 + "_Panels" );this._hGR1=this._hER1.getAttribute("HAL_tabWidth");this._hJD1=( this._hER1.getAttribute( "HAL_tabOrientation" )=="bottom" );this._hER1.oTab=this;this._hER1._hF3=NaN;if(!this._hER1._hHH){this._hER1._hHH=true;this._hER1.rows.item(0).appendChild(doc.createElement("TD"));}this._hER1.className=this._hER1.className||"clsTabBox";if(!G_BrowserInfo.M_bIsIE){this._hER1.style.borderCollapse="separate";}this._hER1.cellPadding=0;this._hER1.cellSpacing=0;var _h0V=this._hER1.rows.item(0).cells.length;for(var i=0;i<_h0V;i++){var td=this._hER1.rows.item(0).cells.item(i);if(td.removed=="true"){td.style.display="none";}td.bBottomTabs=this._hJD1;if(i<_h0V-1){td.className=this._hJD1?"clsBottomTabBox_inactive":"clsTabBox_inactive";td.noWrap=true;this._hKD1(td);}else{td.setAttribute( "_hIZ1", "true" );td.className=this._hJD1?"clsBottomTabBoxLast":"clsTabBoxLast";td.style.filter="";}}if(G_BrowserInfo.M_bIsTouchDevice&&G_HAL.M_oLibraries["hal"]["enableFastClick"]){this._hLG1=new C_FastClick(this._hER1, this._hI31.bind(this));}else{this._hER1[G_BrowserInfo.M_bIsPointerEnabled?"onpointerdown":"onmousedown"]=C_Tab._hP91;}this._hHD();this._hH(true);var _hHR1=doc.getElementById(this._h671);this._hZ01=(_hHR1!=null);if(this._hZ01){_hHR1.className=_hHR1.className||(this._hJD1?"clsBottomTabPanels":"clsTabPanels");if(this._hER1.currentStyle.width!="auto"){var _h771=this._hER1.offsetWidth;if(_h771>0){_hHR1.style.width=_h771+"px";}}}this.F_SetActiveTab((typeof _hM2=="number")?_hM2:0, _hF31);this._hG3();};C_Tab.prototype._hKD1=function(td){if(td._h011){return;}var a=[];for(var i=td.childNodes.length-1;i>=0;i--){var _hLZ1=td.childNodes.item(i);a.unshift(td.removeChild(_hLZ1));}var _hCU1=td.appendChild(document.createElement("DIV"));_hCU1.className="clsTabDivInner";for(var i=0;i<a.length;i++){_hCU1.appendChild(a[i]);}var ids=td.getAttribute("HAL_ids");if(ids){_hCU1.setAttribute("HAL_ids", ids);td.removeAttribute("HAL_ids");}td._h011=true;if(this._hGR1){td.style.width=this._hGR1;td.style.textAlign="center";}};C_Tab.prototype.F_Detach=function(){if(this._hLG1){this._hLG1.F_Detach();}if(this._hID1){this._hZ7();var tbl=this._hER1.parentNode.parentNode.parentNode.parentNode.parentNode;tbl.parentNode.replaceChild(this._hER1, tbl);this._h4L1=null;this._hE72=null;this._hFR1=null;}var doc=document;var cells=this._hER1.rows.item(0).cells;for(var i=0;i<cells.length;i++){var td=cells.item(i);td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerover":"onmouseover"]=null;td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerout":"onmouseout"]=null;td.style.display="";}var _hHR1=this._hZ01?doc.getElementById(this._h671):null;if(_hHR1){var nl=_hHR1.childNodes;var _hBZ1=nl.length;for(var i=0;i<_hBZ1;i++){var div=nl.item(i);if(div.tagName=="DIV"){div.style.display="block";}}}this._hER1[G_BrowserInfo.M_bIsPointerEnabled?"onpointerdown":"onmousedown"]=null;this._hH();this._hER1.oTab=null;this._hER1=null;};C_Tab.prototype.F_GetId=function(){return this._hER1.id;};C_Tab.prototype.F_IsTabRemoved=function(_hSE){return(this._hER1.rows.item(0).cells.item(_hSE).removed=="true");};C_Tab.prototype.F_SetVisibility=function(_h6X1){this._hER1.style.visibility=_h6X1?"visible":"hidden";var _hHR1=this._hZ01?document.getElementById(this._h671):null;if(_hHR1){_hHR1.style.visibility=_h6X1?"visible":"hidden";}};C_Tab.prototype.F_SetTabDisplay=function(_hSE,_hNV1,_hE1){if(!_hNV1&&(this.F_GetActiveTab()==_hSE)){this.F_SetActiveTab(_hE1);}var td=this._hER1.rows.item(0).cells.item(_hSE);if(td.removed=="true"){td.style.display="none";}else{td.style.display=_hNV1?"":"none";}};C_Tab.prototype.F_GetEnabled=function(){return Boolean(this._hAU1);};C_Tab.prototype.F_SetEnabled=function(_hFU1){this._hAU1=_hFU1;var _hG72=this._hER1.rows.item(0).cells;var _hBZ1=_hG72.length;for(var i=0;i<_hBZ1;i++){var _hVA2=_hG72.item(i);_hVA2.disabled=!_hFU1;U_Accessibility.F_SetAriaStateAndProperty(_hVA2, "aria-disabled", !_hFU1);}};C_Tab.prototype.F_SetTabEnabled=function(_hSE,_hFU1){var _hVA2=this._hER1.rows.item(0).cells.item(_hSE);_hVA2.disabled=!_hFU1;U_Accessibility.F_SetAriaStateAndProperty(_hVA2, "aria-disabled", !_hFU1);};C_Tab.prototype.F_GetActiveTab=function(){return this._hER1._hF3;};C_Tab.prototype.F_SetActiveTab=function(_hSE,_hF31){this._h871(this._hER1.rows.item(0).cells.item(_hSE), true, _hF31);};C_Tab.prototype.F_SetActiveTabToFirstVisible=function(_hF31){var _h0V=this._hER1.rows.item(0).cells.length;for(var i=0;i<_h0V;i++){var td=this._hER1.rows.item(0).cells.item(i);if(td.removed!="true"){this.F_SetActiveTab(i, _hF31);return;}}};C_Tab.prototype._h871=function(_hIR1,_hIH,_hF31){var doc=document;var cells=this._hER1.rows.item(0).cells;var _h0V=cells.length;var _hOP=_h0V-1;var _h971=0;for(;_h971<cells.length;_h971++){if(cells.item(_h971)==_hIR1){break;}}var _hF3=this._hER1._hF3;if((_h971>=_hOP)||(_hF3==_h971)||_hIR1.disabled ||(_hIR1.removed=="true")){return;}if((_hF31!==false)&&this._hXN1&&this._hXN1.F_Tab_OnClick){this._hXN1.F_Tab_OnClick(this, _hF3, _h971);}this._hER1._hF3=_h971;var _h1V=this._hER1.id+"_Panel";for(var i=0;i<_h0V;i++){var td=cells.item(i);var _hHX1=td.getAttribute("HAL_tabPanelId")||(_h1V+i);if(i==_h971){if(i<_hOP){td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerover":"onmouseover"]=C_Tab._hJH;td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerout":"onmouseout"]=C_Tab._hCL;if(_hIH){td.className=this._hJD1?"clsBottomTabBox_active":"clsTabBox_active";}else{td.className=this._hJD1?"clsBottomTabBox_active_hover":"clsTabBox_active_hover";}if(G_HAL.M_oLibraries["hal"]["enableHighContrastMode"]){td.classList.add("clsHighContrastSelected");}var _hIX1=doc.getElementById(_hHX1);if(_hIX1){_hIX1.style.display="block";}}}else{if(td.getAttribute( "_hIZ1" )=="true" ){td.className=this._hJD1?"clsBottomTabBoxLast":"clsTabBoxLast";}else{td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerover":"onmouseover"]=C_Tab._hEC;td[G_BrowserInfo.M_bIsPointerEnabled?"onpointerout":"onmouseout"]=C_Tab._hTE;td.className=this._hJD1?"clsBottomTabBox_inactive":"clsTabBox_inactive";}if(i<_hOP){var _hIX1=doc.getElementById(_hHX1);if(_hIX1){_hIX1.style.display="none";}}}}this._h01();if((_hF31!==false)&&this._hXN1&&this._hXN1.F_Tab_OnAfterClick){this._hXN1.F_Tab_OnAfterClick(this, _hF3, _h971);}};C_Tab._hJH=function(e){this.className=this.bBottomTabs?"clsBottomTabBox_active_hover":"clsTabBox_active_hover";if(G_HAL.M_oLibraries["hal"]["enableHighContrastMode"]){this.classList.add("clsHighContrastSelected");}};C_Tab._hCL=function(e){this.className=this.bBottomTabs?"clsBottomTabBox_active":"clsTabBox_active";if(G_HAL.M_oLibraries["hal"]["enableHighContrastMode"]){this.classList.add("clsHighContrastSelected");}};C_Tab._hEC=function(e){this.className=this.bBottomTabs?"clsBottomTabBox_inactive_hover":"clsTabBox_inactive_hover";if(G_HAL.M_oLibraries["hal"]["enableHighContrastMode"]){this.classList.add("clsHighContrastHover");}};C_Tab._hTE=function(e){this.className=this.bBottomTabs?"clsBottomTabBox_inactive":"clsTabBox_inactive";};C_Tab.prototype._hI31=function(_h692){for(var el=U_DOM.F_GetElementNotInShadowDom(_h692);el.nodeName!="TABLE";el=el.parentNode){if(el.tagName=="TD"){if(el.getAttribute( "_hIZ1" )=="true" ){var _hLN1=this._hXN1;if(_hLN1&&_hLN1.F_Tab_OnSpaceClick){_hLN1.F_Tab_OnSpaceClick(this);}}else{this._h871(el);}}}};C_Tab._hP91=function(e){if(G_HAL.M_oTestListener&&G_HAL.M_oTestListener.F_TestListener_TabOnMouseDown){G_HAL.M_oTestListener.F_TestListener_TabOnMouseDown(e, this);}if(e.button==U_DOM.K_iLeftMouseButton){for(var el=U_DOM.F_GetElementNotInShadowDom(e.target);el.nodeName!="TABLE";el=el.parentNode){if(el.tagName=="TD"){if(el.getAttribute( "_hIZ1" )=="true" ){var _hLN1=this.oTab._hXN1;if(_hLN1&&_hLN1.F_Tab_OnSpaceClick){_hLN1.F_Tab_OnSpaceClick(this);}}else{this.oTab._h871(el);}}}}};C_Tab.prototype._hHD=function(){if(!G_HAL.M_oLibraries["hal"]["enableAccessibility"]){return;}this._hER1.setAttribute( "role", "tablist" );var _h1V=this._hER1.id+"_Panel";var _h0V=this._hER1.rows.item(0).cells.length;for(var i=0;i<_h0V;i++){var _hDD2=this._hER1.rows.item(0).cells.item(i);_hDD2.setAttribute( "tabIndex", "-1" );_hDD2.setAttribute( "role", "tab" );if(_hDD2.getAttribute( "_hIZ1" )=="true" ){_hDD2.setAttribute( "role", "presentation" );continue;}var _hWA2=_hDD2.getElementsByTagName("IMG");if(_hWA2.length!=0){_hWA2.item(0).alt=_hDD2.getAttribute( "title" )||"";}var _hHX1=_hDD2.getAttribute("HAL_tabPanelId")||(_h1V+i);var _h6L1=document.getElementById(_hHX1);if(_h6L1){_h6L1.setAttribute( "role", "tabpanel" );_h6L1.setAttribute("aria-labelledby", _hDD2.uniqueID);}}};C_Tab.prototype._hH=function(_hLC2){if(!G_HAL.M_oLibraries["hal"]["enableAccessibility"]){return;}if(_hLC2){this._hER1.onkeydown=this._h4O1.bind(this);}else{this._hER1.onkeydown=null;}};C_Tab.prototype._h01=function(){if(!G_HAL.M_oLibraries["hal"]["enableAccessibility"]){return;}var _hU22=this.F_GetActiveTab();var _h0V=this._hER1.rows.item(0).cells.length-1;for(var i=0;i<_h0V;i++){var _hDD2=this._hER1.rows.item(0).cells.item(i);_hDD2.setAttribute( "tabIndex", ( i==_hU22 )?"0":"-1" );U_Accessibility.F_SetAriaStateAndProperty(_hDD2, "aria-selected",(i==_hU22));}};C_Tab.prototype._h2V=function(_hV22){return(!_hV22.disabled&&_hV22.getAttribute( "_hIZ1" ) != "true"&&_hV22.style&&_hV22.style.display != "none"&&_hV22.style.visibility != "hidden" );};C_Tab.prototype._hPP=function(_hQP){var _hH72=-1;var _h111=false;var _h0V=this._hER1.rows.item(0).cells.length;for(var i=0;i<_h0V;i++){var _hDD2=this._hER1.rows.item(0).cells.item(i);if(this._h2V(_hDD2)){if(_h111){_hH72=i;break;}else if(_hH72<0){_hH72=i;}}if(!_h111&&i==_hQP){_h111=true;}}return _hH72;};C_Tab.prototype._hFC=function(_hQP){var _hH72=-1;var _h111=false;var _h0V=this._hER1.rows.item(0).cells.length;for(var i=_h0V-1;i>=0;i--){var _hDD2=this._hER1.rows.item(0).cells.item(i);if(this._h2V(_hDD2)){if(_h111){_hH72=i;break;}else if(_hH72<0){_hH72=i;}}if(!_h111&&i==_hQP){_h111=true;}}return _hH72;};C_Tab.prototype._h4O1=function(e){if(!G_HAL.M_oLibraries["hal"]["enableAccessibility"]||( e.target.getAttribute( "role" ) != "tab" ) ){return;}var _hU22=this.F_GetActiveTab();switch(e.keyCode){case U_DOM.K_iKeyArrowDown:case U_DOM.K_iKeyArrowRight:U_DOM.F_CancelEvent(e);_hU22=this._hPP(_hU22);if(_hU22>=0){this.F_SetActiveTab(_hU22);this._hER1.rows.item(0).cells.item(_hU22).focus();}break;case U_DOM.K_iKeyArrowUp:case U_DOM.K_iKeyArrowLeft:U_DOM.F_CancelEvent(e);_hU22=this._hFC(_hU22);if(_hU22>=0){this.F_SetActiveTab(_hU22);this._hER1.rows.item(0).cells.item(_hU22).focus();}break;}};C_Tab.prototype.F_SetTabLabel=function(_hQP,_h052){var td=this._hER1.rows.item(0).cells.item(_hQP);if(td){td.firstChild.firstChild.innerText=_h052;}};C_Tab.prototype.F_Resize=function(_h852){if(!this._hID1){return;}this._h4L1.style.display="";this._hE72.style.display="";this._hFR1.style.width=Math.F_NonNeg(_h852-(this._h4L1.offsetWidth+this._hE72.offsetWidth))+ "px";if(this._hFR1.scrollWidth==this._hFR1.offsetWidth){this._h4L1.style.display="none";this._hE72.style.display="none";this._hFR1.style.width=_h852+"px";}this._hG3();};C_Tab.prototype._hGX1=function(e){this._hG3();};C_Tab.prototype._h5L1=function(e){this._hZ7();if(!this._h4L1.disabled){this._hDL=new C_ScrollLeftTween(this._hFR1, this._hFR1.scrollLeft-200);this._hDL.F_Play();}};C_Tab.prototype._hF72=function(e){this._hZ7();if(!this._hE72.disabled){this._hDL=new C_ScrollLeftTween(this._hFR1, this._hFR1.scrollLeft+200);this._hDL.F_Play();}};C_Tab.prototype._hG3=function(){if(!this._hID1){return;}var _hFU1=(this._hFR1.scrollLeft>0);this._h4L1.disabled=!_hFU1;this._h4L1.setAttribute( "HAL_disabled", _hFU1?"false":"true" );var _hFU1=(this._hFR1.scrollLeft<(this._hFR1.scrollWidth-this._hFR1.offsetWidth));this._hE72.disabled=!_hFU1;this._hE72.setAttribute( "HAL_disabled", _hFU1?"false":"true" );};C_Tab.prototype._hZ7=function(){if(this._hDL){this._hDL.F_Cancel();this._hDL=null;}};