// script generated by Xtreeme SiteXpert
// sitemap and search engine creator
// http://www.xtreeme.com/sitexpert
// Copyright(C) 2001 Xtreeme GmbH

window.onload=initializeMenu;
var activePopup=null;
var activePopupTimeout;
var maxZ=1000;
var popupFrame;
var targetFrame;
var docLoaded=false;
var bIncBorder=true;

if(bBitmapPopups) bord=0;
function createMenuItem(popup,id,itemLink,itemText,popupArray,levelAttribs,bLast,popupHeight,parent)
{
  var itemType=0;
  if(itemText&&itemText.indexOf("(^1)")!=-1)itemType=1;
  if(itemText&&itemText.indexOf("(^2)")!=-1)itemType=2;
  var itemWnd=popupFrame.document.createElement("DIV");
  popup.appendChild(itemWnd);
  if(mac)
  {
    var brWnd=popupFrame.document.createElement("BR");
    popup.appendChild(brWnd)
  }
  addEvent(itemWnd,"mouseover",onItemOver,false);
  addEvent(itemWnd,"mouseout",onItemOut,false);
  addEvent(itemWnd,"mousedown",onItemClick,false);
  addEvent(itemWnd,"dblclick",onItemClick,false);
  itemWnd.owner=popup;
  itemWnd.id=id;
  with (itemWnd.style)
  {
    position="absolute";
    if(itemType==2)top=popupHeight-scrollHeight + 'px';
    else top=popupHeight + 'px';
    if (itemLink){
      cursor=(!IE4||version>=6)?"pointer":"hand";
    }
    else {
      cursor="default";
    }
    color=levelAttribs [4];
    if (!bBitmapPopups)
    {
      if (!bLast)
      {
        borderBottomColor=borderCol;
        borderBottomWidth=sep+'px';
        borderBottomStyle="solid";
      }
    }
    else left=popupLeftPad+vertSpace + 'px';
    if (!itemType)padding=vertSpace + 'px';
    paddingLeft=popupLeftPad+vertSpace + 'px';
    paddingRight=(popupRightPad<iconSize?iconSize:popupRightPad)+vertSpace + 'px';
    fontSize=levelAttribs[0];
    fontWeight=(levelAttribs[2])?"bold":"normal";
    fontStyle=(levelAttribs[3])?"italic":"normal";
    fontFamily=levelAttribs[7];
    setRealWidth(itemWnd,bBitmapPopups?popupWidth-popupLeftPad-popupRightPad-2*vertSpace:popupWidth,2*bord);
    }
  if (popupArray)itemWnd.popupArray=popupArray;
  if(itemType>0)
  {
    var arrow=popupFrame.document.createElement("IMG");
    itemWnd.appendChild(arrow);
    arrow.src=unescape(absPath)+imgFolder+"/scroll"+((itemType==1)?"up":"down")+".gif";
    itemWnd.style.textAlign="center";
    itemWnd.style.display="none";
  }
  else itemWnd.innerHTML=itemText;
  if(itemLink&&itemLink.indexOf(':/')==-1&&itemLink.indexOf(':\\')==-1) itemWnd.url=unescape(absPath)+itemLink;
  else itemWnd.url=itemLink;
  itemWnd.dispText=itemText;
  if (popupArray)
  {
    var expandArrow=popupFrame.document.createElement("IMG");
    itemWnd.appendChild(expandArrow);
    expandArrow.src=unescape(absPath)+imgFolder+"/sxicona.gif";
    with (expandArrow.style)
    {
      width=iconSize + 'px';
      height=iconSize + 'px';
      position="absolute";
      var itemRect=getClientRect(itemWnd);
      top=(itemRect.bottom-itemRect.top)/2-iconSize/2-2 + 'px';
      left=itemWnd.offsetWidth-iconSize-1 + 'px';
      }
  }
  return itemWnd.offsetHeight;
}

function setRealWidth(wnd,width,borderWidth)
{
  wnd.style.width=width-borderWidth + 'px';
  if (wnd.offsetWidth>width-borderWidth) wnd.style.width=width-parseInt(wnd.style.paddingLeft)-parseInt(wnd.style.paddingRight) + 'px';
}

function createPopupFromCode(arrayName,level)
{
  var popupName=arrayName+"popup";
  var popup=popupFrame.document.getElementById(popupName);
  if (popup)return popup;
  var levelAttribs;
  if (level > maxlev) {
    levelAttribs = eval ("lev" + maxlev) ;
  } else {
    levelAttribs = eval ("lev" + level) ;
  }
  popup=popupFrame.document.createElement("DIV");
  popupFrame.document.body.appendChild(popup);
  popup.id=popupName;
  popup.level=level;
  popup.highlightColor=levelAttribs[6];
  popup.normalColor=levelAttribs[4];
  popup.highlightBgColor=levelAttribs[8];
  popup.normalBgColor=levelAttribs[5];
  popup.scrVis=false;

  popup.style.zIndex=maxZ;
  popup.style.position="absolute";
  popup.style.width=popupWidth + 'px';
  popup.style.textAlign="left";
  if (!bBitmapPopups) {
    popup.style.borderColor=borderCol;
    popup.style.backgroundColor=levelAttribs[5];
    popup.style.borderWidth=bord + 'px';
    popup.style.borderStyle="solid";
  } else popup.style.backgroundColor="";
	
  addEvent(popup,"mouseout",onPopupOut,false);
  addEvent(popup,"mouseover",onPopupOver,false);

  var popupHeight=0;
  if (bBitmapPopups)
  {
    var source=document.getElementById('menubg4');
    if (source)
    {
      var imel=popupFrame.document.createElement("IMG");
      popup.appendChild(imel);
      imel.src=source.src;
      imel.id=popup.id+"openingImg"
      imel.style.position="absolute";
      imel.style.top='0px';
      popupHeight+=popupOpenHeight;
    }
  }

  var bgWnd=popupFrame.document.createElement("DIV");
  popup.appendChild(bgWnd);
  bgWnd.id=popup.id+"bgWnd";
  bgWnd.style.position="absolute";
  bgWnd.style.top=popupOpenHeight + 'px';
  bgWnd.style.width=popupWidth-2*bord + 'px';
  bgWnd.innerHTML='&nbsp;';
  if (bBitmapPopups)
  {
    var source=document.getElementById('menubg5');
    if (source) bgWnd.style.backgroundImage="url("+source.src+")";
  }
  else
  {
    bgWnd.style.backgroundColor=levelAttribs[5];
  }

  var array=eval(arrayName);
  var arrayItem;
  createMenuItem(popup,popup.id+"scrollUp","javascript:scrollUp('"+popup.id+"');","(^1)",null,levelAttribs,true,popupHeight,bgWnd);
  for(arrayItem=0;arrayItem<array.length/3;arrayItem++)
  {
    var popupArray=(array[arrayItem*3+2])?(arrayName+"_"+parseInt(arrayItem+1)):null;
    popupHeight+=createMenuItem(popup,null,array[arrayItem*3+1],array[arrayItem*3],popupArray,levelAttribs,(arrayItem == array.length/3-1),popupHeight,bgWnd);
  }
  createMenuItem(popup,popup.id+"scrollDown","javascript:scrollDown('"+popup.id+"');","(^2)",null,levelAttribs,true,popupHeight,bgWnd);
  popup.style.height=popupHeight+bord*2 + 'px';
  popup.maxHeight=popupHeight+bord*2 + 'px';
  var bottomImgHeight=0;
  if (bBitmapPopups)
  {
    var source=document.getElementById('menubg6');
    if (source)
    {
      var imel=popupFrame.document.createElement("IMG");
      popup.appendChild(imel);
      imel.src=source.src;
      imel.id=popup.id+"closingImg";
      imel.style.position="absolute";
      imel.style.top=popupHeight-1 + 'px';
      bottomImgHeight=imel.offsetHeight;
    }
  }
  bgWnd.style.height=popupHeight-popupOpenHeight + 'px';
  if(popup.offsetHeight>popupHeight+bord*2){
    popup.style.height=popupHeight + 'px';
    bIncBorder=false;
    popup.maxHeight=popupHeight;
  }
  return popup;
}

function closePopup(popupId)
{
  var popup=popupFrame.document.getElementById(popupId);
  if (popup)
  {
    if (popup.expandedWnd) closePopup (popup.expandedWnd.id);
    popup.style.display="none";
  }
  if (activePopup && activePopup.id==popupId) activePopup=null;
}

function absToRel(rect,refx,refy)
{
  var retval=new rct(rect.left-refx,rect.top-refy,rect.right-refx,rect.bottom-refy);
  return retval;
}

function openPopup(popup,x,y,bDontMove,refWnd)
{
  popup.style.left=x + 'px';
  popup.style.top=y + 'px';
  popup.style.display="";
  var popupRect=getClientRect(popup);
  var browserRect=getBrowserRect(popupFrame);
  var bResize=(popup.offsetHeight<popup.maxHeight);

  if (popupRect.right>browserRect.right)
  {
    if(refWnd.id&&refWnd.id.indexOf('top')==-1) popup.style.left=Math.max(0,refWnd.offsetLeft-popup.offsetWidth+levelOffset) + 'px';
    else popup.style.left=browserRect.right-popup.offsetWidth-5 + 'px';
  }
  var wnd1=popupFrame.document.getElementById(popup.id+"scrollDown");
  var wnd2=popupFrame.document.getElementById(popup.id+"scrollUp");
  var cv=mac?15:(bIncBorder?3:20);
  if ((popupRect.bottom>browserRect.bottom)||bResize)
  {
    var newtop=browserRect.bottom-popup.offsetHeight-cv;
    if(!menuHorizontal)bDontMove=false;
    if (newtop<0||bDontMove||bResize)
    {
      if(sepFrame&&!openSameFrame&&menuPos==3)
        popup.style.top=Math.max(browserRect.top,newtop) + 'px';
      var minNum=Math.min(popup.maxHeight,browserRect.bottom-popup.offsetTop-cv-(bIncBorder?0:bord*2));
      popup.scrVis=(minNum!=popup.maxHeight);
      setPopupHeight(popup,browserRect.top,minNum);
    }
    else popup.style.top=newtop + 'px';
  }
  wnd1.style.display=popup.scrVis?"":"none";
  wnd2.style.display=popup.scrVis?"":"none";
}

function setPopupHeight(popup,documentOffset,height)
{
  var wnd2=popupFrame.document.getElementById(popup.id+"scrollDown");
  var wnd4=popupFrame.document.getElementById(popup.id+"scrollUp");
  var wnd3=popupFrame.document.getElementById(popup.id+"bgWnd");
  var wnd1Height=0;
  if(bBitmapPopups)
  {
    var wnd1=popupFrame.document.getElementById(popup.id+"closingImg");
    var wnd5=popupFrame.document.getElementById(popup.id+"openingImg");
    wnd1.style.top=height-1 + 'px';
    wnd1Height=wnd1.offsetHeight;
  }
  wnd2.style.zIndex=maxZ+1;
  wnd4.style.zIndex=maxZ+1;
  popup.style.height=height + 'px';
  wnd3.style.height=height-popupOpenHeight-bord*2 + 'px';
  wnd2.style.top=height-wnd1Height-scrollHeight-(bIncBorder?bord*2:0) + 'px';
  scrollPopup(popup.id,0);
}

function scrollPopup(popupId,dir)
{
  var popup=popupFrame.document.getElementById(popupId);
  var popupRect=getClientRect(popup);
  var items=popup.getElementsByTagName("DIV");
  var i=(dir>0?0:items.length-1);
  var off=(dir>0?1:-1);
  var bFirst=true;
  var offset=dir*10;
  if(popup.scrVis)
  {
    popupRect.top+=scrollHeight;
    popupRect.bottom-=scrollHeight;
  }
  popupRect.bottom-=2*bord;
  for (;i<items.length&&i>=0;i+=off)
  {
    var item=items[i];
    if (!item.id||(item.id.indexOf("scroll")==-1&&item.id.indexOf("bgWnd")==-1))
    {
      var itemRect=getClientRect(item);
      if(bFirst&&dir==0){
        offset=popup.maxHeight-(item.offsetTop+item.offsetHeight)+(popup.scrVis?scrollHeight:0)-(bIncBorder?bord*2:0);
      }
      var relRect=absToRel(popupRect,itemRect.left,itemRect.top+offset);
      if (dir>0 && relRect.top<-scrollHeight && bFirst) return;
      if (dir<0 && itemRect.bottom+offset<popupRect.bottom-scrollHeight && bFirst) return;
      if(offset!=0)item.style.top=item.offsetTop+offset+ 'px';
      if(!mac)item.style.clip="rect("+relRect.top+","+relRect.right+","+relRect.bottom+","+relRect.left+")";
      if (relRect.bottom<0||relRect.top>item.offsetHeight)
        item.style.visibility="hidden";
      else
        item.style.visibility="visible";
      bFirst=false;
    }
  }
  if(popup.scrPos)popup.scrPos+=offset;
  else popup.scrPos=offset;
}

function scrollUp(popupId)
{
  scrollPopup(popupId,1);
}

function scrollDown(popupId)
{
  scrollPopup(popupId,-1);
}

function isChildOfActivePopup(popup)
{
  var wnd=activePopup;
  while(wnd)
  {
    if (wnd.id==popup.id)
      return true;
    wnd=wnd.expandedWnd;
  }
  return false;
}

function onPopupOver()
{
  if (activePopup && isChildOfActivePopup (this)) clearTimeout(activePopupTimeout);
}

function onPopupOut()
{
  onPopupOutImpl(this);
}

function onPopupOutImpl(popup)
{
  if (activePopup && isChildOfActivePopup (popup))
  {
    if (activePopupTimeout) clearTimeout (activePopupTimeout);
    activePopupTimeout=setTimeout("closePopup('"+activePopup.id+"');", closeDelay);
  }
}

function rct(left,top,right,bottom)
{
  this.left=left;
  this.top=top;
  this.right=right;
  this.bottom=bottom;
}

function getBrowserRect(doc)
{
  var left=0;
  var top=0;
  var right;
  var bottom;
  if(doc.pageXOffset)left=doc.pageXOffset;
  else if(doc.document.body.scrollLeft)left=doc.document.body.scrollLeft;
  if(doc.pageYOffset)top=doc.pageYOffset;
  else if(doc.document.body.scrollTop)top=doc.document.body.scrollTop;
  if(doc.innerWidth)right=left+doc.innerWidth;
  else if(doc.document.body.clientWidth)right=left+doc.document.body.clientWidth;
  if(doc.innerHeight)bottom=top+doc.innerHeight;
  else if(doc.document.body.clientHeight)bottom=top+doc.document.body.clientHeight;
  var retval=new rct(left,top,right,bottom);
  return retval;
}

function getClientRect(wnd)
{
  //if (wnd.getBoundingClientRect) return wnd.getBoundingClientRect ();
  var left=mac?document.body.leftMargin:0;
  var top=mac?document.body.topMargin:0;
  var right=0;
  var bottom=0;
  var par=wnd;
  while (par)
  {
    left+=par.offsetLeft;
    top+=par.offsetTop;
    if (par.offsetParent==par || par.offsetParent==popupFrame.document.body) break;
    par=par.offsetParent;
  }
  right=left+wnd.offsetWidth;
  bottom=top+wnd.offsetHeight;
  var retval=new rct(left,top,right,bottom);
  return retval;
}

function onItemClick()
{
  var item=this;
  if (item.url)
  {
    var startPos=item.dispText.indexOf('<!--');
    if (startPos!=-1)
    {
      var endPos = item.dispText.indexOf('-->',startPos);
      var trgFrame = item.dispText.substring (startPos+4,endPos);
      if (trgFrame=="_blank") window.open (item.url);
      else eval("parent.frames."+trgFrame).location.href=item.url;
    }
    else
    {
      var find=item.url.indexOf("javascript:");
      if (find!=-1)
        eval(item.url.substring(find));
      else
        targetFrame.location=item.url;
    }
  }
}

function onItemOver()
{
  var item=this;
  if (item.id&&item.id.indexOf("scroll")!=-1) return;
  if (item.owner.expandedWnd)
  {
    closePopup(item.owner.expandedWnd.id);
  }
  if (item.url&&item.url.indexOf("javascript:")==-1)
    window.status=item.url;
  else
    window.status="";
  item.style.color=item.owner.highlightColor;
  item.style.backgroundColor=item.owner.highlightBgColor;
  var items=item.owner.getElementsByTagName("DIV");
  var i=0;
  for (;i<items.length;i++)if(item!=items[i]&&(!items[i].id||items[i].id.indexOf("scroll")==-1))
  {
    items[i].style.backgroundColor=bBitmapPopups?"transparent":item.owner.normalBgColor;
    items[i].style.color=item.owner.normalColor;
  }
  if (item.popupArray)
  {
    var rect=getClientRect(item);
    var x=rect.right-levelOffset;
    var y=rect.top;
    var popup=createPopupFromCode(item.popupArray,item.owner.level+1);
    item.owner.expandedWnd=popup;
    openPopup(popup,x,y+levelVertOffset,false,item.owner);
  }
}

function onItemOut()
{
  var item=this;
  if (item.id&&item.id.indexOf("scroll")!=-1) return;
  item.style.color=item.owner.normalColor;
  item.style.backgroundColor=bBitmapPopups?"transparent":item.owner.normalBgColor;
}

function expandMenu(popupId,dum)
{
  
  if(!docLoaded)return;
  if (activePopup)
  {
    if (activePopup.id==popupId+"popup")
      clearTimeout(activePopupTimeout);
    else
      closePopup(activePopup.id);
  }
  var posRef=document.getElementById(popupId+"top");
  var rect=getClientRect(posRef);
  var x;
  var y;
	
  if(menuHorizontal)
  {
    x=rect.left;
    y=rect.bottom+popupOffset;
  }
  else
  {
    x=rect.right+popupOffset;
    y=rect.top;
  }
  if(sepFrame&&!openSameFrame)
  {
    var brRect=getBrowserRect(popupFrame);
    var wRect=getBrowserRect(window);
    switch (menuPos)
    {
      case 0:
        x=brRect.left;
        y+=brRect.top-wRect.top;
        break;
      case 1:
        x=brRect.right;
        y+=brRect.top-wRect.top;
        break;
      case 2:
        x+=brRect.left-wRect.left;
        y=brRect.top;
        break;
      case 3:
        x+=brRect.left-wRect.left;
        y=brRect.bottom;
        break;
    }
  }
  var popup=createPopupFromCode(popupId,0);
  openPopup(popup,x,y,true,posRef);
  activePopup=popup;
}

function collapseMenu(popupId)
{
  if(!docLoaded)return;
  var popup=popupFrame.document.getElementById(popupId+"popup");
  if(popup)onPopupOutImpl(popup);
}

function expandMenuNS(popupId,e,dItem)
{
}

function collapseMenuNS(popupId)
{
}

function initializeMenu()
{
  popupFrame=(sepFrame&&!openSameFrame)?parent.frames[contentFrame]:window;
  targetFrame=(sepFrame&&!openSameFrame)?parent.frames[cntFrame]:window;
  docLoaded=true;
}

function addEvent(obj,event,fun,bubble)
{
  if (obj.addEventListener)
    obj.addEventListener(event,fun,bubble);
  else
    eval("obj.on"+event+"="+fun);
}

function chgBg(item,color)
{
  var el=document.getElementById(item);
  var ela=document.getElementById(item+'a');
  if (!IE4||!ela)return;
  if (color==0)
  {
    if(!bBitmapScheme)el.style.background=tlmOrigBg;
    ela.style.color=tlmOrigCol;
  }
  else
  {
    if(!bBitmapScheme&&(color&1))el.style.background=tlmHlBg ;
    if(color&2)ela.style.color=tlmHlCol ;
  }
}

