var debug = false;
var fulldebug = false;
var sent = false;
var data; // inicializa los campos que van a ser parceados
var xmlHttp;
var redireccion; // inicializa redireccion por si se pide del post
var loadingMsg = "Cargando...";
var sendingMsg = "Enviando...";
var successMsg = '<a href="#" style="color:#000;">Mensaje Enviado!</a>';
var badMsg = "Verifique los campos marcados en rojo";

function onAfter(curr, next, opts) {
    var current = opts.currSlide+1;
	var count = opts.slideCount;
    //$("#prev")[index == 0 ? "hide" : "show"]();
    //$("#next")[index == opts.slideCount - 1 ? "hide" : "show"]();
	//$("#actual").append((index+1) + " / " + (opts.slideCount - 1));
	$(".menu1 li a").removeClass('on');
	$("#paso_"+current+" a").addClass('on');
	$("#actual").html("Paso "+current+" de "+count);
	//alert(index);
}

$(function(){
	
	var to;
	$(window).load(function(){
	to = setTimeout(function () { 
	$('#loading_page').fadeOut(2000);
	}, 200);
	});
	clearTimeout(to);

	// FAQ
	$("#faq").fadeOut(2000);

	// HIDE SLIDER
	$(".container_slider").hide();
	$(".flecha#menu1").click( function() {
	$(".container_slider").toggle("fast");
	$("#faq").slideUp("fast");
	});
	
	$(".flecha#menu2").click( function(){
	$(".container_slider").slideUp("fast");
	if($("#faq").is(":hidden")) {
		$("#faq").slideDown("fast");
	}else {
		$("#faq").slideUp("fast");
	}
	});
		
	// SLIDE PRODUCTO AMPLIADO
	$(".slider").cycle({
		fx:     "fade",
		speed:   800, 
		prev:   "#prev",
		next:   "#next",
		after:   onAfter,
		timeout: 6000,
		pager:  '.paginador2', 
    	pagerAnchorBuilder: function(idx, slide) { 
        return '.paginador2 li:eq(' + idx + ') a'; 
    	}
	});
	
	$("#pause").css({background: 'url(img/player_btn.jpg) no-repeat scroll -18px -16px'});
		
	$(".slider").cycle("pause");
	$("#pause").click(function() { 
	$(".slider").cycle("pause");
	$("#resume").css({background: 'url(img/player_btn.jpg) no-repeat scroll -35px 0'});
	$("#pause").css({background: 'url(img/player_btn.jpg) no-repeat scroll -18px -16px'});
	$("#actual").html("Slideshow Detenido");
	});
	
	$("#resume").click(function() { 
	$(".slider").cycle("resume",true);
	$("#pause").css({background: 'url(img/player_btn.jpg) no-repeat scroll -18px 0'});
	$("#resume").css({background: 'url(img/player_btn.jpg) no-repeat scroll -35px -16px'});
	$("#actual").html("Slideshow Reanudado");
	onAfter;
	});

/// HOME ACORDION
$(".col1 ul li ul").hide();
$(".flecha").click( function(){
var cual = $(this).attr('id');
$(".flecha").css({background: 'url(img/flechas.png) no-repeat scroll 0 -33px', opacity: 1});
$('.col1 ul li ul').slideUp();
if($("."+cual).is(':hidden')){
$("#"+cual).css({background: 'url(img/flechas.png) no-repeat scroll 0 0', opacity: 0.5});
$("."+cual).slideDown();
}
});

/// ULTIMOS TRABAJOS
$(".foto img").hover(
function(){
$(this).animate({opacity: 0.8}, 100);
//$(this).parent().css({'background': 'transparent url(img/trabajo_red.gif) no-repeat scroll center top'});
},
function(){
$(this).animate({opacity: 1}, 100);
//$(this).parent().css({'background': 'transparent url(img/trabajo.gif) no-repeat scroll center top'});
}
);

/// ULTIMOS CONTACTO
$("#box_contacto img").hover(
function(){
$(this).animate({opacity: 0.3}, 200);
$(this).parent().parent().css({'background': 'transparent url(img/contacto_red.gif) no-repeat scroll center top'});
},
function(){
$(this).animate({opacity: 1}, 200);
}
);


/// LOGO
$(".logo img").hide();
$(".logo").hover(
function(){
$(".logo img").fadeIn(200);
},
function(){
$(".logo img").fadeOut(800);
}
);

/// LANG
$(".lang_uk img").hide();
$(".lang_uk").hover(
function(){
$(".lang_uk img").fadeIn(300);
},
function(){
$(".lang_uk img").fadeOut(800);
}
);

/// LANG
$(".lang_es img").hide();
$(".lang_es").hover(
function(){
$(".lang_es img").fadeIn(300);
},
function(){
$(".lang_es img").fadeOut(800);
}
);


/// LIGTHBOX
if(typeof lightBox == "function"){
$('.foto_short a').lightBox({
fixedNavigation:'true',
overlayBgColor: '#000000',
overlayOpacity: 0.1,
containerResizeSpeed: 450,
txtImage: 'Imagen',
txtOf: 'de'
});
}

});

/// VALIDAR
function validar(campos,mode,url,up){
	if(sent) return false;
	popup(loadingMsg,'hold','no');
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert ('Tu explorador no soporta AJAX.');
		return;
	} 
	
	if(url) {
	redireccion = url;
	}else {
	redireccion = 0;
	}
		
	data = document.getElementById(campos).value;
	data = data.split(',');
	var params = parseParams(data);
	
	xmlHttp.onreadystatechange = doValidar;
	xmlHttp.open("POST",root+'validate.php?mode='+mode,true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.setRequestHeader("Content-length",params.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(params);
}

function doValidar(){ 

var errores = 0;

	if (xmlHttp.readyState==4){
		
		//$('html, body').animate({scrollTop:0}, 1500);
	
		var r = xmlHttp.responseText;
		
		// debug
		if(debug == true) alert(r);
		if(debug == true && redireccion!=0) alert('redireccionar a la url: '+redireccion+' si es que todos los campos estan validados.');
		
		var x = 0;
		var f = new Array();
		
		for(i in data){
			f[x] = r.substr(x,1);
			
			// fulldebug
			if(fulldebug == true) alert('campo numero:'+f[x]);
			
			validate(f[x],data[i]);
			x++;
		}
		
		for(i in f){
			if(f[i] == '0') errores++;
		}
		
		// fulldebug
		if(fulldebug == true) alert('errores='+errores);
				
		if(errores > 0){
			popup(badMsg,'fade','no');
			$('#ocultar_enviar > a').css('background','transparent url(img/submit_error.png) no-repeat');
		}else{
			sent = true;
			popup(sendingMsg,'hold','no');
			$('#ocultar_enviar').html("<p>Mensaje Enviado!</p>");
			popup(successMsg,'fade','no');
			if(redireccion!=0) redir(redireccion,5000);
		}
	
	}

}

// ----------------- AJAX ------------------- //

var xmlHttp;
function GetXmlHttpObject(){var xmlHttp=null;try{xmlHttp=new XMLHttpRequest();}catch(e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}}return xmlHttp;}

///////////////////// POPUP ////////////////////////

function popup(msg,unblock,red){
if(unblock=='click') msg = msg + ' (Click para continuar) ';
$.blockUI({ 
message: msg.replace(/\n/gi,'<br/>'),
css: {
border:'none', padding:'15px', size:'12.0pt',
backgroundColor:'#900', color:'#fff',
opacity:'.8','-webkit-border-radius': '10px','-moz-border-radius': '10px'
}
});
if(unblock=='hold'){
// algo adicional para el holding
}
if(unblock=='fade'){
window.setTimeout($.unblockUI, 4500);
//$(document).bind('click', function() {
//window.setTimeout($.unblockUI, 1);
//if(red=='si' && unblock!='hold') redir('',100);
//});
if(red=='si' && unblock!='hold') redir('',5000);
}
if(unblock=='click'){
$(document).bind('click', function() {
window.setTimeout($.unblockUI, 1);
redir('',500);
});
if(red=='si' && unblock!='hold' && unblock!='click') redir('',500);
}
}

////////////////// COLOREA CAMPOS ///////////////////////////

// validate estilo de campos
function validate(status,id){
if(status == 0){
//document.getElementById(id).style.borderColor = '#f00';
//document.getElementById(id).style.color= '#f00';
$("#"+id).css('background','#ffe3e3');
$("#"+id).css('color','red');
$("#"+id).css('border','1px solid red');
//$("label[for="+id+"]").css('color','red');
//$('#todo_'+id).css('background','red');
}else{
//document.getElementById(id).style.borderColor = '#00ff00';
//document.getElementById(id).style.color= '#00ff00';
$("#"+id).css('background','#e3ffe8');
$("#"+id).css('color','green');
$("#"+id).css('border','1px solid green');
//$('#todo_'+id).css('background','transparent');
}
}

//////////////////// PARSER /////////////////////////

// parser
function parseParams(params){
var contenedor = '';
for(var contar in params){
var type = gettype(params[contar]);
if(type == 'checkbox' || type == 'radio'){
contenedor += params[contar]+'='+getcheck(params[contar])+'&';
}else if(type == 'select-multiple'){
contenedor += params[contar]+'='+getMultiple(params[contar])+'&';
}else{
contenedor += params[contar]+'='+escape(getval(params[contar]))+'&';
}
}
return contenedor.substr(0,contenedor.length-1);
}

// Get And Sets
function setval(id,val){
document.getElementById(id).value = val;
}
function getval(id){
return document.getElementById(id).value;
}
function getcheck(id){
return document.getElementById(id).checked;
}
function gettype(id){
return document.getElementById(id).type;
}
function getMultiple(ob){
ob = document.getElementById(ob);
selected = new Array();
for(var i = 0; i < ob.options.length; i++) if(ob.options[i].selected) selected.push(ob.options[i].value);
return selected;
}

///////////////// REDIR ////////////////////////////

// redir
function redir(url,timeout){
	setTimeout('doRedir(\''+url+'\')',timeout);
}
// do redir
function doRedir(url){
	window.location = url;
}