(function(g){g.fn.validateMyForm=function(k){var k=g.extend({form:"#enrollment",requiredClass:"required",message:"Por favor, no olvide completar todos los campos",showMessage:false,showNotifications:true,notificationText:"Campo requerido",notificationClass:"required-display",emailValidationClass:"email",emailNotificationText:"Correo inv&aacute;lido",numericValidationClass:"numeric",numericNotificationText:"Por favor, solo n&uacute;meros",dateValidationClass:"date",dateNotificationText:"Formato inv&aacute;lido",daysFirst:false,ifClass:"if",thenClass:"then",shake:true,scrollUp:true},k);g(this).each(function(){if(k.showNotifications){g(k.form+" input").each(function(){if(g(this).hasClass(k.requiredClass)){d(g(this),k.notificationClass,k.notificationText)}else{if(g(this).hasClass(k.emailValidationClass)){d(g(this),k.notificationClass,k.notificationText)}else{if(g(this).hasClass(k.numericValidationClass)){d(g(this),k.notificationClass,k.notificationText)}else{if(g(this).hasClass(k.dateValidationClass)){d(g(this),k.notificationClass,k.notificationText)}}}}});var l=1;while(g("."+k.ifClass+l).length>0){g("."+k.thenClass+l).each(function(){d(g(this),k.notificationClass,k.notificationText)});l++}}g(k.form).bind("submit",function(){var p=0;var o="";g(k.form+" input").each(function(){if((g(this).hasClass(k.requiredClass))&&(g(this).val()=="")){if(k.showNotifications){h(g(this),k.shake)}if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.emailValidationClass))&&(g(this).val()!="")&&(!(j(g(this).val())))){i(g(this),k.emailNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.numericValidationClass))&&(g(this).val()!="")&&(!(a(g(this).val())))){i(g(this),k.numericNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.dateValidationClass))&&(g(this).val()!="")&&(!(f(g(this).val(),k.daysFirst)))){i(g(this),k.dateNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((k.showNotifications)&&(g(this).hasClass(k.requiredClass)||g(this).hasClass(k.emailValidationClass)||g(this).hasClass(k.numericValidationClass)||g(this).hasClass(k.dateValidationClass))){b(g(this))}}}}}});var m=1;var n=g("."+k.ifClass+m).length;while(g("."+k.ifClass+m).length>0){if(g("."+k.ifClass+m).val()!=""){g("."+k.thenClass+m).each(function(){if(g(this).val()==""){if(k.showNotifications){h(g(this),k.shake)}if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.emailValidationClass))&&(g(this).val()!="")&&(!(j(g(this).val())))){i(g(this),k.emailNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.numericValidationClass))&&(g(this).val()!="")&&(!(a(g(this).val())))){i(g(this),k.numericNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if((g(this).hasClass(k.dateValidationClass))&&(g(this).val()!="")&&(!(f(g(this).val(),k.daysFirst)))){i(g(this),k.dateNotificationText,k.shake);if((p==0)&&(k.scrollUp)){o=g(this)}p++}else{if(k.showNotifications){b(g(this))}}}}}})}else{g("."+k.thenClass+m).each(function(){if(k.showNotifications){b(g(this))}})}m++}if(p>0){if(k.scrollUp){c(o)}if(k.showMessage){alert(k.message)}return false}});if(k.showNotifications){g("."+k.requiredClass).bind("keyup",function(){if(g(this).val()!=""){b(g(this))}else{h(g(this),k.shake)}});g("select."+k.requiredClass).bind("change",function(){if(g(this).val()!=""){b(g(this))}else{h(g(this),k.shake)}})}})};function d(m,k,l){m.after('<span class="'+k+'">'+l+"</span>")}function h(l,k){l.next("span.required-display").fadeIn(200,function(){if(k){e(g(this))}})}function i(m,l,k){m.next("span.required-display").html(l);m.next("span.required-display").fadeIn(200,function(){if(k){e(g(this))}})}function b(k){k.next("span.required-display").fadeOut(200)}function j(k){var l=/^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;if(!l.test(k)){return false}return true}function a(k){if(k!=parseFloat(k)){return false}return true}function f(q,o){var n=/^(\d{1,2})[\s\.\/-](\d{1,2})[\s\.\/-](\d{4})$/;if(!n.test(q)){return false}var l=q.match(n);var k=parseInt(l[1]);var p=parseInt(l[2]);if(o){p=parseInt(l[1]);k=parseInt(l[2])}var s=parseInt(l[3]);if(k<1||k>12||s<1900||s>2100){return false}if(k==2){var r=((s%4)==0)?29:28}else{if(k==4||k==6||k==9||k==11){var r=30}else{var r=31}}return(p>=1&&p<=r)}function e(l){for(var k=1;k<=2;k++){g(l).animate({marginLeft:"-=2px"},20).animate({marginLeft:"+=2px"},20).animate({marginLeft:"+=2px"},20).animate({marginLeft:"-=2px"},20)}}function c(l){var k=l.offset().top-100;if(g.browser.opera){g("html").animate({scrollTop:k},500)}else{g("html,body").animate({scrollTop:k},500)}}})(jQuery);
