if (!/\/(\#[0-9]*)*$/.test(window.location.href)) {
	window.location.href = window.location.href + '/';
}

function exibe(id, scroll) {

	if (atual != id) {
		
		$('#carregando').fadeIn();

		$('#miniatura-' + atual).removeClass('selecionado');
		$('#miniatura-' + id).addClass('selecionado');

		window.location.href = 'http://www.bhnight.net/fotos/' + galeria + '/#'
				+ id;

		pageTracker._trackPageview('fotos/' + galeria + '/#' + id);

		atual = id;

		$(imagemTemporaria).attr(
				'src',
				'http://www.bhnight.net/imgs/fotos/' + galeria + '/' + id
						+ '.jpg');

		if (atual == dados[0]) {
			$('#passa-esquerda').removeClass('link');
			$('#passa-direita').addClass('link');
		} else if (atual == dados[dados.length - 1]) {
			$('#passa-esquerda').addClass('link');
			$('#passa-direita').removeClass('link');
		} else {
			$('#passa-esquerda').addClass('link');
			$('#passa-direita').addClass('link');
		}

		if (scroll == true) {
			paginaDesejada = Math
					.ceil((dados.inArray(id) + 1) / fotosPorPagina);
			if (paginaAtual != paginaDesejada) {
				geraMiniaturas(paginaDesejada);
			}
			$('#miniaturas').stop()
					.animate(
							{
								scrollTop : ($('#miniatura-' + id).offset().top
										- ($('#miniaturas').outerHeight() - $(
												'#miniatura-' + id)
												.outerHeight()) / 2 - $(
										'#offset-base').offset().top)
							}, 500);
		}

	}

}

function geraMiniaturas(pagina) {

	if (pagina > paginas) {
		paginaAtual = 1;
		pagina = 1;
	} else {
		paginaAtual = pagina;
	}

	$('.pagina').html('');

	if (pagina != 1) {
		$('.pagina')
				.append(
						'<a href="javascript:void(0);" onclick="geraMiniaturas(' + (pagina - 1) + ');"><img src="imgs/icones/seta-esquerda.png" alt="Página anterior" align="absmiddle" /></a> ');
	} else {
		$('.pagina')
				.append(
						'<img src="imgs/icones/seta-esquerda.png" alt="Página anterior" align="absmiddle" /> ');
	}

	$('.pagina').append(pagina + ' de ' + paginas);

	if (pagina != paginas) {
		$('.pagina')
				.append(
						' <a href="javascript:void(0);" onclick="geraMiniaturas(' + (pagina + 1) + ');"><img src="imgs/icones/seta-direita.png" alt="Próxima página" align="absmiddle" /></a>');
	} else {
		$('.pagina')
				.append(
						' <img src="imgs/icones/seta-direita.png" alt="Próxima página" align="absmiddle" />');
	}

	$('#miniaturas').html('<div id="offset-base"></div>');

	for (i = (pagina - 1) * fotosPorPagina; i < (pagina * fotosPorPagina > dados.length ? dados.length
			: pagina * fotosPorPagina); i++) {
		$('#miniaturas').append(
				'<a href="http://www.bhnight.net/fotos/' + galeria + '/#'
						+ dados[i] + '" onclick="exibe(' + dados[i]
						+ ', false)" id="miniatura-' + dados[i] + '"'
						+ (dados[i] == atual ? ' class="selecionado"' : '')
						+ '><img src="http://www.bhnight.net/imgs/fotos/'
						+ galeria + '/mini' + dados[i] + '.jpg" /></a>');
	}

	$('#miniaturas').stop().animate( {
		scrollTop : 0
	}, 500);

}

$(document).ready(
		function() {

			fotosPorPagina = 20;
			troca = 0;
			atual = -1;
			paginaAtual = -1;

			paginas = Math.ceil(dados.length / fotosPorPagina);

			$('#foto-1').load(function(){
				
				recuo1X = (600 - $('#foto-1').attr('width')) / 2;
				recuo1Y = (600 - $('#foto-1').attr('height')) / 2;
				
				recuo2X = (600 - $('#foto-2').attr('width')) / 2;
				recuo2Y = (600 - $('#foto-2').attr('height')) / 2;
				
				$('#foto-1').stop().css( {
					left : recuo1X,
					'z-index' : 2
				}).animate( {
					opacity : 1,
					top : recuo1Y
				}, 1000);

				$('#foto-2').stop().css( {
					'z-index' : 1
				}).animate( {
					opacity : 0,
					top : 300 + recuo2Y
				}, 1000).animate( {
					top : -100
				}, 1);
				
			});
			
			$('#foto-2').load(function(){
				
				recuo1X = (600 - $('#foto-1').attr('width')) / 2;
				recuo1Y = (600 - $('#foto-1').attr('height')) / 2;
				
				recuo2X = (600 - $('#foto-2').attr('width')) / 2;
				recuo2Y = (600 - $('#foto-2').attr('height')) / 2;
				
				$('#foto-2').stop().css( {
					left : recuo2X,
					'z-index' : 2
				}).animate( {
					opacity : 1,
					top : recuo2Y
				}, 1000);

				$('#foto-1').stop().css( {
					'z-index' : 1
				}).animate( {
					opacity : 0,
					top : 300 + recuo1Y
				}, 1000).animate( {
					top : -100
				}, 1);
				
			});
			
			imagemTemporaria = new Image();

			$(imagemTemporaria).load( function() {
				
				$('#carregaNdo').fadeOut();

				if (troca == 0) {
					troca = 1;
					$('#foto-1').attr('src', $(this).attr('src'));
				} else {
					troca = 0;
					$('#foto-2').attr('src', $(this).attr('src'));
				}

			});

			$('#passa-esquerda').click( function() {
				fotoAnterior();
			}).animate( {
				opacity : 0
			}, 200);

			$('#passa-direita').click( function() {
				proximaFoto();
			}).animate( {
				opacity : 0
			}, 200);

			$(this).keydown(
					function(event) {
						switch ((event.keyCode ? event.keyCode
								: event.which ? event.which : event.charCode)) {
						case 37:
						case 38:
							fotoAnterior();
							break;
						case 39:
						case 40:
							proximaFoto();
							break;
						}
					});

			offsetFoto = $('#foto').offset( {
				border : true,
				padding : true
			});

			$(this).mousemove(
					function(e) {
						if (offsetFoto.top < e.pageY
								&& offsetFoto.left < e.pageX
								&& offsetFoto.top + 600 > e.pageY
								&& offsetFoto.left + 600 > e.pageX) {
							if (offsetFoto['left'] + 300 > e.pageX) {
								animaSeta('esquerda');
							} else {
								animaSeta('direita');
							}
						} else {
							animaSeta();
						}
					});

			temp = window.location.href.split('#');
			temp = temp[temp.length - 1];

			if (dados.inArray(temp)) {
				exibe(temp, true);
			} else {
				exibe(dados[0], true);
			}

		});

quadroAtual = null;

function animaSeta(quadro) {
	if (quadroAtual != quadro) {
		quadroAtual = quadro;
		if (quadro == 'esquerda') {
			if (atual != dados[0]) {
				$('#passa-esquerda').stop().animate( {
					opacity : 1,
					left : 50
				}, 200);
			}
			$('#passa-direita').stop().animate( {
				opacity : 0,
				right : 100
			}, 500);
		} else if (quadro == 'direita') {
			if (atual != dados[dados.length - 1]) {
				$('#passa-direita').stop().animate( {
					opacity : 1,
					right : 50
				}, 200);
			}
			$('#passa-esquerda').stop().animate( {
				opacity : 0,
				left : 100
			}, 500);
		} else {
			$('#passa-esquerda').stop().animate( {
				opacity : 0,
				left : 100
			}, 500);
			$('#passa-direita').stop().animate( {
				opacity : 0,
				right : 100
			}, 500);
		}
	}
}

function fotoAnterior() {
	if (atual != dados[0]) {
		exibe(dados[dados.inArray(atual) - 1], true);
	}
}

function proximaFoto() {
	if (atual != dados[dados.length - 1]) {
		exibe(dados[dados.inArray(atual) + 1], true);
	}
}

Array.prototype.inArray = function(obj) {
	for ( var x = 0; x <= this.length; x++) {
		if (this[x] == obj)
			return x;
	}
	return false;
}
