//////////////////////////////////////////////////////////// // ActionBar Scriptlet Library // Developed by: Eugen Cretu at 20.08.2001 // Modified by: Eugen Cretu at 16.08.2001 // Modified by: Sebastian Thoene at 31.08.2004 compatibility with Mozilla // Description: Contains functions for changing the // style of action bar and view // //////////////////////////////////////////////////////////// var ie, ns if(navigator.appName == "Microsoft Internet Explorer"){ ie = true; } else { ns = true; } var allImages, allTags, allLinks, allSpans, allDivs, allTables, allFramesOrLayers, allHR allImages = document.images; //alternative: document.getElementsByTagName("img") allTags = (ie)?document.all:false; // not supportet by Mozilla allLinks = document.links; //alternative: document.getElementsByTagName("a") allSpans = document.getElementsByTagName("span"); allDivs = document.getElementsByTagName("div"); allTables = document.getElementsByTagName("table"); allHR = document.getElementsByTagName("hr"); allFramesOrLayers = (ie)?document.getElementsByTagName("iframe"):document.getElementsByTagName("ilayer"); function contains(a, b) { // Return true if node a contains node b. try { while (b.parentNode) if ((b = b.parentNode) == a) return true; return false; } catch(e) {}; } ///////////////////////////////////////////////////////////// // // Function: process_button() - Button Event handler // Parameters: none // Returns: void // // This function processes mouse and keyboard events on all // button elements (className contains "Btn" within a given // container. Button specific processing is sent to the buttonClick() // function. Information about the button can be stored in expandos, // STATE ( "On" , "Off" ) // IMG ( contains the base name and ID of the icon ) // ///////////////////////////////////////////////////////////// function process_button(eventNS) { var evEvent; //set the event IE-> window.event NS-> eventNS (ie)?evEvent=window.event:evEvent=eventNS; if (ie) { //CHANGE var btn = evEvent.srcElement; evEvent.cancelBubble = true; } else { var btn = evEvent.target; evEvent.stopPropagation(); } while( -1 == btn.className.indexOf( "Btn" ) ) { btn = btn.parentNode; //CHANGE if( !btn ) return; } var baseClass = btn.className.substring( 0 , btn.className.indexOf( "Btn" ) + 3 ); var btnImage = null; //if( btn.IMG ) btnImage = btn.getElementsByTagName("IMG")[0]; //CHANGE if( btn.getElementsByTagName("img")[0].src != "" ) btnImage = btn.getElementsByTagName("IMG")[0]; //CHANGE ?? var relatedTarget; //CHANGE switch( evEvent.type ) { case "mouseout" : (ie)?relatedTarget=evEvent.toElement:relatedTarget=evEvent.relatedTarget; //CHANGE //if( btn.contains(relatedTarget) ) return; //CHANGE // no contains-function in NS!!!!!!!! added one if( contains(btn, relatedTarget) ) return; //CHANGE if( btnImage ) { //btnImage.src = btnImage.src.substring( 0 , btnImage.src.length - 5 ) + "1.gif"; } if( btn.STATE ) { //STATE ???? btn.className = baseClass + btn.STATE; } else { btn.className = baseClass + "Off"; } break; case "mouseover" : (ie)?relatedTarget=evEvent.fromElement:relatedTarget=evEvent.relatedTarget; //CHANGE //if( btn.contains( relatedTarget ) ) return; //CHANGE if( contains(btn, relatedTarget) ) return; //CHANGE if( btnImage ) { //btnImage.src = btnImage.src.substring( 0 , btnImage.src.length - 5 ) + "2.gif"; } if( btn.STATE ) { var tmpState = btn.STATE == "Off" ? "Up" : "Down"; btn.className = baseClass + tmpState; } else { btn.className = baseClass + "Up"; } break; case "mousedown" : btn.className = baseClass + "Down"; break; case "mouseup" : if( btn.STATE ) { btn.STATE = btn.STATE == "Off" ? "On" : "Off"; var tmpState = btn.STATE == "On" ? "Down" : "Up"; btn.className = baseClass + tmpState; } else { btn.className = baseClass + "Up"; } break; case "click" : (ie)?evEvent.returnValue = doButtonClick(btn):evEvent.preventDefault(doButtonClick(btn)); //CHANGE break; case "dblclick" : (ie)?evEventreturnValue = doButtonClick(btn):evEvent.preventDefault(doButtonClick(btn)); //CHANGE break; case "keyup" : if( 13 == evEvent.keyCode ) { if( btn.STATE ) { btn.STATE = btn.STATE == "Off" ? "On" : "Off"; var tmpState = btn.STATE == "On" ? "Down" : "Up"; btn.className = baseClass + tmpState; } else { btn.className = baseClass + "Up"; } (ie)?evEvent.returnValue = doButtonClick(btn):evEvent.preventDefault(doButtonClick(btn)); //CHANGE } break; case "selectstart" : if( btn ) { (ie)?evEvent.returnValue = true:evEvent.preventDefault(); //CHANGE return false; } break; default : break; } } //////////////////////////////////////////////////////////////////// // // Function: doButtonClick() // Parameters: btn - Button Element which fired the event // Returns: event return value // // This function navigates to the first link contained in a button, // or performs a custom button action if one is defined on an individual page. // //////////////////////////////////////////////////////////////////// function doButtonClick(btn) { var oLink = btn.getElementsByTagName("a"); if( oLink.length ) { if( "_blank" == oLink[0].target ) { winComments = window.open( oLink[0].href ,"winComments" , "width=640,height=480,location=no,status=yes,resizable=yes,scrollbars=yes,menubar=yes,toolbar=no" ); winComments.focus(); if (ie) { event.returnValue = false; } else { btn.preventDefault(); } return false; } else if( !btn.ACTION ) { oLink[0].click(); return true; } } if( "function" == typeof(fnCustomAction)) { return fnCustomAction(btn); } } function changeStyleIn(tdObj){ tdObj.className='clsSubMenuIn'; return true; } function changeStyleOut(tdObj){ tdObj.className='clsSubMenuOut' return true; } function anonymousProcess(str){ strSearch='function anonymous()' n=str.indexOf(strSearch) if(n<0){ return str; } str=str.substring(n+2+strSearch.length,str.length) str=str.substring(0,str.length-1) //alert(str) return str.replace(/"/g,"""); } var divAB=null; function hideThis(){ divAB.style.visibility="hidden" return; } function showThis(){ divAB.style.visibility="visible" return; } function showPopup(evEvent){ (ie)?se=event.srcElement:se=evEvent.target; i=se.parentNode.param; if(arLink[i].length==1){ window.location.href=arLink[i][0].href; return false; } srcEl=se.parentNode.parentNode; posLeft=srcEl.offsetLeft-2; posTop=srcEl.offsetTop; posHeight=srcEl.offsetHeight; posWidth=srcEl.offsetWidth; nrOpt=arLink[i].length; var option= new Array; var pn=window.location.pathname; db=pn.substring(0, pn.lastIndexOf('.nsf')+5) maxLen=posWidth; for(ii=0;iimaxLen){ maxLen=ln; } } // posWidth=maxLen*6; posWidth-=2; posHeight=option.length*17; strHTML='' for(ii=0;ii')>0){ //alert(option[ii].name.toUpperCase()) strHTML+='' }else{ strHTML+='' }//end if HR }//end for strHTML+="

' strHTML+='
" divAB=document.getElementById("ACB") if(divAB==null){ divAB=document.createElement("DIV"); divAB.id="ACB" document.body.appendChild(divAB) } divAB.style.position="absolute" divAB.onmouseout=hideThis; divAB.onmouseover=showThis; divAB.style.pixelTop=(posTop+srcEl.offsetHeight) divAB.style.pixelLeft=(posLeft) divAB.style.width=posWidth divAB.style.visibility="visible" divAB.innerHTML=strHTML divAB.style.width = posWidth divAB.style.height = posHeight divAB.style.top = posTop+srcEl.offsetHeight divAB.style.left = posLeft+2 divAB.style.zIndex=1000 divAB.style.border="1px outset"; return false; } var arLink; function TransformActionBar(dummy, dummy, dummy, dummy) { bgColor = "#C0C0C0"; color = ""; face = ""; size = "8pt"; border = "0"; Links=allLinks; lastName=""; var j=-1, k=-1; arLink= new Array; for(i=0;i0){ newName=inl.substring(0,inl.lastIndexOf('\\')); if((newName!="")&&(newName==lastName)){ k++; arLink[j][k]= new Object; arLink[j][k].innerHTML=Links[i].innerHTML; arLink[j][k].href=Links[i].href; arLink[j][k].onclick=Links[i].onclick; arLink[j][k].target=Links[i].target; arLink[j][k].parElement=new Object(Links[i].parentNode) } else { j++; arLink[j]=new Array; arLink[j][0]=new Object; arLink[j][0].innerHTML=Links[i].innerHTML; arLink[j][0].href=Links[i].href arLink[j][0].onclick=Links[i].onclick; arLink[j][0].target=Links[i].target arLink[j][0].parElement=new Object(Links[i].parentNode) lastName=arLink[j][0].innerHTML; k=0; } lastName=newName; } else { j++; arLink[j]=new Array; arLink[j][0]=new Object; arLink[j][0].innerHTML=Links[i].innerHTML; arLink[j][0].href=Links[i].href arLink[j][0].onclick=Links[i].onclick; arLink[j][0].target=Links[i].target arLink[j][0].parElement=new Object(Links[i].parentNode) lastName=arLink[j][0].innerHTML; k=0; } } Table=allTables[0]; if(Table==null){return} try{ Table.id="ActionBar"; if((getUrl().indexOf('&PrintMode')>0)||(getUrl().indexOf('&NoBar')>0)){ Table.style.display="none"; } }catch(e){ } strImg=" ยป" for(i=0;i1){ Links[i].onclick=showPopup; } else { Links[i].onclick=arLink[i][0].onclick; } Links[i].target=arLink[i][0].target; inl=arLink[i][0].innerHTML; if(inl.lastIndexOf('\\')>0){ inl=inl.substring(0,inl.lastIndexOf('\\')); } Links[i].innerHTML=(arLink[i].length>1)? (inl+strImg):arLink[i][0].innerHTML; for(j=0;j0){ inl1=inl1.substring(inl1.lastIndexOf('\\')+1,inl1.length) } arLink[i][j].innerHTML=inl1; } //Links[i].parentElement=arLink[i][0].parElement; Links[i].className="clsLink" } var intTotalLinks = Links.length; for(i=arLink.length;i