// 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 : 10 ;
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(typeof sum == 'undefined')
    var sum = 0;
	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 = [ 'cinepodcast' ];
	for(var i=0;i<dir.length;i++) 
		if (location.href.indexOf('cinema.uol.com.br/'+dir[i]) != -1)
			return canal[i];
	if (location.href == 'http://cinema.uol.com.br/' || location.href == 'http://cinema.uol.com.br/index.jhtm')
		return 'capa';
	return 'outros';
}

// config banners
var DEpopcfg ="POPcine"; // Popup
var DEsite="uolbr";		// Site, este valor tambem é usado no parametro affiliate
var DEchan="cinema";	// Canal
var DEsubc=getSubchan();		// Subcanal
var Expble=1;					// Alterar para 0 se não houver 240 pixels de espaço abaixo do 468x60 até o final da pagina ou dentro de um frame.
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'&&ad!='300x250'){
		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 bFs = typeof bFs!=="undefined"? bFs : 10;
	var doc = obj.contentWindow.document;
	var tamFrame = doc.getElementById("corpo").offsetHeight;
	obj.style.height = tamFrame/bFs + 'em';

	// ajusta banners //
	reequalize();

	standByLoadEnquete=0;
}

// 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çã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;
	bFs = (typeof bFs=="undefined")?10:bFs;
	obj.style.height = tamFrame / bFs + 'em';

	// ajusta banners //
	reequalize();
}

/* Retorna false para os eventos padroes */
function preventDefault(e){
  if(e.preventDefault) e.preventDefault();
  else e.returnValue = false;
}

//Abas laterais abaixo do menu
mudaAbaLat = {
  abasLatLi : document.getElementById("menuAbasLat") ? document.getElementById("menuAbasLat").getElementsByTagName("li") : false,
  selecionar: function(obj, e){
    preventDefault(e);
    if (obj.parentNode.className.indexOf("ativo") == -1) {
      for (var i = 0; i < this.abasLatLi.length; i++) 
        this.abasLatLi[i].className = this.abasLatLi[i].className.replace("ativo", "");
      obj.parentNode.className += " ativo";
      this.frameLateralOpen("/frame-lateral-" + (obj.firstChild.nodeValue.toLowerCase()) + ".jhtm");
    }
  },
  
  frameLateralAjax : new UOLLib.ajax(),
  frameLateralOpen : function(){
    ts = new Date();
    this.frameLateralAjax.open({
      'url': arguments[0],
      'callback': function(){
        // Comentado : HTML dentro de XML com CDATA
        document.getElementById("frameLateralAppended").innerHTML = mudaAbaLat.frameLateralAjax.request.responseText;

        //Reposiciona banners laterias
        if (typeof placePos != "undefined") {
          placePos('banner-125x125', findPos('banner-125x125-area'), 7);
          placePos('banner-125x125-2', findPos('banner-125x125-2-area'), 8);
        }

        //Equalizar colunas após incluir o conteudo da aba selecionada
        if (typeof reequalize != "undefined")
          reequalize();
      },
      'hit': "/conteudo-hit.jhtm?frameLateral=" + arguments[0] + "&timestamp=" + ts.getTime()
    });
  }
}

// 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 = true;
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.indexOf("javascript")!=-1){
				span = document.createElement("span");
				span.innerHTML = "&nbsp;";
				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();

/*
elGrade   -> Id do elemento onde os links devem ser verificados
linksFora -> Array com as palavras-chave dos links que merecem target
*/
function changeTargetToBlank(elGrade, linksFora)
{
  var $ = function(){return document.getElementById(arguments[0]);}
  var objGrade = $(elGrade) ? $(elGrade) : null;

  if(objGrade == null)
    return false;

  var allLinks = objGrade.getElementsByTagName("a");
  for(var i = 0; i < allLinks.length; i++)
  {
    var objA = allLinks[i];
    if(objA.target == "")
      for(var j = 0; j < linksFora.length; j++)
        if(objA.href.indexOf(linksFora[j]) != -1)
          objA.target = "_blank";
  }
}




/**
 * Adiciona o prefixo de click uol nos links de conteúdo.
 * @param {String}  ref     Nome da estação ou alguma referência que identirique de onde vem o click
 * @param {Array}   colunas Array com os divs que deverão ter seus links com click uol
 * @param {Booleam} painel  Se deve colocar click uol no painel rotativo ou não. True = sim / False = não
 **/
function clickUOL(ref, colunas, painel) {

  var $ =  function() { return document.getElementById(arguments[0]); }

  for(var x = 0; x < colunas.length; x++) {

      // Se o elemento existir realmente
      if($(colunas[x])) {
          objA = $(colunas[x]).getElementsByTagName("a");

          // percorre todos os links do bloco
          for(var y = 0; y < objA.length; y++) {

              var lkn   = objA[y].href;
              var refOk = ref + "_" + objA[y].name;

              // A tag a deve possuir um atributo 'name'
              // O link não pode ter 'click.uol'
              // O link deve ser para um domínio 'uol.com.br'
              // Não pode ser um link javascript
              if(objA[y].name != "" && lkn.indexOf("click.uol") == -1 || lkn.indexOf("cineclick.uol") != -1 && lkn.indexOf("uol.com.br") != -1 || lkn.indexOf("zip.net") != -1 && lkn.indexOf("javascript:") == -1 && lkn.indexOf("void(") == -1 )  {
                  //objA[y].href = objA[y].href.replace(/http(s?):\/\//,"http:\/\/click.uol.com.br/?rf=" + refOk + "&u=http$1:\/\/");
                  objA[y].href = "http://click.uol.com.br/?rf=" + refOk + "&u=" + objA[y].href;
              }

              // Se for um link da Rádio UOL
              if(lkn.indexOf('player.htm')!=-1 || lkn.indexOf('abreradio.htm')!=-1) {
                  objA[y].href='javascript:pop("'+objA[y].href+'")';
              }
          }
      }
  }
    // Click uol no painel rotativo
  if(painel == true) {
      if(typeof Item != "undefined") {
          for(var x = 0; x < Item.length; x++) {
              var lkn   = Item[x][3];
              var refOk = ref + "_rotativo" + (x+1);
              
              if(lkn.indexOf("click.uol") == -1 && lkn.indexOf("uol.com.br") != -1 && lkn.indexOf("javascript:") == -1 && lkn.indexOf("void(") == -1) {
                  Item[x][3] = "http://click.uol.com.br/?rf=" + refOk + "&u=" + Item[x][3];
              }
          }
      }
  }
}
clickUOL("cinema", ["col-esquerda","col-centro"],true);

// Popup Rádio uol
function popupPlayer(e){
	if (e){
	preventDefault(e);
	var elem=false;
	if( e.srcElement && e.srcElement.tagName.toUpperCase()=="A" )
		elem=e.srcElement;
	else if( e.target && e.target.tagName.toUpperCase()=="A" )
		elem=e.target;
	if(elem)
		window.open(elem.href,'popmusica',"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=1010,height=570");
	}
}


/*
elGrade   -> Id do elemento onde os links devem ser verificados
linksFora -> Array com as palavras-chave dos links que merecem target
*/

function changeTargetToBlank(elGrade, linksFora){
    var $ = function(){return document.getElementById(arguments[0]);}
    var objGrade = $(elGrade) ? $(elGrade) : null;

	if(objGrade == null)
        return false;

    var allLinks = objGrade.getElementsByTagName("a");
    for(var i = 0; i < allLinks.length; i++){
        var objA = allLinks[i];
        if(objA.target == "")
          for(var j = 0; j < linksFora.length; j++)
            if(objA.href.indexOf(linksFora[j]) != -1)
            	objA.target = "_blank";
    }
}
changeTargetToBlank("col-centro", ["folha.uol"]);




