var intervFotos;
var areaRolagem = 487;

function rolagem(dir,alin,m){
  var objMin = document.getElementById(m);
  var taxaMov = 10;
  if(dir<0) taxaMov = taxaMov*-1;
  
  var objBtnAnt = document.getElementById("btn_ant_"+m);
  var objBtnProx = document.getElementById("btn_prox_"+m);
  
  var posMax = (objMin.offsetWidth-areaRolagem+33)*-1;
  var novaPos = getPosicao(objMin,alin)+dir;
  if(novaPos <= 0 && novaPos >= posMax){
	moveRolagem(objMin,novaPos,taxaMov,2,alin);
	habilitaBotao(objBtnAnt);
	habilitaBotao(objBtnProx);
  }
  else if(novaPos > 0){
	moveRolagem(objMin,0,taxaMov,2,alin);
	if(alin=="right") desabilitaBotao(objBtnAnt)
	else if (alin=="left") desabilitaBotao(objBtnProx);
  }
  else if(novaPos < posMax){
	moveRolagem(objMin,posMax,taxaMov,2,alin);
	if(alin=="right") desabilitaBotao(objBtnProx);
	else if (alin=="left") desabilitaBotao(objBtnAnt);
  }
}

function habilitaBotao(btn){
  btn.className = btn.className.replace(" desab","")
}

function desabilitaBotao(btn){
  if(btn.className.indexOf("desab") < 0){
	btn.className += " desab"
  }
}

function moveRolagem(obj,maximo,taxa,vel,alin){
  clearTimeout(intervFotos)
  var novaPos = getPosicao(obj,alin)+taxa;
  if(novaPos < maximo && taxa>=0){
	setPosicao(obj,alin,novaPos);
	intervFotos = setTimeout(function(){moveRolagem(obj,maximo,taxa,vel,alin)}, vel);	
  }
  else if(novaPos > maximo && taxa<0){
	setPosicao(obj,alin,novaPos);
	intervFotos = setTimeout(function(){moveRolagem(obj,maximo,taxa,vel,alin)}, vel);	
  }
  else{
	setPosicao(obj,alin,maximo)
  }
}

function getPosicao(obj,alin){
  var pos
  if(alin == "right"){
	pos =  parseInt(obj.style.right)
	if(!pos) return 0;
	else return pos;
  }else if (alin == "left"){
	pos = parseInt(obj.style.left);
	if(!pos) return 0;
	else return pos;
  }
}

function setPosicao(obj,alin,pos){
  if(alin == "right"){
	obj.style.right = pos+"px";
  }else if (alin == "left"){
	obj.style.left = pos+"px";
  }
}


function ocultaOverlay(obj){
  obj.onmouseout=function(){mostraOverlay(obj);}
  fadeOut(obj,1);
}

function mostraOverlay(obj){
  fadeIn(obj,1);
}

function fadeOut(obj,timer) {
  var alpha = 80;
  clearInterval(obj.i)
  obj.o = setInterval(function(){if (alpha <= 0){clearInterval(obj.o);} setAlpha(obj, alpha); alpha -= 4;}, timer);
}
 
function fadeIn(obj,timer) {
  var alpha = 0;
  clearInterval(obj.o)
  obj.i = setInterval(function() {if (alpha >= 80){ clearInterval(obj.i); }setAlpha(obj, alpha); alpha += 4;}, timer);
}
 
function setAlpha(target, alpha) {
  target.style.filter = "alpha(opacity="+ alpha +")";
  target.style.opacity = alpha/100;
}

function carregaFoto(alvo,info){
  alvo = alvo.parentNode.getElementsByTagName("img")[0];
  var alvoFotoGD = document.getElementById("foto_gd_alvo");
  alvoFotoGD.innerHTML = "";
  var imgCarreg = new Image();
  imgCarreg.src = alvo.src;
  imgCarreg.width = alvoFotoGD.offsetWidth;
  imgCarreg.height = alvoFotoGD.offsetHeight;
  alvoFotoGD.appendChild(imgCarreg);
  
  var srcImgGD = alvo.src.split(".jpg");
  carregaImagem(srcImgGD[0]+"_gd.jpg",info);
}

function carregaImagem(url,info) {
  var imagem = new Image();
  imagem.onload = function() {
	try{document.getElementById("foto_gd_alvo").removeChild(document.getElementById("carregando"));}catch(e){alert(e)}
	trocaImagem(this.src,info)
  }
  var carregando = "<div id='carregando'><img src='imagens/carregando_icone.gif' width='46' height='46'/></div>"
  document.getElementById("foto_gd_alvo").innerHTML += carregando;
  imagem.src = url;
}

function trocaImagem(novaImagem,info){
  var objAlvo = document.getElementById("foto_gd_alvo")
  var imagem =  new Image();
  imagem.src = novaImagem
  objAlvo.innerHTML = "";
  if(info){
	var objInfo = document.createElement("div")
	objInfo.id = "info";
	objInfo.innerHTML = info;
	objAlvo.appendChild(objInfo);
  }
  imagem.onmouseover = exibeInfo;  
  imagem.onmouseout = ocultaInfo;
  objAlvo.appendChild(imagem);
}

function exibeInfo(){
	try{
	  var objInfo = document.getElementById("info");
	}catch(e){}
	if(objInfo && objInfo.style.visibility != "visible"){
	  objInfo.style.height = "auto";
	  var tamMax = objInfo.offsetHeight;
	  objInfo.style.paddingTop = "5px";
	  objInfo.style.paddingBottom = "5px";
	  objInfo.style.height = "0px";
	  objInfo.style.visibility = "visible";
	  objInfo.onmouseout = ocultaInfo;
	  exibeInfoAnim(tamMax);
	}
}

function ocultaInfo(e){
  if (!e) var e = window.event;
  var tg = (window.event) ? e.srcElement : e.target;
  tg = tg.parentNode;
  if (tg.nodeName != 'DIV') return;
  var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
  while (reltg != tg && reltg.nodeName != 'BODY')
	reltg = reltg.parentNode
	
  if (reltg == tg) return;
  else{
	try{
	  var objInfo = document.getElementById("info");
	}catch(e){}
	if(objInfo){
	  ocultaInfoAnim();
	}
  
  }
}

function exibeInfoAnim(tamMax){
  var objInfo = document.getElementById("info");
  var tamAtual = 0;
  var i = setInterval(
  function(){
	tamAtual += 4;
	if (tamAtual >= tamMax){
	  clearInterval(i);
	  tamAtual = tamMax;
	}
	objInfo.style.height = tamAtual+"px";
  }, 1);
}

function ocultaInfoAnim(){
  var objInfo = document.getElementById("info");
  objInfo.style.paddingTop = "0px";
  objInfo.style.paddingBottom = "0px";
  var tamAtual = objInfo.offsetHeight;
  var i = setInterval(
  function(){
	tamAtual -= 4;
	if (tamAtual <= 0){
	  clearInterval(i);
	  tamAtual = 0;
	  objInfo.style.visibility = "hidden";
	}
	objInfo.style.height = tamAtual+"px";
  }, 1);
}

