/*
@Sistema: Luis Lesur
@Version: 1.0
@Autor: Juan J. Lopez Lira
@Diseno: Daniel Hidalgo
@Fecha: 4 Diciembre 2010
@Descripcion: Sistema de Funciones Javascript
*/

jQuery(document).ready(function() {
	$(".submenu li ul").hide();
	$("a.trigger").click(function(){
		$(this).toggleClass("active").next().slideToggle("slow");
	});
	
    jQuery('.gallery').jcarousel({
        auto: 5,
        wrap: 'last',
        initCallback: mycarousel_initCallback
    });

   //PrettyPhoto
   $("a[rel^='gallery']").prettyPhoto({theme:'facebook'}); 
   
   $("#kw").click(function(){
		 $(this).val('');
	});
});


// Abrir Nueva Ventana
function openwindow(Url,NombreVentana,Utilidades){
 window.open(Url,'Ventana','status=yes,scrollbars=yes,resizable=yes,width=640,height=480');
}

//Funcion para Envio de formularios
function Send(form){
	document.getElementById(form).submit();	
}

//Funcion para mostrar mas informacion
function Show(id){
	if(document.getElementById(id).style.display =='none'){
		document.getElementById(id).style.display ='block'
		} else {
			document.getElementById(id).style.display ='none'
			}
	}
	
//Funcion para Borrar contenido de campos
function ClearField(id){
   var field = document.getElementById(id);
      var stringNew = field.value;
      field.value = "";
}

//Funcion para asignar valor default a campos
function SetField(id,ogval){
   var field = document.getElementById(id);
   if(field.value == ""){
      field.value = ogval;
   }
}

function clearform(id) {
    $("#"+id).find(':input').each(function() {
        switch(this.type) {
            case 'password':
            case 'select-multiple':
            case 'select-one':
            case 'text':
            case 'textarea':
                $(this).val('');
                break;
            case 'checkbox':
            case 'radio':
                this.checked = false;
        }
    });
}

	
//Funcion de Precarga Ajax
function loading(){
	loader = '<div class="loader"></div>';
	return loader;
}

// Genera el Objeto de Conexion para Ajax
function newajax(){
	var xmlhttp=false;
	try{
		// Creacion del objeto AJAX para navegadores no IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e){
		try{
			// Creacion del objet AJAX para IE
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(E){
				if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
				}
				}
				return xmlhttp; 
}

function DoDelImg(img,sct,tbl,ids,idv){	
	ajax = newajax();
	
	ajax.open("POST", "/include/ajaxlib.php", true);
	ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    ajax.onreadystatechange=function() {
        if (ajax.readyState==1) {
            document.getElementById('bkimgkontainer').innerHTML = precarga();
        }
        if (ajax.readyState==4) {
            document.getElementById('bkimgkontainer').innerHTML = ajax.responseText;
        }
    }
	ajax.send("cmd=dodelimg"+"&img="+img+"&sct="+sct+"&tbl="+tbl+"&ids="+ids+"&idv="+idv)
}

function editAlt(id){

	alt = document.getElementById(id).value;
		
	ajax = newajax();
	
	ajax.open("POST", "/include/ajaxlib.php", true);
	ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    ajax.onreadystatechange=function(){
        if (ajax.readyState==1) {
            document.getElementById('loading').innerHTML = precarga();
        }
        if (ajax.readyState==4) {
            document.getElementById('loading').innerHTML = ajax.responseText;
        }
    }
	ajax.send("cmd=editAlt"+"&alt="+alt+"&id="+id);
}


function ChnImg(img,title){	
	ajax = newajax();
	
	ajax.open("POST", "/include/ajaxlib.php", true);
	ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    ajax.onreadystatechange=function() {
        if (ajax.readyState==1) {
            document.getElementById('producto-imagen').innerHTML = precarga();
        }
        if (ajax.readyState==4) {
            document.getElementById('producto-imagen').innerHTML = ajax.responseText;
        }
    }
	ajax.send("cmd=dochnimg"+"&img="+img+"&title="+title)
}


function validator(eleMent){
	var validatorClass = 'req'; 
	var elems = 0;
	var invalid = 0;
	var validForm = false;
	var mail1 = "";
	$(':input',eleMent).each(function(i){
		if($(this).hasClass(""+validatorClass+" email"))
			{elems += 1;if(!checkEmail(this)){invalid += 1;}}
		else if($(this).hasClass(""+validatorClass+" phone"))
			{elems += 1;if(!checkPhone(this)){invalid += 1;}}
		else if($(this).hasClass(""+validatorClass+" nonempty"))
			{elems += 1;if(!checkOtherEmpty(this)){invalid += 1;}}
		else if($(this).hasClass(""+validatorClass+" main"))
			{elems += 1;mail1 = this;}
		else if($(this).hasClass(""+validatorClass+" check"))
			{elems += 1;if(!corroboraEmail(mail1,this)){invalid += 1;} }
	});
	var passed = (elems - invalid);
	if(passed == elems)
		{validForm = true;}
	return validForm;
}

function isValidEmail(emailAdd){
	var rgEx = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return rgEx.test(emailAdd);
	}

function isValidPhone(phNumber){
	var rgEx = new RegExp(/^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/);
	return rgEx.test(phNumber);
}

function checkOtherEmpty(Elemnt){
	var nonEmpty = $(Elemnt).val();
	if(nonEmpty != ''){
		$(Elemnt).fadeTo(100,0.1,function(){
			$(this).removeClass("errorClass").addClass("okClass").fadeTo(50,1);});
			return true;
		}else{
			$(Elemnt).fadeTo(100,0.1,function(){
			$(this).removeClass("okClass").addClass("errorClass").fadeTo(50,1);});
			return false;
		}
}

function checkPhone(phoneElem){
	var phone = $(phoneElem).val();
	if(isValidPhone(phone)){
		$(phoneElem).fadeTo(100,0.1,function(){
		$(this).removeClass("errorClass").addClass("okClass").fadeTo(50,1);});
		return true;
	}else{
		$(phoneElem).fadeTo(100,0.1,function()
		{$(this).removeClass("okClass").addClass("errorClass").fadeTo(50,1);});
		return false;
	}
}

function checkEmail(emailElem){	
	var email = $(emailElem).val();
	if(email != 0){
		if(isValidEmail(email)){
		$(emailElem).fadeTo(100,0.1,function(){
			$(this).removeClass("errorClass").addClass("okClass").fadeTo(50,1);});
			return true;
		}else{
			$(emailElem).fadeTo(100,0.1,function()
			{$(this).removeClass("okClass").addClass("errorClass").fadeTo(50,1);});
			return false;
		}
	}else{
		$(emailElem).fadeTo(100,0.1,function(){
		$(this).removeClass("okClass").addClass("errorClass").fadeTo(50,1);});
		return false;
	}
}


function corrEmail(){
	var mail1 = $(".main").val();
	var mail2 = $(".check").val();
	
	if(mail1 != mail2){ 
		$(".check").fadeTo(100,0.1,function(){
			$(this).removeClass("okClass").addClass("errorClass").fadeTo(50,1);});
			return false;
		}else{
			$(".check").fadeTo(100,0.1,function(){
			$(this).removeClass("errorClass").addClass("okClass").fadeTo(50,1);});
			return true;
		}
}

function sendMail(){
	var link = $('#contacto').serialize()+"&cmd=send";
	if(validator('#contacto')){
		$.post("include/send.php",link,function(data){
		if(data == 'Gracias su mensaje ha sido enviado'){
				alert(data);
			}else{
				alert(data);
			}
		});
	}else{
		alert('Verifica la informacion');
	}
}


function comprar(){
	var link = $('.add2cart').serialize();
		$('.response').html('<span>El producto ha sido agregado al Carrito</span>').fadeIn().delay(4000).fadeOut();
		$.post("include/ajaxlib.php",link,function(data){
		$('#cartdetails').html(data);
		});
}

function remove(id,cliente){
	var link = "cmd=remove&id=" + id + '&idcliente=' + cliente;
		$('.response').html('<span>El producto ha sido removido del Carrito</span>').fadeIn().delay(4000).fadeOut();
		$.post("include/ajaxlib.php",link,function(data){
		$('#cartdetails').html(data);
		window.location = "comprar.php";
		});
}


function update(id,cliente){
	var cantidad = $('#item' + id).val();
	if(isNaN(cantidad)){
		alert('Introduce solo valores numericos');
		$('#item' + id).focus();
		return false;
	}else{
		if(cantidad > 100){
		alert('Para compras mayores a 100 tomos favor de contactarnos por email o telefono');
		$('#item' + id).focus();
		return false;
		}else{
			var link = "cmd=upadte&id=" + id + '&idcliente=' + cliente + "&cantidad=" + cantidad;
			$('.response').html('<span>El pedido ha sido actualizado</span>').fadeIn().delay(4000).fadeOut();
			$.post("include/ajaxlib.php",link,function(data){
			$('#cartdetails').html(data);
			window.location = "comprar.php";
			});	
		}
	}
}


//Carrousel
function mycarousel_initCallback(carousel){
    carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });

    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

     carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};
