
$(document).ready(function(){

     var nombre = $( "#txtnombre" ),
         apellido = $( "#txtapp" ),
         email = $( "#txtcorreo" ),
         ciudad = $("#txtciudad"),
         telefono = $("#txtphone"),
         comentario = $("#txtdesc"),
         captcha_usuario = $("#txtcapt"),
         captcha = $("#txtcaptcha"),
        allFields = $( [] ).add( nombre ).add( apellido ).add( email ).add(ciudad).add(telefono).add( comentario ).add( captcha_usuario ),
        tips = $( ".validateTips" );

    function updateTips( t ) {
            tips
            .text( t )
                .addClass( "ui-state-highlight" );
//            setTimeout(function() {
//                    tips.removeClass( "ui-state-highlight", 1500 );
//            }, 700 );
    }

    function checkRegexp( o, regexp) {
        if ( !( regexp.test( o.val() ) ) ) {
                o.addClass( "ui-state-error" );
                return false;
        } else {
                return true;
        }
    }

    function quitaEspacio(text)	{
        text=$.trim(text);
        return text;
    }

    function Validar(elemento,msj_error){

        if(quitaEspacio(elemento.val()) == ''){
            elemento.addClass( "ui-state-error" );
            updateTips( msj_error );
            return false;
        }else{
            return true;
        }
    }
	
   //formatear dialogo
   $("#contacto-mfc").dialog({
        title: 'CONT\u00c1CTANOS: ',
        autoOpen: false,
		closeOnEscape: false,
        show: "blind",
        hide: "explode",
        height: 680,
        width: 480,
        modal: true,
        resizable: false,
        zIndex: 900000,
        buttons: {
                'ENVIAR': function() {

                    var bValid = true;
                    allFields.removeClass( "ui-state-error" );

                    //validacion para checar que ningun campo este vacío

                    if(!Validar(nombre,"El valor de la casilla Nombre es requerido")){
                        bValid = false;
                        return;
                    }

                     if(!Validar(apellido,"El valor de la casilla Apellido es requerido")){
                        bValid = false;
                        return;
                    } 
                    
                    if(!Validar(email,"El valor de la casilla Correo electr\u00f3nico es requerido")){
                        bValid = false;
                        return;
                    }
                    else if(!checkRegexp(email, /^[a-zA-Z][\w\_\.-]*[a-zA-Z0-9_]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/ )){
                        bValid = false;
                        updateTips( "En la casilla Correo electr\u00f3nico: el formato de entrada es incorrecto.");
                        return;
                    }
                    
                    if(!Validar(ciudad,"El valor de la casilla Ciudad es requerido")){
                        bValid = false;
                        return;
                    }
                    
                    if(!Validar(telefono,"El valor de la casilla Tel\u00E9fono es requerido")){
                        bValid = false;
                        return;
                    }///^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,3})|(\(?\d{2,3}\)?)) (-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/ 
                    else if(!checkRegexp(telefono, /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,3})|(\(?\d{2,3}\)?))(-| )?(\d{3})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/)){
                            if(!checkRegexp(telefono,/^(\d{3})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/)){
                                    bValid = false;
                                    updateTips( "En la casilla Tel\u00E9fono: el formato de entrada es incorrecto.");
                                    return;                                            
                            }
                            telefono.removeClass( "ui-state-error" );
                    }  

                     if(!Validar(comentario,"El valor de la casilla Comentarios es requerido")){
                        bValid = false;
                        return;
                    }

                    if(!Validar(captcha_usuario,"El valor de la casilla c\u00f3digo es requerido")){
                        bValid = false;
                        return;
                    }
                    
                    if(quitaEspacio(captcha_usuario.val()) != quitaEspacio(captcha.val())){
                         bValid = false;
                         captcha_usuario.addClass( "ui-state-error" );
//                         alert(captcha_usuario.val() + ' ' +  captcha.val());
                         updateTips( "Escribe el c\u00f3digo correctamente." );
                         return;
                    }


                    if(bValid){//ENVIAR DATOS AL SCRIPT Q ENVIA Y GUARDA EL CORREO..

                        $(this).dialog('close');

                        efecto_block();

                         $.post("contacto.handle.php",//url destino
                            $("#frmContacto").serialize(),//enviamos todos los datos del formulario
                            function(data)
                            {

                                $.unblockUI();
                                alert(data);
                                
                             }
                            );
                     }                    
            }
        },
        close: function() {
                allFields.val( "" ).removeClass( "ui-state-error" );
                tips.text('');
                tips.removeClass( "ui-state-highlight");
        }
    });
    
    
    /**prueba de reload imagen captcha**/
    $("#reload").click(function(){ 
        
        $.post("include/random-captcha.php",function(res){
            $("#imgcaptcha").attr('src','include/captcha.php?rand=' + res);
            $("#txtcaptcha").val(res);            
        });
        
    })
    
    


});
