// barra UOL //
writeUOLBar(BarraNumero,BarraCor1,BarraCor2);

// copyright //
writeCopyright();

// colunas que serao ajustadas pelo equalize() //
cols = [ 'col-centro','col-direita','col-esquerda' ]

var bFs = ($('barrauol')) ? $('barrauol').offsetWidth/98.8 : 0 ;
function equalize() {
	maxHeight = 0;
	for(i=0,n=arguments.length;i<n;i++) cols.push(arguments[i]);
	for(i=0,n=cols.length;i<n;i++) if($(cols[i])) if($(cols[i]).clientHeight > maxHeight) maxHeight = $(cols[i]).clientHeight;
	for(i=0,n=cols.length;i<n;i++) if($(cols[i])) $(cols[i]).style.height = maxHeight/bFs  +'em';
}

equalize();

function reequalize(){
  for( var i in cols ) if($(cols[i])) $(cols[i]).style.height = "";
  for( var i in DEban ) placePos(i, findPos(i+'-area'), DEban[i]);
  
  equalize(); 
}


// encontra posição de elementos //
function findPos(bId, sum) {
	obj = $(bId);
	var curtop = 0;
	if(obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if(obj.y) curtop += obj.y;
	return curtop;
}

// posiciona elementos na tela //
function placePos(bId, pos, sum) {
	if(bFs != 0) $(bId).style.top = (sum+pos)/bFs+'em';
}

// pega o subcanal de tipo de banner de acordo com a url
function getSubchan() {
	var dir = [ 'podcast' ];
	var canal = [ 'musicapodcast' ];
	for(var i=0;i<dir.length;i++) 
		if (location.href.indexOf('musica.uol.com.br/'+dir[i]) != -1)
			return canal[i];
	if (location.href == 'http://musica.uol.com.br/' || location.href == 'http://musica.uol.com.br/index.jhtm')
		return 'capa';
	return 'outros';
}

// config banners
var DEpopcfg ="POPmusi"; // Popup
var DEsite="uolbr";		// Site, este valor tambem é usado no parametro affiliate
var DEchan="musica";	// Canal
var DEsubc=getSubchan();
var Expble=1;
var DEconn=document.body; DEconn.style.behavior='url(#default#clientCaps)'; DEconn=(DEconn.connectionType=='lan')?1:0;
var DEban = [];

// mostra banners //
var DEt=new Date(); DEt=DEt.getTime(); DErand=Math.floor(DEt*1000*Math.random());
var scw=0,sch=0; if(screen.height){scw=screen.width;sch=screen.height;}

function DEshow(ad,pos,sum,num){
if(document.getElementById('banner-'+ad+'-area') && ((ad=='218x174' && screen.width>1000) || ad!='218x174') ) {
	document.write('<'+'scr'+'ipt type="text/javascript" src="http://bn.uol.com.br/js.ng/site='+DEsite+'&amp;chan='+DEchan+'&amp;subchan='+DEsubc+'&amp;affiliate='+DEsite+DEchan+'&amp;size='+ad+'&amp;page='+pos+'&amp;conntype='+DEconn+'&amp;expble='+Expble+'&amp;reso='+scw+'x'+sch+'&amp;tile='+DErand+'?"><\/scr'+'ipt>');
		if(typeof(num)=='undefined') { nn=''; } else { nn='-'+num; }
		if(ad!='1x1'){
			placePos('banner-'+ad+nn, findPos('banner-'+ad+nn+'-area'), sum); // se não é popup, posiciona na tela
			DEban['banner-'+ad+nn] = sum;
		}
		
		// adição de javascript para solucionar espaço vazio do banner 180x150 das matérias
		if(ad=="180x150") { 
			var loadBanner=window.setInterval( function() { 
			  var banner=document.getElementById('banner-'+ad).childNodes;
			  var width = document.getElementById('banner-'+ad+'-area').offsetWidth;
			  for(var i=0; i<banner.length;i++) {
				document.getElementById('banner-'+ad+'-area').appendChild(banner[i]);
			  }
			  if( width != document.getElementById('banner-'+ad+'-area').offsetWidth){
				  reequalize();
				  if( document.getElementById('banner-'+ad+'-area').offsetWidth - width >= 10 && !existsClass( document.getElementsByTagName("body")[0], "tag-banner-materia" ) )
				  {
            addClass( document.getElementsByTagName("body")[0], "tag-banner-materia" );
          }
				  window.clearInterval(loadBanner);
			  } 
			}, 500 );
		}			
	}
}


// popup //
if(document.cookie.indexOf(DEpopcfg)==-1) { 
	document.cookie=DEpopcfg+"0"; 
	DEshow('1x1',11); 
}
	
	
function switchMenuFloat(){
  if(document.getElementById('menu-aberto').offsetHeight==0){
    document.getElementById('menu-fechado').style.display="none";
    document.getElementById('menu-aberto').style.display="block";
  }else{
    document.getElementById('menu-fechado').style.display="block";
    document.getElementById('menu-aberto').style.display="none";
  }
}

// função para reajustar altura de iframes, de acordo com seu conteúdo //
function adjustIframeHeight(obj){
	var doc = obj.contentWindow.document;
	var tamFrame = doc.getElementById("corpo").offsetHeight;
	obj.style.height = tamFrame + 'px';

	// ajusta banners //
	reequalize();
}

// Altera aba selecionada
function changeAba( obj ){
  var ul = obj;
  do {
	ul = ul.parentNode;
  }
  while( ul.tagName.toUpperCase() != "UL" )

  var li = ul.getElementsByTagName("li");

  for(var i=0; i<li.length; i++) {
    removeClass( li[i], "ativo" );
  }
  addClass( obj.parentNode , "ativo" );
}

// funções para manipular classes de objetos DOM //
function getArrayFromClasses( obj )
{
  var classes = obj.className.split(" ");
  if( classes.length == 1 && classes[0] == "" )
  {
    classes = new Array();
  }  
  
  return classes;
}

function setClassesStringFromArray( classes )
{
  return classes.join(" ");
}

function addClass( obj, className )
{
  var classes = getArrayFromClasses( obj );
  classes.push( className );
  obj.className = setClassesStringFromArray( classes );
}

function removeClass( obj, className )
{
  var classes = getArrayFromClasses( obj );
  for(var i in classes)
  {
    if(classes[i] == className)
    {
      classes.splice(i,1);
    }
  }
  obj.className = setClassesStringFromArray( classes );  
}

function clearClasses( obj )
{
  var classes = new Array();
  obj.className = setClassesStringFromArray( classes );
}

function changeClass( obj, classNameold, className )
{
  var classes = getArrayFromClasses( obj );
  for(var i in classes)
  {
    if(classes[i] == classNameold)
    {
      classes[i]=className;
    }
  }
  obj.className = setClassesStringFromArray( classes );  
}

function existsClass( obj, className )
{
  var classes = getArrayFromClasses( obj );
  for(var i in classes)
  {
    if(classes[i] == className)
    {
      return true;
    }
  }
  return false;
}

// função para adicionar o "onclick" nos itens com submenus //
var ultimoMenu = "";
var multiplosAtivos = false;
function menuLink(){ 
  if (document.getElementById("menu")){
    var span;
		var objA = document.getElementById("menu").getElementsByTagName("a");
		for (var i=0; i<objA.length;i++){
			if (objA[i].href=="javascript://"){
			  span = document.createElement("span");
			  addClass( span, "ico-mais" );
			  objA[i].appendChild(span);
				
				// metodo de click //
        objA[i].onclick = function(){
					// varre todos links
          for (var j=0; j<objA.length;j++){
						if (existsClass(objA[j].parentNode,"ativo")){
							// guarda ultimo LI ativo
              ultimoMenu= objA[j];
						}
					}
					
					// verifica se pode fechar menu
          if ( multiplosAtivos && ultimoMenu!="" && ultimoMenu!=this){
						removeClass(ultimoMenu.parentNode, "ativo");
						changeClass(ultimoMenu,"menos","mais");
					}
					
          
          if (existsClass(this,"mais")){
						addClass(this.parentNode,"ativo");
						changeClass(this,"mais","menos");			
					} else if (existsClass(this,"menos")){
						removeClass(this.parentNode, "ativo");
						changeClass(this,"menos","mais");
					}
					
					// seta sombra, caso seja menu flutuante
					if (document.getElementById('menu-aberto') && document.getElementById('menu-aberto').className=="menu-float" && typeof galeriasTPL.setSombraMenu() != "undefined") galeriasTPL.setSombraMenu();

					// ajusta banners //
					reequalize();
				}
			}
		}
	}
}
menuLink(); 


/*GERADOR DE COMBOS*/
function generateCombos(){
  var ul = document.getElementsByTagName("ul");
  var ol = document.getElementsByTagName("ol");
  var list = new Array();
  var a;
  var select;
  var option;
  var form;
  var funcao;
  
  for(var i = 0; i < ul.length; i++ ){
    list.push( ul[i] );
  }

  for(var i = 0; i < ol.length; i++ ){
    list.push( ol[i] );
  }
  
  for( i in list ){
    if( list[i].className.indexOf("toCombo") >= 0 ){
      a = list[i].getElementsByTagName("a");
      form = document.createElement("form");
      select = document.createElement("select");
      funcao = list[i].title;
      if (funcao!=""){
        // adicionar a linha abaixo para cada função específica
        //if (funcao=="teste") select.onchange=teste;
      } else {
        select.onchange = function(){
		  var target = this.options[this.selectedIndex].getAttribute("target");
		  if (target=="_blank") window.open(this.value);
		  else location.href=this.value;
        }
      }
      
      for( var j = 0; j < a.length; j++ ){
        option = document.createElement("option");
        
        for( var k = 0; k < a[j].attributes.length; k++ ){
          option.setAttribute( (a[j].attributes[k].nodeName!="href")?a[j].attributes[k].nodeName:"value", a[j].attributes[k].nodeValue );
        }
        option.innerHTML = a[j].innerHTML;
        select.appendChild( option );
      }
     
      form.appendChild( select );
      
      list[i].parentNode.insertBefore( form, list[i] );
      list[i].parentNode.removeChild( list[i] );
    }
  }
}
generateCombos();


// EOF
