/**

 * Librería: jQuery

 * Document Load

 */

$(document).ready(function(){

                /**

                 * Función para capturar los formularios por GET

                 * y procesar las variables para enviarlas en formato

                 * correcto

                 */

                $("form").submit(function(){

                               var uri="";

                               var ret=true;

                                $(this).find("input[type='text'],input[type='password'],textarea").each(function(i){

                                               if(($(this).attr('validate')=="no-empty" || $(this).attr('validate')=="") && this.value==""){

                                                               if($(this).attr('error')!="" && $(this).attr('error')!=null){

                                                                              alert($(this).attr('error'));

                                                                              this.focus();

                                                               }else{

                                                                              alert("Favor de llenar el campo: "+$(this).attr('name'));

                                                                              this.focus();

                                                               }

                                                               ret=false;

                                                               return false;

                                               }else if($(this).attr('validate')=="email"){

                                                               // Validamos que sea email

                                                               var emailre=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

                                                               if(!emailre.test($(this).attr('value'))){

                                                                              if($(this).attr('error')!='' && $(this).attr('error')!=null){

                                                                                              alert($(this).attr('error'));

                                                                              }else{

                                                                                              alert("Favor de introducir una dirección de correo válida");

                                                                              }

                                                                              this.focus();

                                                                              ret=false;

                                                                              return false;

                                                               }

                                               }else if($(this).attr('validate')=="number"){

                                                               // Validamos campo de tipo numerico

                                                               if(isNaN($(this).attr('value')) || $(this).attr('value')==""){

                                                                              if($(this).attr('error')!='' && $(this).attr('error')!=null){

                                                                                              alert($(this).attr('error'));

                                                                              }else{

                                                                                              alert("Favor de introducir un valor numérico");

                                                                              }

                                                                              $(this).attr('value',"");

                                                                              this.focus();

                                                                              ret=false;

                                                                              return false;

                                                               }

                                               }else if($(this).attr('validate')=="custom" || $(this).attr('validate')=="regex"){

                                                               // Validamos la RegEx

                                                               if($(this).attr('regex')!="" && $(this).attr('regex')!=null){

                                                                              var filter=eval("/"+$(this).attr('regex')+"/");

                                                                              if(!filter.test($(this).attr('value'))){

                                                                                              if($(this).attr('error')!='' && $(this).attr('error')!=null){

                                                                                                              alert($(this).attr('error'));

                                                                                              }else{

                                                                                                              alert("Favor de introducir un valor numérico");

                                                                                              }

                                                                                              this.focus();

                                                                                              ret=false;

                                                                                              return false;

                                                                              }

                                                               }

                                               }

                                               uri+=this.name+','+this.value+"/";

                               });

                               if(ret==false)

                                               return false;

                               if($(this).attr("method").toLowerCase()=="post")

                                               return true;

                               if(ret)

                                               window.location.href=uri;

                               return false;

                });          

});

 