
/* 
Author: Gabriel Comarita
Author's Website: http://www.bitrepository.com/

Copyright (c) BitRepository.com
*/

/* [RealTime Validation] */



/*
--------------------
Name
--------------------
*/

var check_sender_name = function() {

$j('#sender_name_error').remove();
$j('#sender_name_error_invalid').remove();
$j('#sender_name_error_min_chars').remove();



if($j('#sender_name').val() == '') {
$j('#sender_name').addClass('error').removeClass('ok').after('<label id="sender_name_error" class="error">Bitte geben Sie Ihren Namen ein.</label>');

check_status();

return false;
} 



else {
$j('#sender_name').addClass('ok').removeClass('error');
}



};

$j('#sender_name').bind('change', check_sender_name);
$j('#sender_name').bind('blur', function() { if($j('#sender_name').val()) { check_sender_name(); } });








/*
--------------------
Email
--------------------
*/

var check_sender_email = function() {

$j('#sender_email_error').remove();
$j('#sender_email_error_invalid').remove();
$j('#sender_email_error_min_chars').remove();

 var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i 

if($j('#sender_email').val() == '') {
$j('#sender_email').addClass('error').removeClass('ok').after('<label id="sender_email_error" class="error">Bitte geben Sie Ihre Email ein.</label>');

check_status();

return false;
} 


if (!filter.test($j('#sender_email').val())) {

$j('#sender_email').addClass('error').removeClass('ok').after('<label id="sender_email_error_invalid" class="error">Bitte eine gültige Email eingeben</label>');

check_status();

return false;
}



else {
$j('#sender_email').addClass('ok').removeClass('error');
}



};

$j('#sender_email').bind('change', check_sender_email);
$j('#sender_email').bind('blur', function() { if($j('#sender_email').val()) { check_sender_email(); } });




/*
--------------------
Nachricht
--------------------
*/

var check_sender_message = function() {

$j('#sender_message_error').remove();
$j('#sender_message_error_invalid').remove();
$j('#sender_message_error_min_chars').remove();



if($j('#sender_message').val() == '') {
$j('#sender_message').addClass('error').removeClass('ok').after('<label id="sender_message_error" class="error">Bitte geben Sie Ihre Nachricht ein.</label>');

check_status();

return false;
} 



if ($j('#sender_message').val().length < 5) { // if the message's legth is less than 15 characters
$j('#sender_message').addClass('error').removeClass('ok').after('<label id="sender_message_error_min_chars" class="error">Ihre Nachricht muss aus mindestens 5 Buchstaben bestehen.</label>');

$j('#sender_message').bind('keypress', check_sender_message);

check_status();

return false;
}


else {
$j('#sender_message').addClass('ok').removeClass('error');
}



};

$j('#sender_message').bind('change', check_sender_message);
$j('#sender_message').bind('blur', function() { if($j('#sender_message').val()) { check_sender_message(); } });



/*
-----------------
Security Code
-----------------
*/

var check_security_code = function() {

//if($j('#security_code').val().length == 5) {

if ($j('#captcha_div').is(':visible')) {

$j('#sc_error').remove();
	

if($j('#security_code').val() == '') {

$j('#security_code').addClass('error').removeClass('ok');
$j('#sec_div_one').after('<label id="sc_error" class="error">Bitte den Code eingeben</label>');

check_status();

} else {

var c_currentTime = new Date();
var c_miliseconds = c_currentTime.getTime();

var validCode = $j('#security_code').val();

/* [Start] AJAX Call */

$j.ajax({ url: 'http://www.cayada.com/kontakt/contact-app/verify-code.php?x='+ c_miliseconds, 
	     data: "security_code="+ validCode,
	     type: 'post', 
	     datatype: 'html', 
	     success: function(outData) { 

	      	          if(outData != 1) {

	      	            if($j("#sc_error.error").length == 0) {
	      	                $j('#security_code').addClass('error').removeClass('ok');
	      	                $j('#sec_div_one').after('<label id="sc_error" class="error">Der eingebene Code ist leider falsch</label>');

							check_status();
	      	            }

	      	          } else {

						  //$j('#sc_error').remove();

                      $j('#security_code').hide();

                      $j('#sec_div_two').show().fadeIn('slow', function() { 
					             $j('#sec_div_one').hide(); 
					             $j('#captcha_div').hide(); 
					             $j('#submit-button').before('<input class="ok" type="hidden" name="security_code" id="security_code" value="'+ validCode +'" />'); 
					  });
					  
					  //$j('div').removeClass("highlighted");

					  }
					  
		              }, 

	     error: function(errorMsg) { alert('Error occured: ' + errorMsg); }});

/* [End] AJAX Call */

}

}

//}

};

var checkSecurityCodeLive = function() {

//alert(1);

var c_currentTime = new Date();
var c_miliseconds = c_currentTime.getTime();

var validCode = $j('#security_code').val();

/* [Start] AJAX Call */

$j.ajax({ url: 'http://www.cayada.com/kontakt/contact-app/verify-code.php?x='+ c_miliseconds, 
	     data: "security_code="+ validCode,
	     type: 'post', 
	     datatype: 'html', 
	     success: function(outData) { 

	      	          if(outData == 1) {

					  $j('#sc_error').remove();

                      $j('#security_code').remove();

                      $j('#sec_div_two').show().fadeIn('slow', function() { 
					             $j('#sec_div_one').hide(); 
					             $j('#captcha_div').hide(); 
					             $j('#submit-button').before('<input class="ok" type="hidden" name="security_code" id="security_code" value="'+ validCode +'" />'); 
					  });
					  
					  $j('div').removeClass("highlighted");

					  check_status();

					  }
					  
		              }, 

	     error: function(errorMsg) { alert('Error occured: ' + errorMsg); }});

/* [End] AJAX Call */

};

var checkSecurityCodeIfNotNULL = function() {
if($j('#security_code').val()) { check_security_code(); }
}

//$j('#sc_error').remove();

$j('#security_code').change(check_security_code);
$j('#security_code').blur(checkSecurityCodeIfNotNULL);
$j('#security_code').keyup(checkSecurityCodeLive);

$j(':input.required').bind('change blur keyup', check_status);

function check_status() {

// Necessary if the form was reseted

if($j('#success_sent').val() == 1) { 
      $j('#note').slideUp('slow');
	  
      $j('#note').html('');

      $j('#success_sent').val(0); 
	  return true; 
} 


if($j("label.error").length > 0) { 
	// Show the top notice error
	$j('#note').html('<div class="notification_error">Bitte korrigieren Sie Ihre Angaben korrigieren und betätigen erneut die Senden-Taste.</div>').slideDown('slow');
}

if($j("label.error").length == 0) { 
	$j('#note').slideUp('slow'); // Hide the top notice error using a 'slide' effect (if necessary)
}

return true;

}


    var fields = ["sender_name", "sender_company", "sender_phone", "sender_email", "sender_message", "security_code"];

    $j.each(fields, function() {

	    if(this == 'security_code') {
	
	      $j('#' + this).focus(function() { $j(this).parent('div').parent('div').addClass("highlighted"); })
				        .blur(function() { $j(this).parent('div').parent('div').removeClass("highlighted"); });
        } else {
          $j('#' + this).focus(function() { $j(this).closest('div').addClass("highlighted"); })
				        .blur(function() { $j(this).closest('div').removeClass("highlighted"); });
	    }

    });

