	/**********************************************************************************   
	ScrollText 
	*   Copyright (C) 2001 Thomas Brattli
	*   This script was released at DHTMLCentral.com
	*   Visit for more great scripts!
	*   This may be used and changed freely as long as this msg is intact!
	*   We will also appreciate any links you could give us.
	*
	*   Made by Thomas Brattli
	*
	*   Script date: 09/23/2001 (keep this date to check versions) 
	*********************************************************************************/
	function lib_bwcheck(){ //Browsercheck (needed)
		this.ver=navigator.appVersion
		this.agent=navigator.userAgent
		this.dom=document.getElementById?1:0
		this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0
		this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
		this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
		this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
		this.ie=this.ie4||this.ie5||this.ie6
		this.mac=this.agent.indexOf("Mac")>-1
		this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
		this.ns4=(document.layers && !this.dom)?1:0;
		this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
		return this
	}
	var bw=lib_bwcheck()
	/*****************

	You set the width and height of the divs inside the style tag, you only have to
	change the envelope, Remember to set the clip the same as the width and height.
	You can remove the divUp and divDown layers if you want. 
	This script should also work if you make the envelope position:relative.
	Then you should be able to place this inside a table or something. Just remember
	that Netscape crash very easily with relative positioned divs and tables.

	Updated with a fix for error if moving over layer before pageload.

	****************/


	//If you want it to move faster you can set this lower, it's the timeout:
	var speed = 30

	//Sets variables to keep track of what's happening
	var loop, timer

	//Object constructor
	function makeObj(obj,nest){
		nest=(!nest) ? "":'document.'+nest+'.'
		this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  		this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
		this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
		this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
		this.up=goUp;this.down=goDown;
		this.moveIt=moveIt; this.x=0; this.y=0;
		this.obj = obj + "Object"
		eval(this.obj + "=this")
		return this
	}

	// A unit of measure that will be added when setting the position of a layer.
	var px = bw.ns4||window.opera?"":"px";

	function moveIt(x,y){
		this.x = x
		this.y = y
		this.css.left = this.x+px
		this.css.top = this.y+px
	}

	//Makes the object go up
	function goDown(move){
		if (this.y>-this.scrollHeight+oCont.clipHeight-5){
		    SetaAbaixo.style.display = "";
			this.moveIt(0,this.y-move)
				if (loop) setTimeout(this.obj+".down("+move+")",speed)
		}
		else
		    SetaAbaixo.style.display = "none";
		    
		if(this.y < 0){   
		    SetaAcima.style.display = "";
		}else{   
		    SetaAcima.style.display = "none";
		}
	}
	//Makes the object go down
	function goUp(move){
		if (this.y<0){
		    SetaAcima.style.display = "";
			this.moveIt(0,this.y-move)
			if (loop) setTimeout(this.obj+".up("+move+")",speed)
		}
		else
		    SetaAcima.style.display = "none";
		
	    if(this.y>-this.scrollHeight+oCont.clipHeight-5){   
		    SetaAbaixo.style.display = "";
		}else{   
		    SetaAbaixo.style.display = "none";
		}
	}

	//Calls the scrolling functions. Also checks whether the page is loaded or not.
	function scroll(speed){
		if (scrolltextLoaded){
			loop = true;
			if (speed>0) oScrollMenu.down(speed)
			else oScrollMenu.up(speed)
		}
	}

	//Stops the scrolling (called on mouseout)
	function noScroll(){
		loop = false
		if (timer) clearTimeout(timer)
	}
	//Makes the object
	
	var scrolltextLoaded = false
	
	function scrolltextInit(){
	    if(envelope){
	        if(parseInt(envelope.style.height)>conteudo.offsetHeight)
	            envelope.style.height=conteudo.offsetHeight + 5 + 'px';
	        else envelope.style.height = 220;
	    
		    oCont = new makeObj('envelope')
		    oScrollMenu = new makeObj('conteudo','envelope')
		    oScrollMenu.moveIt(0,0)
		    oCont.css.visibility = "hidden"
		    scrolltextLoaded = true
    		
		    SetaAcima.style.display = "none";

	        if(parseInt(envelope.style.height)<conteudo.offsetHeight)
		        SetaAbaixo.style.display = "";
	    }else scrolltextLoaded = false;
	    
	}
	
	//Call the init on page load if the browser is ok...
	//if (bw.bw) onload = scrolltextInit

	/***************
	Multiple Scripts
	If you have two or more scripts that use the onload event, probably only one will run (the last one).
	Here is a solution for starting multiple scripts onload:
	1. Delete or comment out all the onload assignments, onload=initScroll and things like that.
	2. Put the onload assignments in the body tag like in this example, note that they must have braces ().
	Example: <body onload="initScroll(); initTooltips(); initMenu();">
	**************/







function Browser() {
  var ua, s, i;
  this.isIE    = false;  
  this.isNS    = false;  
  this.version = null;

  ua = navigator.userAgent;

  s = "MSIE";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isIE = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  // Treat any other "Gecko" browser as NS 6.1.

  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = 6.1;
    return;
  }
}

var browser = new Browser();

//----------------------------------------------------------------------------
// Code for handling the menu bar and active button.
//----------------------------------------------------------------------------

var activeButton = null;
var timerMenu;

// Capture mouse clicks on the page so any active button can be
// deactivated.

if (browser.isIE)
  document.onmouseover = pageMousedown;
else
  document.addEventListener("onmouseover", pageMousedown, true);

function fechaMenu() {
  var el;
  if (activeButton == null)
    return;

  if (getContainerWith(window.document, "DIV", "menu") == null) {
    resetButton(activeButton);
    activeButton = null;
    MostraCombos(false);
    MM_swapImgRestore();
  }
}

function teste(){
      if (activeButton == null)
        return;

    resetButton(activeButton);
    activeButton = null;
}

function pageMousedown(event) {
  var el;
  if (activeButton == null)
    return;

  if (browser.isIE)
    el = window.event.srcElement;
  else
    el = (event.target.tagName ? event.target : event.target.parentNode);

  if (el == activeButton)
    return;

    clearTimeout(timerMenu);
    timerMenu = null;   

  if (getContainerWith(el, "DIV", "menu") == null) {
    timerMenu = setTimeout('teste()', 800);
  }
 
  //MostraCombos(false);
  MM_swapImgRestore();
}

function buttonClick(event, menuId) {
  var button;
  
  OcultaCombos(false);

  if (browser.isIE)
    button = window.event.srcElement;
  else
    button = event.currentTarget;

  button.blur();

  if (button.menu == null) {
    button.menu = document.getElementById(menuId);
    menuInit(button.menu);
  }

  if (activeButton != null)
    resetButton(activeButton);

  if (button != activeButton) {
    depressButton(button);
    activeButton = button;
  }
  else
    activeButton = null;

  return false;
}

function buttonMouseover(event, menuId) {
  var button;

  if (browser.isIE)
    button = window.event.srcElement;
  else
    button = event.currentTarget;

  if (activeButton != null && activeButton != button)
    buttonClick(event, menuId);
}

function depressButton(button) {
  var x, y;
  
  button.className += " menuButtonActive";

  x = getPageOffsetLeft(button);
  y = getPageOffsetTop(button) + button.offsetHeight;

  if (browser.isIE) {
    x += button.offsetParent.clientLeft + button.width-10;
    y += button.offsetParent.clientTop - button.height;
  }

  button.menu.style.left = x + "px";
  button.menu.style.top  = y + "px";
  button.menu.style.visibility = "visible";
  OcultaCombos(false);
}

function resetButton(button) {
  removeClassName(button, "menuButtonActive");

  if (button.menu != null) {
    closeSubMenu(button.menu);
    button.menu.style.visibility = "hidden";
    MostraCombos(false);
    MM_swapImgRestore();
  }
}


function menuMouseover(event) {
  var menu;
  if (browser.isIE)
    menu = getContainerWith(window.event.srcElement, "DIV", "menu");
  else
    menu = event.currentTarget;

  if (menu.activeItem != null)
    closeSubMenu(menu);
}

function menuItemMouseover(event, menuId) {
  var item, menu, x, y;
  if (browser.isIE)
    item = getContainerWith(window.event.srcElement, "A", "menuItem");
  else
    item = event.currentTarget;
  menu = getContainerWith(item, "DIV", "menu");

  if (menu.activeItem != null)
    closeSubMenu(menu);
  menu.activeItem = item;

  item.className += " menuItemHighlight";

  if (item.subMenu == null) {
    item.subMenu = document.getElementById(menuId);
    menuInit(item.subMenu);
  }
  x = getPageOffsetLeft(item) + item.offsetWidth;
  y = getPageOffsetTop(item);

  var maxX, maxY;

  if (browser.isNS) {
    maxX = window.scrollX + window.innerWidth;
    maxY = window.scrollY + window.innerHeight;
  }
  if (browser.isIE && browser.version < 6) {
    maxX = document.body.scrollLeft + document.body.clientWidth;
    maxY = document.body.scrollTop  + document.body.clientHeight;
  }
  if (browser.isIE && browser.version >= 6) {
    maxX = document.documentElement.scrollLeft + document.documentElement.clientWidth;
    maxY = document.documentElement.scrollTop  + document.documentElement.clientHeight;
  }
  maxX -= item.subMenu.offsetWidth;
  maxY -= item.subMenu.offsetHeight;


/*  if (x > maxX)
    x = Math.max(0, x - item.offsetWidth - item.subMenu.offsetWidth
      + (menu.offsetWidth - item.offsetWidth));

  y = Math.max(0, Math.min(y, maxY));
*/

  item.subMenu.style.left = x + "px";
  item.subMenu.style.top  = y + "px";
  item.subMenu.style.visibility = "visible";

  if (browser.isIE)
    window.event.cancelBubble = true;
  else
    event.stopPropagation();
}

function closeSubMenu(menu) {
  if (menu == null || menu.activeItem == null)
    return;

  if (menu.activeItem.subMenu != null) {
    closeSubMenu(menu.activeItem.subMenu);
    menu.activeItem.subMenu.style.visibility = "hidden";
    menu.activeItem.subMenu = null;
  }
  removeClassName(menu.activeItem, "menuItemHighlight");
  menu.activeItem = null;
}

function menuInit(menu) {
  var itemList, spanList
  var textEl, arrowEl;
  var itemWidth;
  var w, dw;
  var i, j;

  if (browser.isIE) {
    menu.style.lineHeight = "2.5ex";
    spanList = menu.getElementsByTagName("SPAN");
    //for (i = 0; i < spanList.length; i++)
      //if (hasClassName(spanList[i], "menuItemArrow")) {
       // spanList[i].style.fontFamily = "Webdings";
        //spanList[i].firstChild.nodeValue = "4";
     // }
  }

  itemList = menu.getElementsByTagName("A");
  if (itemList.length > 0)
    itemWidth = itemList[0].offsetWidth;
  else
    return;
    
  for (i = 0; i < itemList.length; i++) {
    spanList = itemList[i].getElementsByTagName("SPAN")
    textEl  = null
    arrowEl = null;
    for (j = 0; j < spanList.length; j++) {
      if (hasClassName(spanList[j], "menuItemText"))
        textEl = spanList[j];
      if (hasClassName(spanList[j], "menuItemArrow"))
        arrowEl = spanList[j];
    }
    //if(textEl)  alert(itemWidth + "- (" + textEl.offsetWidth + " + " + arrowEl.offsetWidth + ")");
    if (textEl != null && arrowEl != null)
      //if(((itemWidth - (textEl.offsetWidth + arrowEl.offsetWidth))) != 20)
        textEl.style.paddingRight = (itemWidth - (textEl.offsetWidth + arrowEl.offsetWidth)) + "px";
  }

  if (browser.isIE) {
    //if(textEl)  alert(textEl.style.paddingRight);
    w = itemList[0].offsetWidth;
    itemList[0].style.width = w + "px";
    dw = itemList[0].offsetWidth - w;
    w -= dw;
    itemList[0].style.width = w + "px";
  }
}

function getContainerWith(node, tagName, className) {
  while (node != null) {
    if (node.tagName != null && node.tagName == tagName &&
        hasClassName(node, className))
      return node;
    node = node.parentNode;
  }

  return node;
}

function hasClassName(el, name) {
  var i, list;
  list = el.className.split(" ");
  for (i = 0; i < list.length; i++)
    if (list[i] == name)
      return true;

  return false;
}

function removeClassName(el, name) {
  var i, curList, newList;
  if (el.className == null)
    return;
  newList = new Array();
  curList = el.className.split(" ");
  for (i = 0; i < curList.length; i++)
    if (curList[i] != name)
      newList.push(curList[i]);
  el.className = newList.join(" ");
}

function getPageOffsetLeft(el) {
  var x;
  x = el.offsetLeft;
  if (el.offsetParent != null)
    x += getPageOffsetLeft(el.offsetParent);

  return x;
}

function getPageOffsetTop(el) {
  var y;
  y = el.offsetTop;
  if (el.offsetParent != null)
    y += getPageOffsetTop(el.offsetParent);

  return y;
}

function fnAbrirMenu(id, scroll) {
    var strConteudo, aux;
    var isScroll = (scroll == true);
    
    strConteudo = "";
    aux = "onpropertychange='envelope.style.visibility=this.style.visibility;conteudo.style.visibility=this.style.visibility;'";
    
    strConteudo += "<div id='" + id + "' class='menu' onmouseover='menuMouseover(event);if(timerMenu){clearTimeout(timerMenu);timerMenu=null;}' " + (isScroll?aux:"") + ">" + 
	                    "<table border='0' cellspacing='0' cellpadding='0'>" + 
	                    "<tr valign='bottom' height='5'>" + 	                        "<td width='5' align='left' style='border-top: 1px solid #D3DDE3;border-left: 1px solid #D3DDE3;background-color:#ECF0F2;'><img src='spacer.gif' width='5' height='5' border='0'></td>" + 	                        "<td width='190' nowrap align='left' style='border-top: 1px solid #D3DDE3;background-color:#ECF0F2;'><img src='spacer.gif' width='5' height='5' border='0'></td>" + 	                        "<td width='5' align='right'><img src='../../images/fundo_menu_RT_borda.gif'></td>" + 
	                    "</tr>" + 
	                    "<tr valign='bottom' height='5'>" + 
                            "<td width='5' style='border-left: 1px solid #D3DDE3;background-color:#ECF0F2'><img src='spacer.gif' width='5' height='5' border='0'></td>" + 
                            "<td style='background-color:#ECF0F2;'>";
                       
    if(isScroll)
        strConteudo += "<a class='menuItem' href='#' onmouseover='scroll(-2)' onmouseout='noScroll()'><div id='SetaAcima' style='background-color:#ecf0f2; text-align:center; display:none;'><font style='font-family:Wingdings 3;'>r</font></div></a>" +
                            "<div id='envelope' style='background-color:#ecf0f2; width:160px; height:220px; overflow:hidden; visibility:hidden;'>" + 
                                "<div id='conteudo' style='background-color:#ecf0f2; position:relative; visibility:hidden;'>";

    return strConteudo + "<TABLE>";
}

function fnCriarMenuItem(Desc, link, submenu){
    var strConteudo;
    strConteudo = "";
    
    if(submenu == null || submenu == "")
        strConteudo += "<tr><td><a class='menuItem' href='#' onclick=\"" + link +  ";fechaMenu();\"><div onmouseover=\"this.innerText = '• ' + this.innerText;\" onmouseout=\"this.innerText = this.innerText.replace('• ', '');\">" + Desc + "</div></a></td></tr>"; 
    else
        strConteudo += "<tr><td><a class='menuItem' href='#' onclick='return false;' onmouseover=\"menuItemMouseover(event, '" + submenu + "');\"><span class='menuItemText'>" + Desc + "&nbsp;</span><span class='menuItemArrow'><img src='../../images/arrows.gif' border='0'></span></a></td></tr>";
  
    return strConteudo;
}

function fnFecharMenu(scroll){
    var strConteudo;
    var isScroll = (scroll == true);
    
    strConteudo = "";

    if(isScroll)
        strConteudo += "</div></div>" +
                       "<a class='menuItem' href='#' onmouseover='scroll(2)' onmouseout='noScroll()'><div id='SetaAbaixo' style='background-color:#ecf0f2; text-align:center; display:none;'><font style='font-family:Wingdings 3;'>s</font></div></a>";

    strConteudo +=" </td>" + 
                    "<td style='border-right: 1px solid #D3DDE3; background-color:#ecf0f2;' width='5' align='right'><img src='spacer.gif' width='5' height='5' border='0'></td>" + 
                "</tr>" + 
	            "<tr valign='bottom' height='4'>" + 	                "<td width='5' align='left' style='border-bottom: 1px solid #D3DDE3;border-left: 1px solid #D3DDE3;background-color:#ECF0F2;'><img src='spacer.gif' width='5' height='4' border='0'></td>" + 	                "<td align='left' style='border-bottom: 1px solid #D3DDE3;background-color:#ECF0F2;'><img src='spacer.gif' width='4' height='5' border='0'></td>" + 	                "<td width='5' align='right' valign=top><img src='../../images/fundo_menu_RD_borda.gif'></td>" + 
	            "</tr>" + 
                "</table>" + 
            "</div>";
    
    return "</TABLE>" + strConteudo;
}

function OcultaCombos(oDocument){	var aCombos;	var aIframes;		if (oDocument)	{		aCombos		= oDocument.getElementsByTagName("SELECT");		aIframes	= oDocument.frames;	}	else 	{		aCombos = document.getElementsByTagName("SELECT");		aIframes	= document.frames;	}			for (var i = 0; i < aCombos.length; i++)		aCombos[i].style.display = "none";		for (var i = 0 ; i < aIframes.length; i++)		OcultaCombos(aIframes[i].document);}function MostraCombos(oDocument){	var aCombos;	var aIframes;		if (oDocument)	{		aCombos		= oDocument.getElementsByTagName("SELECT");		aIframes	= oDocument.frames;	}	else 	{		aCombos = document.getElementsByTagName("SELECT");		aIframes	= document.frames;	}			for (var i = 0; i < aCombos.length; i++)		aCombos[i].style.display = "";		for (var i = 0 ; i < aIframes.length; i++)		MostraCombos(aIframes[i].document);		}
