﻿(function(a){a.fn.ajaxContactForm=function(b,c){return this.each(function(){var g=this;var j=a(this);j.prepend('<input type="text" name="bottrap" value="" style="display: none;" />');var d=a.extend({},a.fn.ajaxContactForm.defaults,c);var e=(a(":submit",j).length)?a(":submit",j):a(d.submitButton,j);var i=(a(":reset",j).length)?a(":reset",j):a(d.resetButton,j);var h=(typeof(b)=="undefined")?"":b;a("input, textarea",j).each(function(){if(a.fn.ajaxContactForm.is_invoerveld(a(this))){a(this).focus(function(){a(this).addClass("focussed")});a(this).blur(function(){a(this).removeClass("focussed");if(!a.fn.ajaxContactForm.test_veld(a(this))){d.falseFieldFunc(a(this))}});if(a.fn.ajaxContactForm.is_default_value_veld(a(this))){a(this).addClass("inactive").data("defaultvalue",a(this).val()).focus(function(){if(a(this).val()==a(this).data("defaultvalue")){a(this).removeClass("inactive").val("")}}).blur(function(){if(a(this).val()==""){a(this).addClass("inactive").val(a(this).data("defaultvalue"))}})}}});e.click(function(){j.css("opacity","0.5");var n=new Array();var f=new Array();a("input, textarea, select",j).each(function(p){if(a.fn.ajaxContactForm.is_invoerveld(a(this))){var r=a(this);var o=r.attr("name");var q=r.val();if(a.fn.ajaxContactForm.test_veld(r)){if(r.attr("type")=="radio"&&!r.is(":checked")){q=""}if(r.attr("type")=="checkbox"&&!r.is(":checked")){q=""}if(q.length>0){f.push(o+"="+escape(q))}}else{n.push(a(this))}}});if(n.length>0||f.length==0){d.falseMessageFunc(d.language);j.css("opacity","1");for(var m=0;m<n.length;m++){d.falseFieldFunc(n[m])}return false}else{if(h!=""){f.push("language="+d.language);for(var k in d.extraValues){f.push(k+"="+d.extraValues[k])}var l=f.join("&");a.ajax({type:d.method,url:h,data:"ajaxcontactform=ajaxcontactform&"+l,success:function(o){if(o=="error"){d.errorMessageFunc("error")}else{d.succesMessageFunc("You should receive a confirmation e-mail within the next few minutes. Please confirm your subscription by responding to the e-mail.",j)}j.css("opacity","1")},error:function(){d.errorMessageFunc("Error, file not found");j.css("opacity","1")}});return false}else{j.css("opacity","1");if(g.nodeName.toLowerCase()=="form"){g.submit();return false}return true}}});i.click(function(){if(g.nodeName.toLowerCase()=="form"){a.fn.ajaxContactForm.resetForm(j)}else{a.fn.ajaxContactForm.clearForm(j)}return false})})};a.fn.ajaxContactForm.defaults={submitButton:".submit",resetButton:".reset",method:"POST",language:"en",extraValues:{},falseFieldFunc:function(b){b.effect("highlight",{color:"#dd0000"},1000)},falseMessageFunc:function(b){switch(b){case"en":msg="Attention, not all the fields have been filled out correctly.";break;case"de":msg="Achtung, nicht alle Felder sind korrekt ausgefuellt.";break;default:msg="Let op, niet alle velden zijn correct ingevuld.";break}alert(msg)},errorMessageFunc:function(b){alert(b)},succesMessageFunc:function(c,b){a.fn.ajaxContactForm.clearForm(b);alert(c)}};a.fn.ajaxContactForm.clearForm=function(b){a("input, textarea, select",b).each(function(){var d=this.type.toLowerCase();var c=this.tagName.toLowerCase();if(d=="text"||d=="password"||c=="textarea"){this.value=""}else{if(d=="checkbox"||d=="radio"){this.checked=false}else{if(c=="select"){this.selectedIndex=0}}}})};a.fn.ajaxContactForm.resetForm=function(b){b.get(0).reset()};a.fn.ajaxContactForm.test_v=function(b,c,d){if(b.indexOf("__v")==-1){return true}if(c.length<1){return false}if((d.attr("type")=="radio"||d.attr("type")=="checkbox")&&!d.is(":checked")){return false}return true};a.fn.ajaxContactForm.test_n=function(b,d){if(b.indexOf("__n")==-1){return true}var e=new Array(" ","-","+","(",")","/","\\");for(var c=0;c<e.length;c++){d=d.split(e[c]).join("")}if(d.length==0){return true}else{if(isNaN(d)){return false}}return true};a.fn.ajaxContactForm.test_e=function(b,c){if(b.indexOf("__e")==-1){return true}if(c.length<1){return true}if(c.indexOf("@")!=-1&&c.indexOf(".")!=-1&&c.length>4){return true}else{return false}};a.fn.ajaxContactForm.test_d=function(b,c,d){if(!a.fn.ajaxContactForm.is_default_value_veld(d)){return true}if(d.val()==d.data("defaultvalue")){return false}return true};a.fn.ajaxContactForm.test_veld=function(d){var b=d.attr("name");var c=d.attr("value");if(a.fn.ajaxContactForm.test_v(b,c,d)&&a.fn.ajaxContactForm.test_n(b,c)&&a.fn.ajaxContactForm.test_e(b,c)&&a.fn.ajaxContactForm.test_d(b,c,d)){return true}else{return false}};a.fn.ajaxContactForm.is_invoerveld=function(b){if(b.attr("type")=="button"){return false}if(b.attr("type")=="submit"){return false}if(b.attr("type")=="reset"){return false}if(b.attr("name")=="bottrap"){return false}return true};a.fn.ajaxContactForm.is_default_value_veld=function(b){return(b.attr("name").indexOf("__d")==-1)?false:true}})(jQuery);
