var myapp=angular.module("myapp",[]);myapp.controller("mycontroller",["$scope","$http",function(e,n){e.send="off",e.submitForm=function(){n.post("process.php",{name:document.emailForm.name.value,company:document.emailForm.company.value,email:document.emailForm.email.value,subject:document.emailForm.subject.value,message:document.emailForm.message.value}).success(function(){e.send="true"}).error(function(){e.send="false"})},e.allowValidation=function(){e.$broadcast("kickOffValidations")}}]),myapp.directive("checkEmailOnBlur",function(){var e=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/;return{restrict:"A",require:"ngModel",link:function(n,i,t,a){function o(){e.test(i.val())?(a.$setValidity("emails",!0),a.$setValidity("required",!0)):a.$setValidity("emails",!1)}"radio"!==t.type&&"checkbox"!==t.type&&(i.unbind("input").unbind("keydown").unbind("change"),i.bind("blur",function(){n.$apply(o)}),n.$on("kickOffValidations",o))}}}),myapp.directive("checkLengthOnBlur",function(){return{restrict:"A",require:"ngModel",link:function(e,n,i,t){function a(){var e=n.val();e.length>0?(t.$setValidity("text",!0),t.$setValidity("required",!0)):(t.$setValidity("text",!1),$scope.emailForm.email.$setValidity("required",!1))}"radio"!==i.type&&"checkbox"!==i.type&&(n.unbind("input").unbind("keydown").unbind("change"),n.bind("blur",function(){e.$apply(a)}),e.$on("kickOffValidations",a))}}});