var qtdMiniPagina = 16;
var paginaAtual = 0;
var ultimaPagina = 0;
var nmPortfolioAtual = '';

//lista geral de itens do portifólio
var port = [
"2011|02-video-abracadabra|swf",
"2011|07-video-pity-rodas|flv",
"2011|08-video-ag-importados-3|swf",
"2011|10-video-alcance|swf","2011|09-video-ag-importados-4|swf",
"2011|11-video-bohemia|swf",
"2011|12-video-cen-uniformes|swf",
"2011|13-video-condominio-vista-linda|swf",
"2011|14-video-consorcio-volks|swf",
"2011|15-video-donna-flor-desfile|swf",
"2011|16-video-enxovais-cordeirinho|swf",
"2011|17-video-hotel-recreio|swf",
"2011|18-video-ingles-yes-69|swf",
"2011|19-video-ldi-2|swf",
"2011|20-video-pity-rodas|flv",
"2011|21-video-euforia|flv",
"2011|22-video-newmaq|swf",
"2011|23-video-pecas-avenida|swf",
"2011|24-video-pity-rodas-institucional|swf",
"2011|25-video-rotaract|swf",
"2011|26-video-yakult|swf",
"2011|27-flyer-acoes-invest|jpg",
"2011|28-folder-afirmativa|jpg",
"2011|29-seminario-estetica|jpg",
"2011|30-trofeus-arcelor|jpg",
"2011|31-flyer-card-pizzadelivery|jpg",
"2011|32-video-peixada-v2|swf"
];
port = shuffle(port);

//portfólio particular dexter
var pDexter = [
"2011|03-video-dexter-bebida|swf",
"2011|04-video-dexter-copa|swf",
"2011|06-video-dexter-sangue|swf",
"2011|05-video-dexter-dengue|swf"
];
pDexter = shuffle(pDexter);

//portfólio de clientes
var pCliente = [
"2011|cliente_afirmativa|jpg",
"2011|cliente_arcelor|jpg",
"2011|cliente_baratelo|jpg",
"2011|cliente_bit3|jpg",
"2011|cliente_boideouro|jpg",
"2011|cliente_box_eletronics|jpg",
"2011|cliente_cliodent|jpg",
"2011|cliente_drogaria_sao_rafael|jpg",
"2011|cliente_ecologica|jpg",
"2011|cliente_essentiali|jpg",
"2011|cliente_green_valley|jpg",
"2011|cliente_hospital_do_celular|jpg",
"2011|cliente_line|jpg",
"2011|cliente_minascel|jpg",
"2011|cliente_otica_sao_jose|jpg",
"2011|cliente_peixada|jpg",
"2011|cliente_pizza_delivery|jpg",
"2011|cliente_steel_valley|jpg",
"2011|cliente_tenkai|jpg"
];
pCliente = shuffle(pCliente);

//abreviações
function g(id) {return document.getElementById(id);}
function e(tipo) {	return document.createElement(tipo);}

//monta o portfifólio
function montaPortfolio(direcao,nmPortfolio) {
	nmPortfolioAtual = nmPortfolio;
	var total = window[nmPortfolio].length;
	ultimaPagina = Math.floor((total-1)/qtdMiniPagina);
	paginaAtual += direcao;
	//calcula o indice após a última miniatua da página
	var ultMiniPagina = (paginaAtual==ultimaPagina)?(total):((paginaAtual+1)*qtdMiniPagina);
	//obtem uma parcela do array de portfolio
	var p = window[nmPortfolio].slice((paginaAtual*qtdMiniPagina),ultMiniPagina);//window[nmPortfolio];
	
	var area = jQuery('#miniaturas');
	area.empty();

	//ativa/desativa os links de paginação
	(paginaAtual<=0)?jQuery('#glLeft a').fadeOut(500):jQuery('#glLeft a').fadeIn(500);
	(paginaAtual>=ultimaPagina)?jQuery('#glRight a').fadeOut(500):jQuery('#glRight a').fadeIn(500);
	
	tam = p.length;
	for(i=0;i<tam;i++){
		var mini = e('img');
		var img = String(p[i]).split('|');

		mini.src = 'portfolio/'+img[0]+'/min/'+img[1]+'.jpg';
		mini.name = 'portfolio/'+img[0]+'/'+img[1]+'.'+img[2];
		if(img[2]=='jpg') {
			mini.onclick = function() {
				getImg(this.name);
			}
		} else if(img[2]=='swf') {
			mini.onclick = function() {
				getFlash(this.name);
			}
		} else if(img[2]=='flv') {
			$(mini).click(function(event) {
				getVideo(this.name);
			});
		}
		mini.onmouseover = function() { $(this).stop().fadeTo(300,.6); }
		mini.onmouseout = function() { $(this).stop().fadeTo(400,1); }
		
		area.append(mini);
	}
}

//carrega determinada página html para a área central
function getPage(pagina) {
	$('#areaCentral').html('');
	$('#loading').stop().fadeIn(10);
	$('#areaCentral').load(pagina,function() {
		$('#loading').fadeOut(500);	  
	});
}
//carrega imagem
function getImg(arquivo) {
	$('#areaCentral').html('<img src="" alt="" id="imgCentral"/> ');
	$('#loading').stop().fadeIn(10);
	$('#imgCentral').attr('src',arquivo).load(function() {
		$('#loading').fadeOut(500);	  
	});
}
//carrega flash
function getFlash(arquivo) {
	$('#loading').stop().fadeOut(10);
	$('#areaCentral').html('<object width="455" height="256" type="application/x-shockwave-flash" data="loader.swf" FlashVars="arquivo='+arquivo+'"><param name="movie" value="loader.swf" /><param name="wmode" value="transparent" /><param name="menu" value="false" /><param name="quality" value="high" /><param name="FlashVars" value="arquivo='+arquivo+'" /></object>');
}
//carrega vídeo
function getVideo(arquivo) {
	$('#loading').stop().fadeOut(10);
	$('#areaCentral')
		.empty()
		.append('<iframe width="455" height="256" frameborder="0" allowtransparency="1" scrolling="no" src="video.php?path='+arquivo+'"></iframe>');
}

//carrega um arquivo aleatório de uma determinada galeria (Array)
function getRand(galeria) {
	var arq = String(galeria[Math.floor(galeria.length*Math.random())]).split('|');
	if(arq[2]=='jpg') {
		getImg('portfolio/'+arq[0]+'/'+arq[1]+'.'+arq[2]);
	} else if(arq[2]=='swf') {
		getFlash('portfolio/'+arq[0]+'/'+arq[1]+'.'+arq[2]);
	} else if(arq[2]=='flv') {
		getVideo('portfolio/'+arq[0]+'/'+arq[1]+'.'+arq[2]);
	}
	//alert('portfolio/'+arq[0]+'/'+arq[1]+'.'+arq[2]);
}

var isWhite = !Math.round(Math.random());
function mudaCorPreto() {
	isWhite = false;
	//desativa botão preto
	$('#blackSite').addClass('inativo').click(function() {});
	//ativa botão branco
	$('#whiteSite').removeClass('inativo').click(mudaCorBranco);
	//muda o documento para preto
	$('body').addClass('dark');
	//altera imagens
	$('#logoBit').attr('src','img/logoBitPreto.png');
	$('#logoPortfolio').attr('src','img/portfolioPreto.png');
}
function mudaCorBranco() {
	isWhite = true;
	//desativa botão branco
	$('#whiteSite').addClass('inativo').click(function() {});
	//ativa botão preto
	$('#blackSite').removeClass('inativo').click(mudaCorPreto);
	//muda o documento para branco
	$('body').removeClass('dark');
	//altera imagens
	$('#logoBit').attr('src','img/logoBitBranco.png');
	$('#logoPortfolio').attr('src','img/portfolio.png');
}

//Envio de e-mail para contato
function enviaContato(){
	var email = $("#email").val();
	var nome = $("#nome");
	var mensagem = $("#mensagem");
	var telefone = $("#telefone").val();
	
	//remove espaços em branco
	nome.val(trim(nome.val()));
	mensagem.val(trim(mensagem.val()));

	//valida cada campo
	if(nome.val().length<5)
		alert("O nome deve conter, pelo menos, 5 caracteres");
	else if(email.length==0)
		alert("Deve ser informado um e-mail válido");
	else if(!validaEmail(email))
		alert("O e-mail digitado não é válido");
	else if(telefone.length==0)
		alert("Deve ser informado um telefone de contato");
	else if(mensagem.val().length<10)
		alert("A mensagem deve conter, pelo menos, 10 caracteres");
	else 
	{			
		$.ajax({
		  url: "mail/envia_contato.php",
		  type: "post",
		  data: $("#formContato").serialize(),
		  success: function(res) {
			if(res==1){ 
				alert("Mensagen enviada com sucesso!");
				document.forms[0].reset();
			}
			else if(res==-2){ alert("Já havia sido enviada uma mensagem idêntica a essa");}
			else if(res==-3){ alert("O envio através desse computador foi bloqueado temporariamente devido ao excesso de mensagens. Por favor, tente novamente mais tarde.");}
			else if(res==-4){ alert("Erro no envio da mensagem. Por favor, tente novamente mais tarde.");}
		  },
		  error: function() {
			alert("Erro no servidor. Por favor tente novamente mais tarde!");
		  },
		  beforeSend: function() {
			//bloqueia o form enquanto o ajax está sendo enviado
			$("#formContato input, #formContato textarea").each(function() {$(this).attr("disabled",true)} );
		  },
		  complete: function() {
			//desbloqueia o form ao término da operação
			$("#formContato input, #formContato textarea").each(function() {$(this).attr("disabled",false);} );
		  }
		});
	}
	return false;
}

//verifica se é um e-mail aceito
function validaEmail(email) {
	var padrao = /^[\w-]+(\.[\w-]+)*@(([\w-]{2,63}\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
	if(padrao.test(email)) return true;
	return false;
}
function maxLength(el,tam) {
	if(el.value.length>tam)
		el.value = el.value.substr(0,tam);
}

//retorna array embaralhado
function shuffle(arr) {
	var s = [];
	while (arr.length) s.push(arr.splice(Math.random() * arr.length, 1));
	return s;
}
