// config da barra
var BarraNumero = 24;
var BarraCor1 = '#7F8DA8'; // cor clara
var BarraCor2 = '#667077'; // cor escura

var dC = document;
function $(id) {
	return document.getElementById(id);
}

// 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(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 existsClass( obj, className )
{
  var classes = getArrayFromClasses( obj );
  for(i in classes)
  {
    if(classes[i] == className)
    {
      return true;
    }
  }
  return false;
}

// Formata altura do frame depois de carregado
function resizeFrame(obj)
{
  var container = obj.contentWindow.document.getElementById("pagina");
  if( typeof bFs == "undefined") bFs = 10;
  
  obj.style.height = container.offsetHeight / bFs + "em";
  reequalize();
}

// Altera aba selecionada
function changeAba( obj )
{
  var ul = obj.parentNode.parentNode;
  var a = ul.getElementsByTagName("a");
  
  for(var i=0; i<a.length; i++)
  {
    removeClass( a[i], "ativo" );
  }
  addClass( obj, "ativo" );
}

// Altera bloco exibido 
function showBlock( objName, objEl, objId )
{
  var container = document.getElementById(objName);
  var el = container.getElementsByTagName(objEl);
  for( var i=0; i<el.length; i++ )
  {
    removeClass( el[i], "show" );
    removeClass( el[i], "hide" );
    addClass( el[i], "hide" );
  }
  
  removeClass( el[ objId ], "hide" );
  addClass( el[ objId ], "show" );
}

// Exibe imagem padrão quando erro no carregamento do thumb
function thumbError( img )
{
  var container = img;
  var thumb = null;
  var re = /(.*\/)([a-z0-9_-]*)_album\.jhtm(\?[a-z0-9=]*)?/i;
  var dados;
  var estacoes = [
    { "link" : "http://diversao.uol.com.br/album/", "imagens" : "http://d.i.uol.com.br/album/" },
    { "link" : "http://celebridades.uol.com.br/album/", "imagens" : "http://ce.i.uol.com.br/album/" },
    { "link" : "http://carnaval.uol.com.br/2008/album/", "imagens" : "http://ca.i.uol.com.br/2008/album/" },
    { "link" : "http://noticias.uol.com.br/carnaval/2007/album/", "imagens" : "http://car.i.uol.com.br/2007/album/" },
    { "link" : "http://noticias.uol.com.br/carnaval/2006/album/", "imagens" : "http://car.i.uol.com.br/2006/album/" },
    { "link" : "http://noticias.uol.com.br/carnaval/2005/album/", "imagens" : "http://car.i.uol.com.br/2005/album/" },
    { "link" : "http://musica.uol.com.br/album/", "imagens" : "http://m.i.uol.com.br/album/" },
    { "link" : "http://viagem.uol.com.br/album/", "imagens" : "http://v.i.uol.com.br/album/" }
  ];
  
  while( container.nodeName.toLowerCase() != "a" )
  {
    container = container.parentNode;
  }
  
  dados = re.exec( container.href );
  
  for( var i in estacoes )
  {
    if( estacoes[i].link == dados[1] )
    {
      thumb = estacoes[i].imagens + dados[2] + "_t_001.jpg?ts=" + new Date().getTime();
      break;
    }
  }
    
  img.src = ( thumb != null )?thumb:"http://ca.i.uol.com.br/2008/thumb-sem-foto.gif";
  img.alt = "Fotos - UOL Carnaval";
  img.title = "Fotos - UOL Carnaval";
}

// Abre pop-up da Rádio UOL
function openRadio( obj )
{
  window.open(obj.href,'popplaylist','width=480,height=350,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no');
  return false;
}
