
var arrPhotos = new Array();
var arrSize;
var fotoAtual = 0;

function loadGallery(lang, galId){

    var qString = "l=" + lang + "&galeria=" + galId;
    var urlTerra = "";
    var urlThumb = "";
    var idxGal = 0;
    var hashData;
    var htmlThumb;
    
    if (lang == "en") {
        urlTerra = "http://en.terra.com";
        urlThumb = "http://php.terra.com/english/gallery/resize/resize?i=";
    }
    else {
        urlTerra = "http://www.terra.com";
        urlThumb = "http://php.terra.com/galeria/resize/resize?i=";
    }
    hideAllExcept(0);
    $('#ft0').css('visibility', 'visible');
    posiciona();
    
    $.ajax({
        type: "GET",
        cache: false,
        url: url_get_xml,
        data: qString,
        dataType: "xml",
        success: function(xml){
			
            $(xml).find('foto').each(function(){	
				var url = urlThumb + $(this).find('url').text();
				try{
					if (twidth!=null){
						url = url + "&TWIDTH=" + twidth;
					}
				} catch (e){}
                hashData = new Array();
                hashData['image'] = urlTerra + $(this).find('url').text();
                hashData['thumb'] = '<img src="' + url + '" ' +
                'alt="' +
                $(this).find('derechos').text() +
                ' - ' +
                $(this).find('pie').text() +
                '">';
                hashData['derechos'] = $(this).find('derechos').text();
                hashData['pie'] = $(this).find('pie').text();
                hashData['resumen'] = $(this).find('resumen').text();
                hashData['titulo'] = $(this).find('titulo').text();
                
                var video = $(this).find('video').text();
                hashData['video'] = ($.trim(video) != "") ? 'http://terratv.terra.com/templates/playercustom.aspx?contentid=' + video + '&disableRelated=true&style=olimpiadasM&w=400&h=300&VolumeSlider=75&slide=90&disableautoplay=true&disableVideoAd=true&disableUvTag=true' : "";
                
                arrPhotos[idxGal] = hashData;
                idxGal++;
                arrSize = idxGal;
            });
			if (foto_inicial!=''){
				if (foto_inicial > arrPhotos.length) {
					changePhoto(arrPhotos.length-1);
					stepTo(arrPhotos.length);
				} else {
					changePhoto(parseInt(foto_inicial)-1);
					stepTo(foto_inicial);					
				}
			}
        }
    });
    
	$('#stepRw').click(function(){
		stepBy(-6);
	})

	$('#stepFw').click(function(){
		stepBy(6);
	})

	$('#stepRw3').click(function(){
		stepBy(-3);
	})

	$('#stepFw3').click(function(){
		stepBy(3);
	})
	
    $('div.fotocenter').css({
        'position': 'relative',
        'height': "auto"
    }); // Define elemento referencia para as setas
    $('#setaAnte, #setaProx').css({ // Tira a margem (não encontrei onde está definido isso no CSS :-( )
        'margin': '0px'
    });
    
    $('#imagem').css('cursor', 'pointer');
    
    // Sempre que uma imagem eh trocada, esta função executa
    $('#imagem').load(function(){
        //$('#setaAnte, #setaProx').fadeTo("normal", 0.70);
        
        $("#imagem").css('opacity', 1.0);
        posiciona();
    });
    
    // Executado quando ocorrer clique na imagem
    $('#imagem').click(function(e){
        var x = e.pageX;
        var xCentro = $('#relative').position().left + $(this).attr('offsetLeft') + $('div.fotocontent').attr('offsetLeft') + ($(this).width() / 2);
        
        if (x < xCentro) {
            voltarFoto();
        }
        if (x >= xCentro) {
            avancarFoto();
        }
    })
    
    // Animação das flechas ao movimentar o mouse sobre a imagem
    $('#imagem').mousemove(function(e){
        var x = e.pageX;
        var xCentro = $('#relative').position().left + $(this).attr('offsetLeft') + $('div.fotocontent').attr('offsetLeft') + ($(this).width() / 2);
        
        if (x < xCentro) {            			
			if (navigator.userAgent.indexOf('MSIE 6') != -1){
				if (setaAnte.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src!="http://www.terra.com/scripts/gallery/core_gallery/img/ante_2.png"){
					$('#setaAnte').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/ante_2.png, sizingMethod='crop')";
					$('#setaProx').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/prox.png, sizingMethod='crop')";			
				}	
			} else {
				$('#setaProx').css('background-position', '0px 0px');
				$('#setaAnte').css('background-position', '0px -81px');
			}
        }
        if (x >= xCentro) {            
			if (navigator.userAgent.indexOf('MSIE 6') != -1){
				if (setaAnte.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src!="http://www.terra.com/scripts/gallery/core_gallery/img/ante.png"){
					$('#setaAnte').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/ante.png, sizingMethod='crop')";
					$('#setaProx').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/prox_2.png, sizingMethod='crop')";			
				}
			} else {
				$('#setaAnte').css('background-position', '0px 0px');
				$('#setaProx').css('background-position', '0px -81px');
			}	
        }
    });
    
    // Executado quando a flecha do mouse sair de cima da imagem	
    $('#imagem').mouseout(function(){
		if (navigator.userAgent.indexOf('MSIE 6') != -1){
			$('#setaAnte').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/ante.png, sizingMethod='crop')";
			$('#setaProx').get(0).style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/prox.png, sizingMethod='crop')";			
		} else {
			$('#setaProx').css('background-position', '0px 0px');
			$('#setaAnte').css('background-position', '0px 0px');
		}	
    });
    
    // Ação da flecha da esquerda
    $('#setaAnte').click(function(){
        voltarFoto();
        return false;
    })
    
    // Ação da flecha da direita
    $('#setaProx').click(function(){
        avancarFoto();
        return false;
    })
    
    // Animação das setas ao colocar o mouse sobre elas	
    $('#setaAnte').mouseover(function(){        
		if (navigator.userAgent.indexOf('MSIE 6') != -1){
			this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/ante_2.png, sizingMethod='crop')";
		} else {
			$(this).css('background-position', '0px -81px');		
		}	
    });

    // Animação das setas ao colocar o mouse sobre elas	
    $('#setaProx').mouseover(function(){
		if (navigator.userAgent.indexOf('MSIE 6') != -1){
			this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://www.terra.com/scripts/gallery/core_gallery/img/prox_2.png, sizingMethod='crop')";
		} else {
			$(this).css('background-position', '0px -81px');		
		}		
    });
    
    $('#setaAnte, #setaProx').css('visibility', 'visible');		
}

function avancarFoto(){
    var idx = fotoAtual;    
    if (idx + 2 > arrPhotos.length) {
//        stepTo(1); 	// Descomentar esta linha e comentar a linha abaixo para ao inves de redirecionar voltar a primeira foto						
//		window.location = "http://www.terra.com/entretenimiento/tv/mas-fotos";
		window.location = mas_fotos_url;
		return;
    }
    else {
        stepTo(idx + 2);
    }
	changePhoto(idx + 1)
}

function voltarFoto(){
    var idx = fotoAtual;
    changePhoto(idx - 1)
    if (idx <= 0) {
        stepTo(arrPhotos.length);
    }
    else {
        stepTo(idx);
    }
}

function stepTo(pos){
    if ((pos == fotoAtual) || (pos < arrPhotos.length - 5)) 
        stepcarousel.stepTo('slideGal', pos)
    else 
        stepcarousel.stepTo('slideGal', arrPhotos.length - 5)
}

function recarregarBanners(){    
	try {
        if (n > 0) {            
            if (typeof terra_stats_regTraffic != "undefined") {
                terra_stats_regTraffic();
            }
        }
    } 
    catch (e) {
    };
	
    $.each(frames, function(index, obj){
        //switch (index) {
          //  case 0:
            //case 2:
            //case 3:
                try {
                    obj.location.reload();
                } 
                catch (e) {
                }
                //break;
        //}
    })
}

function adjustThumbs(){

}


function getElementPosition(el){
    var x = 0;
    var y = 0;
    while (el.offsetParent) {
        x += el.offsetLeft;
        y += el.offsetTop;
        el = el.offsetParent;
    }
    x += el.offsetLeft;
    y += el.offsetTop;
    return {
        x: x,
        y: y
    };
}

function posiciona(){
    var top = $('#imagem').position().top;
    //	var left = $('#imagem').position().left;
    var left = 0;
    var height = $('#imagem').height();
    //	var width = $('#imagem').width();
    var width = 600;
    var offsetHorizontal = 5;
    
    $('#setaAnte').css({
//        'top': (height / 2 - $('#setaAnte').height() / 2) + "px", // Utilizar esta linha para ajustar a seta a altura da imagem
        'top': "160px",
        'left': (offsetHorizontal) + "px"
    });
    
    $('#setaProx').css({
//        'top': (height / 2 - $('#setaProx').height() / 2) + "px", // Utilizar esta linha para ajustar a seta a altura da imagem
		'top': "160px",
        'left': (width - $('#setaProx').width() - offsetHorizontal) + "px"
    });
}

function mostraImg(idSeta){
    if (document.getElementById(idSeta).className == 'opaMedio') {
        document.getElementById(idSeta).className = 'opaFull';
    }
    else {
        document.getElementById(idSeta).className = 'opaMedio';
    }
}


function hideAllExcept(idx){

    for (var i = 0; i < arrSize; i++) {
        var ft = 'ft' + i;
        if (idx != i) {
            document.getElementById(ft).style.visibility = 'hidden';
        }
    }
}


function changePhoto(idx){
    estatistica(sk_url); 
	if(typeof terra_stats_regTraffic!="undefined"){terra_stats_regTraffic();}
	recarregarBanners();
    var temp = idx;
    
    if (idx < 0) {
        fotoAtual = temp = idx = (arrPhotos.length - 1);
    }
    else 
        if (arrPhotos.length <= idx) {
            fotoAtual = temp = idx = 0;
        }
    
    fotoAtual = idx; // Armazena a foto atual
    var src = arrPhotos[idx]['image'];
    var derechos = arrPhotos[idx]['derechos'];
    //	var pie = arrPhotos[idx]['pie'];
    var alt = (arrPhotos[idx]['titulo'] != "") ? arrPhotos[idx]['titulo'] : arrPhotos[idx]['pie'];
    var resumen = arrPhotos[idx]['resumen'];
    var video = arrPhotos[idx]['video'];
    //	var alt = derechos + ' - ' + pie;
    
    $("#imagem").css('opacity', 0.0);
    $("#imagem").attr('src', src);
    $("#imagem").attr('alt', alt);
    
//    $(".caption").html('<p class="ag">' + arrPhotos[idx]['pie'] + ' (' + arrPhotos[idx]['derechos'] + ')</p>');
	
	$(".caption").html('<p class="ag">' + arrPhotos[idx]['derechos'] + '</p>');
    
    $(".agal .txt").html('<div class="txt"><h2>' + arrPhotos[idx]['titulo'] + '</h2>' + arrPhotos[idx]['resumen'] + '</div>');
    
    /// seta e limpa thumbs
    hideAllExcept(idx);
    var ft = 'ft' + idx;
    document.getElementById(ft).style.visibility = 'visible';
    
    //var setaAnte = 'javascript:;" onclick="changePhoto(' + (temp - 1) + ');';
    //var setaProx = 'javascript:;" onclick="changePhoto(' + (temp + 1) + ');';
    
    //$(".fotocenter").html('<img src="'+src+'" class="fotoprincipal" id="imagem" usemap="#mapa" alt="'+alt+'" />');
}

// tabs
function MM_findObj(n, d){ //v4.01
    var p, i, x;
    if (!d) 
        d = document;
    if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document;
        n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) 
        x = d.all[n];
    for (i = 0; !x && i < d.forms.length; i++) 
        x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) 
        x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) 
        x = d.getElementById(n);
    return x;
}

function MM_showHideLayers(){ //v6.0
    var i, p, v, obj, args = MM_showHideLayers.arguments;
    for (i = 0; i < (args.length - 2); i += 3) 
        if ((obj = MM_findObj(args[i])) != null) {
            v = args[i + 2];
            if (obj.style) {
                obj = obj.style;
                v = (v == 'show') ? 'visible' : (v == 'hide') ? 'hidden' : v;
            }
            obj.visibility = v;
        }
}

function stepBy(n){
	try{
		stepcarousel.stepBy('slideGal', n);
	} catch(e){}
}

// Função usada pelo gadget de vídeo	
function redirectBusca(objeto) {
	redirect = document.busca.keyword.value;
	window.open('http://terratv.terra.com/busca/' +  redirect + '.htm', '_blank');
}

$(document).ready(function(){
	try {
		loadGallery(lang, galeria);
	} catch (e) {}
});
