  $(document).ready(function() {

	  $(".referafriend").fancybox({
		  'width'				: 'auto',
		  'height'				: '380px',
		  'autoScale'			: false,
		  'transitionIn'		: 'fade',
		  'transitionOut'		: 'fade',
		  'type'				: 'ajax',
		  'scroll'				: 'none'
	  });
	  
  });  
  
  $(document).ready(function() {
							 
							 
/* competition form validation */

   $('#competition').validate({														   
		showErrors: function(errorMap, errorList) {
			this.defaultShowErrors();
			if ( errorList.length ){
				if( !$("#competition p.error" ).length )  {
					$("#competition").prepend('<p class="error">Please fill in all required fields</p>');
				} 
			} else {
				$("#competition p.error" ).html( "" );
			}

		},
		errorClass: 'showerror',
		
		highlight: function(element, errorClass, validClass) {
     $(element).addClass(errorClass).removeClass(validClass);
	 if ($(element).hasClass('promotion')) {
	 $("#promotions").addClass(errorClass);
	 }
  },
  unhighlight: function(element, errorClass, validClass) {
     $(element).removeClass(errorClass).addClass(validClass);
	 if ($(element).hasClass('promotion')) {
	 $("#promotions").removeClass(errorClass);
	 }
  },

		
		
		rules: {
			first_name: {
				required: true
			},
			last_name: {
				required: true
			},
			email: {
				required: true,
				email: true
			},
		  'Beautifully+Delicious': {
			required: function( element ) {
			  return !( $( 'input[name=KMI\+Brands]' ).is(':checked') );
			}
		}
		},
		messages: {
			first_name: {
				required: ""
			},
			last_name: {
				required: ""
			},
			email: {
				required: "",
				email: ""
			},
			'Beautifully+Delicious': {
				required: ""
			}
		},
    onkeyup : false,
    onclick: false,
    onfocusout: false,
		submitHandler: function(form) {
			$(form).ajaxSubmit({
				success: function() {
					$( '#competition' ).html( '<p class="error">Thank you for entering the Beautifully Delicious competition!</p>' );
				},
				error: function(xhr, statusText )  { 
          alert( 'error!' );
          var data = $.httpData(xhr, 'json' );
          /*
				  $( '.error' ).empty();
				  for ( var field in data.errors ) {
					$( '#rafform_errors' ).css( 'display', 'block' ).append( 
					  '<li><label for="frmyourname" generated="true" class="error" style="display: block;">'+
					  data.errors[ field ]+
					  '</label></li>');
				  }
          */
				}
      });
			return false;
		}
	});
   
   
   /* registration form validation */

   $('#registration').validate({														   
		showErrors: function(errorMap, errorList) {
			this.defaultShowErrors();
			if ( errorList.length ){
				if( !$("#registration p.error" ).length )  {
					$("#registration").prepend('<p class="error">Please fill in all required fields</p>');
				} 
			} else {
				$("#registration p.error" ).html( "" );
			}
		},
		errorClass: 'showerror',
		
		rules: {
			first_name: {
				required: true
			},
			last_name: {
				required: true
			},
			email: {
				required: true,
				email: true
			},
		  'Beautifully+Delicious': {
        required: function( element ) {
          return !( $( 'input[name=KMI\+Brands]' ).is(':checked') );
        }
      }

		},
		messages: {
			first_name: {
				required: ""
			},
			last_name: {
				required: ""
			},
			email: {
				required: "",
				email: ""
			},
			'Beautifully+Delicious': {
				required: ""
			}
		},
    onkeyup : false,
    onclick: false,
    onfocusout: false,
		submitHandler: function(form) {
			$(form).ajaxSubmit({
				success: function() {
					$( '#registration' ).html( '<p class="error">Thank you!</p>' );
				},
				error: function(xhr, statusText )  { 
          alert( 'error!' );
				  var data = $.httpData(xhr, 'json' );
          /*
				  $( '.error' ).empty();
				  for ( var field in data.errors ) {
					$( '#rafform_errors' ).css( 'display', 'block' ).append( 
					  '<li><label for="frmyourname" generated="true" class="error" style="display: block;">'+
					  data.errors[ field ]+
					  '</label></li>');
				  }
          */
				}
			});
			return false;
		}
	});
 
 
 /* contact us form validation */

   $('#contactform').validate({														   
		showErrors: function(errorMap, errorList) {
			this.defaultShowErrors();
			if ( errorList.length ){
				if( !$("#contactform p.error" ).length )  {
					$("#contactform").prepend('<p class="error">Please fill in all required fields</p>');
				} 
			} else {
				$("#contactform p.error" ).html( "" );
			}
		},
		errorClass: 'showerror',
		
		rules: {
			first_name: {
				required: true
			},
			last_name: {
				required: true
			},
			email: {
				required: true,
				email: true
			},
			email_repeat: {
				required: true,
				email: true,
				equalTo: "#email"
			},
			message: {
				required: true
			}

		},
		messages: {
			first_name: {
				required: ""
			},
			last_name: {
				required: ""
			},
			email: {
				required: "",
				email: ""
			},
			email_repeat: {
				required: "",
				email: ""
			},
			message: {
				required: ""
			}
		},
    onkeyup : false,
    onclick: false,
    onfocusout: false,
		submitHandler: function(form) {
			$(form).ajaxSubmit({
				success: function() {
					$( '#contactform' ).html( '<p class="error">Thank you for contacting us.<br/>We will respond to your enquiry as soon as possible.</p>' );
				},
				error: function(xhr, statusText )  { 
          alert( 'error!' );
				  var data = $.httpData(xhr, 'json' );
          /*
				  $( '.error' ).empty();
				  for ( var field in data.errors ) {
					$( '#rafform_errors' ).css( 'display', 'block' ).append( 
					  '<li><label for="frmyourname" generated="true" class="error" style="display: block;">'+
					  data.errors[ field ]+
					  '</label></li>');
				  }
          */
				}
			});
			return false;
		}
	});
 
 
 
});
