// JavaScript Document

		$( function() {
			$( '#contactForm1' ).ipValidate( {

				required : { //required is a class
					rule : function() {
						return $( this ).val() == '' ? false : true;
					},
					onError : function() {
						if( !$( this ).parent().hasClass( 'element_container' ) ) {
							$( this ).wrap( '<div class="element_container error_div"></div>' ).after( '<span>' + $( this ).attr( 'rel' ) + '</span>' );
						} else if( !$( this ).parent().hasClass( 'error_div' ) ) {
							$( this ).next().text( $( this ).attr( 'rel' ) ).parent().addClass( 'error_div' );
						}
					},
					onValid : function() {
						$( this ).next().text( '' ).parent().removeClass( 'error_div' );
						$(this).focus();
					}
				},
				
				fname1: { //required is a class
					rule : function() {
						return $( this ).val() == 'Name' ? false : true;
					},
					onError : function() {
						$(this).toggleClass("error");
					},
					onValid : function() {
						$( this ).next().text( '' ).parent().removeClass( 'error_div' );
						$(this).toggleClass("error");
						$(this).focus();
					}
				},
				
				subject2: { //is a class
					rule : function() {
						return $( this ).val() == 'Subject' ? false : true;
					},
					onError : function() {
						$(this).toggleClass("error");
					},
					onValid : function() {
						$( this ).next().text( '' ).parent().removeClass( 'error_div' );
						$(this).toggleClass("error");
						$(this).focus();
					}
				},
				email2: { // is a class
					rule : function() {
						//return $( this ).val() == 'Email Address' ? false : true;
						return isValidEmailAddress( $(this).val() );
					},
					onError : function() {
						$(this).toggleClass("error");
					},
					onValid : function() {
						$( this ).next().text( '' ).parent().removeClass( 'error_div' );
						$(this).toggleClass("error");
						$(this).focus();
					}
				},
				
				desc1: { // is a class
					rule : function() {
						return $( this ).val() == 'Enquiry' ? false : true;
					},
					onError : function() {
						$(this).toggleClass("error");
					},
					onValid : function() {
						$( this ).next().text( '' ).parent().removeClass( 'error_div' );
						$(this).toggleClass("error");
						$(this).focus();
					}
				},

				submitHandler : function() {
					$('.holder1').hide();
					$('#loading1').show();
					if($('#enqtype').val()=="expresspost"){
						var enqtype="expresspost";
					}else
						var enqtype="contactform";
						
					$.post('mailEnquiry.php',{name:$('#name1').val(), subject:$('#subject1').val(), email:$('#email1').val(), description:$('#description1').val(), type:enqtype},
					function(data){
						$('#loading1').css({display:'none'}); 
						if( data == 'success') {
							$('#callback1').show().append("Thank you for your message");
							if(defaults.hideOnSubmit == true) {
								//hide the tab after successful submition if requested
								$('#contactForm').animate({dummy:1}, 2000).animate({"marginLeft": "-=450px"}, "slow");
								$('div#contactable').animate({dummy:1}, 2000).animate({"marginLeft": "-=447px"}, "slow").animate({"marginLeft": "+=5px"}, "fast"); 
								$('#overlay').css({display: 'none'});	
							}
						} else {
							$('#callback1').show().append("Sorry but your message could not be sent, try again later");
						}
					});		
					
					return false;																																		 
				}
			});
		});
		
		function isValidEmailAddress(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
	}
