(function() {var ua=navigator.userAgent.toLowerCase(),is=function(t){return ua.indexOf(t) != -1;},h=document.getElementsByTagName('html')[0],b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';var c=b+os+' js'; h.className += h.className?' '+c:c;})();

/**
 * FirebugX
 */
(function(){
  if (!window.console || !console.firebug)
  {
      var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
      "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
  
      window.console = {};
      for (var i = 0; i < names.length; ++i)
          window.console[names[i]] = function() {}
  }
})();

/**
 * @classDescription Objeto responsável por controlar todos os placares de esporte
 * @param {Object} args
 */
placarEsporte = {

  placar : null,
  callbacksCount : 0,
  reloadTimer : 30,
  reloadRun : null,
  reloadTS : null,
  reloadTimeOut : null,
	urlHit : null,
	timestamp : null,
  
  init : function(args){
    if(!args)
      var args={};
      
    barraUol.getParseJSURL(location.href,"_HREF",placarEsporte);

    this.placar = args['placar'] || null;

    console.log('placar : '+this.placar);
    
    document.getElementById('barraUOL1Wrapper').innerHTML=barraUol.write({'auto': false });
    document.getElementById('barraUOL2Wrapper').innerHTML=barraUol.write({'auto': false });
    document.getElementById('CopyWriteWrapper').innerHTML=barraUol.copyright();

    this.carregarObjetos();
    
    this.banners.init();
  },
  
  setReload : function(){
    this.reloadTS = (new Date()).getTime()+(this.reloadTimer*1000)+1000;
    this.chkReload();
  },
  
  chkReload : function(){
    clearTimeout(this.reloadTimeOut);
    var ts = (new Date()).getTime();
    var restante = Math.floor((this.reloadTS-ts)/1000);
		if(restante>this.reloadTimer)
			restante = this.reloadTimer;
    if (document.getElementById("reloadWrapper") && this.reloadTS > ts) {
      document.getElementById("reloadWrapper").innerHTML = restante;
			if(document.getElementById("reloadWrapper2"))
				document.getElementById("reloadWrapper2").innerHTML = restante;
      this.reloadTimeOut = setTimeout(function(){placarEsporte.chkReload()},200);
    }
    else if (typeof this.reloadRun == "function"){
      this.reloadRun();
			this.requestHitUrl();
		}
  },
	
	requestHitUrl : function(){
		if(this.urlHit){
			if(document.getElementById('iframeRequestHit'))
				document.getElementById('iframeRequestHit').parentNode.removeChild(document.getElementById('iframeRequestHit'));
			var iframeHit = document.createElement("div");
			iframeHit.id='iframeRequestHit';
			iframeHit.innerHTML = '<iframe src="'+this.urlHit+(this.urlHit.indexOf("?")==-1?'?':'&')+'ts='+((new Date).getTime())+'"></iframe>'
			document.getElementsByTagName("body")[0].appendChild(iframeHit);
		}
	},

  /**
   * @type {Object} Exibe os banners
   */
  banners : {

    init : function(){

      this.bFs = (document.getElementById('barrauol')) ? document.getElementById('barrauol').offsetWidth/98.8 : 0;
      
      // config banners
      this.DEsite="uolbr";
      this.DEchan="esporte";
      this.DEsubc="outros";
      this.Expble=0;
      this.DEconn=document.body;
      this.DEconn.style.behavior='url(#default#clientCaps)';
      this.DEconn=(this.DEconn.connectionType=='lan')?1:0;
      this.DEban = [];
      
      // mostra banners //
      this.DEt=new Date(); this.DEt=this.DEt.getTime(); this.DErand=Math.floor(this.DEt*1000*Math.random());
      this.scw=0;
      this.sch=0;
      if(screen.height){this.scw=screen.width;this.sch=screen.height;}

      this.show('468x60',1,0);
      this.show('120x60',3,0);

    },
    
    show : function(ad,pos,sum,num){
      if (document.getElementById('banner-' + ad + '-area') && ((ad == '218x174' && screen.width > 1000) || ad != '218x174'))
        document.getElementById('banner-' + ad + (num ? '-' + num : '') + '-area').innerHTML = '<iframe src="/banners.html?ad=' + ad + '&pos=' + pos + '" name="banner-' + ad + (num ? '-' + num : '') + '" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" height="' + (ad.split("x"))[1] + '" width="' + (ad.split("x"))[0] + '"></iframe>';
    }
    
  },

  loadScript : function(url){
    var id=url.replace(/\/|\./g,'_');
    if(document.getElementById(id))
      document.getElementById(id).parentNode.removeChild(document.getElementById(id))
  	var HTML_SCRIPT = document.createElement("script");
    HTML_SCRIPT.id = id;
  	HTML_SCRIPT.src=url+"?ts="+(this.timestamp ? this.timestamp : (new Date()).getTime() );
    HTML_SCRIPT.language="JavaScript";
    HTML_SCRIPT.type="text/javascript";
  	document.getElementsByTagName("head")[0].appendChild(HTML_SCRIPT);
    return HTML_SCRIPT;
  },

  events : {

    /**
     * Retorna false para os eventos padroes
     * @param {Object} e Evento
     */
    preventDefault : function(e){
      if(e.preventDefault) e.preventDefault();
      else e.returnValue = false; 
    }, 
    
    /**
     * Adicionar eventos
     * @param {Object} elem Elemento HTML
     * @param {String} event Evento (click, mouseover, mouseout, ...)
     * @param {Function} fun Função adicionada ao evento
     */
    add : function(elem,event,fun){
      if(document.attachEvent)
        elem.attachEvent('on'+event,fun);
      else if(document.addEventListener)
        elem.addEventListener(event,fun,true);
    }
  
  },
  
 	travaReload : function (){
		this.events.add(document,'keydown',function(e){
			if (e.keyCode == 116) {
				if(navigator.userAgent.indexOf("MSIE")>=0)
					e.keyCode = 0;
				else
					e.preventDefault();  
				return false;
			}
		});
	},

	carregarObjetos : function(){
    if (this.placar == 'saosilvestre')
      this.loadScript('/atletismo/' + this.placar + '/' + this.placar + '.js');
    else if (this.placar == 'futebol' || this.placar == 'tenis' || this.placar == 'f1' || this.placar == 'volei' || this.placar == 'basquete')
      this.loadScript('/'+this.placar+'/' + this.placar + '.js');
  },
  
  /**
   * Exibe/Esconde menu da estacao
   * @type {Method}
   * @autor Elav
   */
  switchMenu : function(){
    document.getElementById("menu-fechado").style.display = document.getElementById("menu-fechado").offsetHeight == 0 ? "block" : "none";
    document.getElementById("menu-aberto").style.display = document.getElementById("menu-aberto").offsetHeight == 0 ? "block" : "none";
  },

  showCarregando : function(id,fun){
    var carregando = document.createElement('div');
    carregando.className='carregando';
    document.getElementById(id).appendChild(carregando);
    if(typeof fun == 'function')
      setTimeout(function(){
        fun();
      },500);
  },
  
  modulos : {
    arquivos : [],
    carregarCount : 0,

    init : function(){
      this.carregar(["mod-rotativo.html","mod-fotos.html","mod-noticias.html"]);
    },

    carregar : function(nomes){
      for(var i = 0; i < nomes.length; i++)
        this.arquivos[i] = '';
      for(var i=0; i<nomes.length; i++){
        this.arquivos[i] = new UOLLib.ajax();
        this.arquivos[i].open({
          url : (placarEsporte.placar=="futebol"?"/futebol/":"")+nomes[i],
          callback : function(){
            placarEsporte.modulos.show();
          }
        });
      }
    },

    show : function(){
      this.carregarCount++;
      if(this.carregarCount == this.arquivos.length){
        if(document.getElementById('maisWrapper'))
          document.getElementById('maisWrapper').parentNode.removeChild(document.getElementById('maisWrapper'));
        var tmp = document.createElement('div');
        tmp.id = "maisWrapper";
        for (var i = 0; i < this.arquivos.length; i++) {
          tmp.innerHTML+=this.arquivos[i].request.responseText;
        }
        document.getElementById('mais-esporte').appendChild(tmp);
        this.carregarCount = 0;
        this.reloadTimer = setTimeout(function(){
          placarEsporte.showCarregando("maisWrapper",function(){
            placarEsporte.modulos.init();
          });
        },180000);
        if (document.getElementById('painelRotativoDeChamadas')) {
          UOLLib.rotativoDeChamadas.init({
            id: 'painelRotativoDeChamadas',
            botoesTxts: {
              next: 'PRÓXIMA',
              prev: 'ANTERIOR',
              stop: '&nbsp;',
              play: '&nbsp;'
            }
          });
        }
      }
    }
  }

}

/**
 * Implementações do UOL
 * @autor UOL - Cassio
 */
		menur = function () {
		 for(var i=0,divs=document.getElementById('menu_r').getElementsByTagName('div'),div=divs[i];i<divs.length;div=divs[++i]) {
		  if (div.className.indexOf('menu') != -1) {
		   div.className = (div.className.indexOf('hidden') != -1) ? 'menu' : 'menu hidden';
		  }
		 }
		 return false;
		};
		 
		// 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.indexOf("javascript")!=-1){
		     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();
		 
		    }
		   }
		  }
		 }
		}
/**
 * Fim das implementações UOL
 */