//
function factualiza_direccion(nueva){
	document.actualiza_nueva_direccion.nueva_direccion.value=nueva;
	document.actualiza_nueva_direccion.submit();
}

function buildDate(myDate,myDate2,horau,horas){
//var myDate = parseInt(strDate);
//myDate = new Date(myDate);
var mm = myDate.getMonth();
mm = mm + 1;
var dd = myDate.getDate();
dd = dd-1;
var yyyy = myDate.getFullYear();
var mm2 = myDate2.getMonth();
mm2 = mm2 + 1;
var dd2 = myDate2.getDate();
var yyyy2 = myDate2.getFullYear();
var horasr = 0;
var horausu = horau.split(':');
var horasis = horas.split(':');
if(yyyy2 >= yyyy)
{
	if(mm2 >= mm)
	{
		if(dd2 >= dd)
		{
			if(dd2 > dd)
			{
				horasr = 24;
			}
			horasr += horausu[0] - horasis[0];
			if(horausu[1] < horasis[1])
			{
				horasr = horasr - 1;
			}
		}
	}
}

//theDate = (mm+1)+'/'+dd+'/'+yyyy;
//return theDate;
if(horasr < 0)
{
	hosrasr = 0;
}
return horasr;


} 

function accion_domicilio(accion){
	if (accion=="ingresar"){
		destino = "pedidos.php";
	}
	if (accion=="registro"){
		destino = "registro.php";
	}
	document.forma_domicilio.action=destino;
	document.forma_domicilio.submit();
}
//funcion para verificar los datos de la reserva 
function verifica_reserva(fecha_sistema,hora_sistema){
	error = "";
	//calculos para verificas las 24 horas
	fecha_reserva_temp=document.formulario_reserva.fecha_reserva.value.split("-");
	fecha_reserva_temp[1] = fecha_reserva_temp[1]-1;
	fecha_seleccionada=new Date(fecha_reserva_temp[0],fecha_reserva_temp[1],fecha_reserva_temp[2]);
	fecha_seleccionada_con_hora =new Date(fecha_reserva_temp[0],fecha_reserva_temp[1],fecha_reserva_temp[2],document.formulario_reserva.hora.value,document.formulario_reserva.minutos.value);
	var horau = document.formulario_reserva.hora.value;
	var minu = document.formulario_reserva.minutos.value;
	fecha_sistema_temp = fecha_sistema.split('-');
	dia = parseInt(fecha_sistema_temp[2]) + 1;
	year = fecha_sistema_temp[0];
	mes=parseInt(fecha_sistema_temp[1]-1);
	
	if (mes == 0 || mes == 2 || mes == 4  || mes == 6 || mes == 7 || mes == 9 || mes == 11){
		if (dia > 31){//cambia al siguiente mes de 31 dias
			dia = dia - 31;
			mes=mes+1;
			if (mes > 12){
				mes = mes -12;
				year = year +1;
			}//cierra if
		}
	}else if (mes == 1){
		if (dia > 28){//cambia al siguiente mes de Febrero

			dia = dia - 28;
			mes=mes+1;			
		}
	}else{
		if (dia > 30){//cambia al siguiente mes de 30 dias

			dia = dia - 30;
			mes=mes + 1;			
		}
	}
	fecha_limite = new Date(year,mes,dia);
	if (buildDate(fecha_limite,fecha_seleccionada,horau+':'+minu,hora_sistema) < 4){
		error+='Pide tu reserva con 4 horas de anticipacion como minimo\n';
	}
	/*else {//verifica con horas

		hora = hora_sistema.split(":");
		fecha_limite =new Date(year,mes,dia,hora[0],hora[1]);
		diferencia = (fecha_seleccionada_con_hora - fecha_limite)/(1000*60*60*24);
		if (diferencia < 0){
			error+= 'Pide tu reserva con 4 horas de anticipacion como minimo\n';
		}
	}*/

    /*error+='fSeleccionada con Hora: '+fecha_seleccionada_con_hora+'\n';
    error+='fLimite: '+fecha_limite+'\n';
    error+='diferencia: '+diferencia+'\n';*/

	//verifica los campos del formuario
	
	if (document.formulario_reserva.persona.value==""){
		error+="Ingresa el numero de personas\n";
	}
	if (isNaN(document.formulario_reserva.persona.value)){
		error+="Ingresa solamente numeros para la cantidad personas\n";
	}
	if (document.formulario_reserva.sucursal.value==""){
		error+="Selecciona el punto donde deseas realizar la reserva, selecciona la imagen del punto donde deseas efectuar la reserva\n";	
	}
	if (error == ""){
		alert('Tu reserva será confirmada en un plazo de 24 horas, y deberá ser cancelada por lo menos con 2 horas de anticipación.');
		document.formulario_reserva.submit();
	}else{
		alert(error);
	} 
}
//verifica el registro del usuario

function verifica_registro(){
	error = "";        
	vemail = isEmailAddress(document.forma_registro.correo.value);
        
	if (document.forma_registro.nombre.value==""){
		error = "Por favor ingrese su(s) nombre(s) y apellidos\n";
	}
	if (document.forma_registro.nombre_usuario.value==""){
		error+= "Por favor ingrese su nombre de usuario para iniciar sesion\n";
	}
	if (document.forma_registro.pwd.value.length < 6 && document.forma_registro.pwd.value.length > 0){
		error+= "La contraseña debe tener minimo 6 caracteres\n";
	}
	if (document.forma_registro.pwd.value.length == 0){
		error+= "Por favor ingrese su contraseña\n";
	}
	if (document.forma_registro.confirma_pwd.value.length == 0){
		error+= "Por favor ingrese la confirmación de la contraseña\n";
	}
	if (document.forma_registro.pwd.value != document.forma_registro.confirma_pwd.value && document.forma_registro.confirma_pwd.value.length != 0){
		error+= "La contraseña no coincide.\n";
	}	
	if (document.forma_registro.telefono.value==""){
		error+= "Por favor ingrese su numero telefonico\n";
	}
        if (document.forma_registro.correo.value==""){
		error+= "Por favor ingrese su email\n";
	}
	if (document.forma_registro.direccion.value==""){
		error+= "Por favor ingrese su direccion\n";
	}
	if (isNaN(document.forma_registro.telefono.value)){
		error+= "Por favor ingrese solamente numeros para el telefono, sin espacios ni puntos\n";
	}	
	if (vemail == 0){
		error+="Por favor ingrese una direccion de email correcta\n";
	}	
	if (error == ""){
		document.forma_registro.submit();
	}else{
		alert(error);
	}
}

function verifica_logueolog(){
	error = "";        
	        
	if (document.forma_ingreso_login.nombre_usuario.value==""){
		error = "Por favor ingrese su usuario\n";
	}
	if (document.forma_ingreso_login.pwd.value==""){
		error+= "Por favor ingrese su password\n";
	}	
	if (error == ""){
		document.forma_ingreso_login.submit();
	}else{
		alert(error);
	}
}

function verifica_registro_edita(){
	error = "";
	vemail = isEmailAddress(document.forma_edita_usuario.correo.value);

	if (document.forma_edita_usuario.nombre_usuario.value==""){
		error+= "Por favor ingrese su nombre de usuario para iniciar sesion\n";
	}
        if (document.forma_edita_usuario.nombre.value==""){
		error = "Por favor ingrese su(s) nombre(s) y apellidos\n";
	}
        if (document.forma_edita_usuario.correo.value==""){
		error+= "Por favor ingrese su email\n";
	}
	if (document.forma_edita_usuario.direccion.value==""){
		error+= "Por favor ingrese su direccion\n";
	}
	if (isNaN(document.forma_edita_usuario.telefono.value)){
		error+= "Por favor ingrese solamente numeros para el telefono, sin espacios ni puntos\n";
	}
	if (vemail == 0){
		error+="Por favor ingrese una direccion de email correcta\n";
	}
	if (error == ""){
		document.forma_edita_usuario.submit();
	}else{
		alert(error);
	}
}

//verifica la informacion del formulario de contactenos
function verifica_contacto(){
	error="";
	vemail = isEmailAddress(document.forma_contacto.correo.value);
	if (document.forma_contacto.nombre.value==""){
		error+= "Por favor ingrese su nombre\n";
	}
	if (document.forma_contacto.comentarios.value==""){
		error+= "Por favor ingrese sus comentarios\n";
	}	
	if (document.forma_contacto.correo.value==""){
		error+= "Por favor ingrese su direccion de correo electronico\n";
	}
	if (vemail == 0){
		error+="Por favor ingrese una direccion de email correcta\n";
	}	
	if (error == ""){
		document.forma_contacto.submit();
	}else{
		alert(error);
	}
}
//funcion para agregar productos al carro de pedidos
function agrega_carro(cantidad,producto,valor,observacion){
	if (isNaN(cantidad)){//verifica que hayan agregado un numero a cantidad
	
		alert("Por favor ingresa solamente numeros a la cantidad");
	}else if (cantidad != 0 && cantidad != ""){//todo esta bien, agrega el producto al carro
	
			seccion('resumen_carro.php?cantidad='+cantidad+'&producto='+producto+'&valor='+valor+'&observacion='+observacion,'carro_pedido');
	}else{//van a agregar 0 unidades al producto
	
		alert("Agrega una cantidad mayor a cero al producto que deseas ordenar");
	}
}
//funcion que valida que e haya ingresado un email correcto

function isEmailAddress(info){
	var s = info;
	var filter=/^[A-Za-z][A-Za-z0-9_.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
	if (s.length == 0 ) return 1;
	if (filter.test(s)){
		return 1;
	}else{
		return 0;
	}
}

//funcion que muestra las categorias en los pedidos

function muestra_categoria(cual){
	if (cual == anterior){
		document.getElementById(cual).style.display="none";
		anterior = "";				
	}else if (anterior == ""){
		document.getElementById(cual).style.display="";
		anterior = cual;			
	}else if (cual != anterior){
		document.getElementById(cual).style.display="";
		if (anterior != ""){
			document.getElementById(anterior).style.display="none";
		}		
		anterior = cual;
	}
}

//funcion que valida si se confirma o cancela el pedido
function confirmacion_pedido(accion){
	if (accion == "confirma"){//el cliente confirma el pedido
	
		if (document.forma_confirmacion_pedido.forma_de_pago[0].checked==false && document.forma_confirmacion_pedido.forma_de_pago[1].checked==false && document.forma_confirmacion_pedido.forma_de_pago[2].checked==false){
			alert('Selecciona la forma de pago');
		}else{
			document.forma_confirmacion_pedido.action="index.php";
			document.forma_confirmacion_pedido.accion.value=accion;
			document.forma_confirmacion_pedido.submit();	
		}
	}
	if (accion == "cancela"){//el cliente cancelo el pedido
	
		document.forma_confirmacion_pedido.action="pedidos.php";
		document.forma_confirmacion_pedido.accion.value=accion;
		document.forma_confirmacion_pedido.submit();	
	}
}
//funcion que borra productos del carro de pedidos
function borra_producto(id){
	document.forma_confirmacion_pedido.borrar.value=id;
	document.forma_confirmacion_pedido.enviar_pedido.value="Enviar pedido";	
	document.forma_confirmacion_pedido.action="pedidos.php";
	document.forma_confirmacion_pedido.submit();
}
//AJAX
function seccion(url, id_contenedor){
    var pagina_requerida = false;
    if (window.XMLHttpRequest){
        // Si es Mozilla, Safari etc

        pagina_requerida = new XMLHttpRequest ();
    } else if (window.ActiveXObject){
        // pero si es IE

        try{
            pagina_requerida = new ActiveXObject ("Msxml2.XMLHTTP");
        }
        catch (e){
            // en caso que sea una versi?n antigua

            try{
                pagina_requerida = new ActiveXObject ("Microsoft.XMLHTTP");
            }
            catch (e){
            }
        }
    }
    else
    return false;
    pagina_requerida.onreadystatechange = function (){
        // funci?n de respuesta

        cargarpagina (pagina_requerida, id_contenedor);
    }
    pagina_requerida.open ('GET', url, true); // asignamos los m?todos open y send
    pagina_requerida.send (null);
}

// todo es correcto y ha llegado el momento de poner la informaci?n requerida
// en su sitio en la pagina xhtml

function cargarpagina (pagina_requerida, id_contenedor){
if (pagina_requerida.readyState == 1){
	document.getElementById(id_contenedor).innerHTML="";
	}
   	if (pagina_requerida.readyState == 4 && (pagina_requerida.status == 200 || window.location.href.indexOf ("http") == - 1)){
		TEXTO=rescatar_script(pagina_requerida.responseText);
		document.getElementById (id_contenedor).innerHTML = TEXTO;
	}
}
//ORDENA PARA PASAR A AJAX

function ordena(donde,forma,elementos){
var cadena="?";
	for (k=0;k<elementos.length;k++){
		//si es radio o checked
		if (elementos[k].type=="radio" || elementos[k].type=="checkbox"){
			if (elementos[k].checked){
				cadena+= elementos[k].name+"="+elementos[k].value+"&";
			}else{
				cadena+= elementos[k].name+"=-1&";
			}//cierra else

		}else{//es cualquier otra cosa

			cadena+= elementos[k].name+"="+elementos[k].value+"&";
		}//cierra else

	}//cierra for
seccion(donde + cadena,forma);
}

function rescatar_script(texto){
	var p1=texto.split("<script");
	if (p1[1]){
		var p2=p1[1].split(">");
		var p3=p2[1].split("</script");
		if (p3[0] != ""){
			eval(p3[0]);
		}
		texto=p1[0]+p3[1];
		texto=rescatar_script(texto);
	}
	return texto;
}

