$(document).ready(function() {
    var blnCheckCaptcha = false; // check for an captcha request
    var blnSubmitForm = false; // submit form after captcha request

    function checkEmail(strEmail) {
        if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(strEmail))
        {
                return true;
        }
        return false;
    }

   $('form#form_aanvragen').submit(function() {
       var el = $(this);
       var success = true;

       var elementError = function(el) {
           success = false;
           el.css('border', '1px solid #e16e1a');
           el.focus(function() {
              el.css('border', '1px solid #cccccc');
           });
        };

        if(blnCheckCaptcha) {
            blnSubmitForm = true;
            return false;
        }


       if(!el.find('#name').val().length) {
           elementError(el.find('#name'));
       }

       if(!el.find('#email').val().length) {
           elementError(el.find('#email'));
       }

       if(!checkEmail(el.find('#email').val())) {
           elementError(el.find('#email'));
       }

       if(!el.find('#phonenr').val().length) {
           elementError(el.find('#phonenr'));
       }




       if(el.find('#captcha').attr('validated') == 'true') {

       }
       else {
           elementError(el.find('#captcha'));
       }

       if(!success && $(document).scrollTop() > el.offset().top) {
           $('html,body').animate({scrollTop: el.offset().top}, 1000);
       }



       return success;

   });

   $('#captcha').change(function() {
       var el = $(this);
       blnCheckCaptcha = true;
       el.blur();
       
       $.post(document.location.href, { 'checkcaptcha' : el.val()}, function(data) {
           
           
           el.attr('validated', data.success);
           blnCheckCaptcha = false;
           if(blnSubmitForm) {
               $('form#form_aanvragen').submit();
           }
       }, 'json');

   });

   $('a.aanvragen').click(function(e) {
       e.preventDefault();
       $('form#form_aanvragen').submit();
       return false;
   })

});
