var x_rules={
	name: {
		required: true,
		minlength: 3,
		maxlength: 99
	},
	email: {
		required: true,
		email: true
	},
	tel: {
		required: true,
		minlength: 10
	},
	comments: {
		required: true,
		minlength: 10
	},
	captcha: {
		required: true,
		callback_captcha: true
	}
}

x_messages={
name: "<div class='tooltip_inner'>Please Provide Your Name</div>",
email: "<div class='tooltip_inner'>Please Provide your Email Address</div>",
tel: "<div class='tooltip_inner'>Please Provide a Contact Number</div>",
comments: "<div class='tooltip_inner'>Please enter your comment here</div>",
captcha: "<div class='tooltip_inner'>Please enter the captcha here</div>"
}

            $(document).ready(function () {

                // Setup The Rules
                for (var key in x_rules) {
                   if ($('#serror_'+key+'_bad').length == 0) {
                        $('<span id="serror_'+key+'_bad" style="display: none;"><img class="tooltip_serror" id="serror_'+key+'_tooltip" src="/images/validator/cross.png"></span>').insertAfter('#'+key);
                    }
                   if ($('#serror_'+key+'_good').length == 0) { 
                        $('<span id="serror_'+key+'_good" style="display: none;"><img src="/images/validator/tick.png"></span>').insertAfter('#'+key);
                   }
                }
                
                for (var key in x_messages) {
                   var obj = x_messages[key];
                   $('#serror_'+key+'_tooltip').attr('title',x_messages[key]);
                   //$('#serror_'+key+'_tooltip').attr('title','<div class="tooltip_inner">This is a very long message to see what happens This is a very long message to see what happens  This is a ver long message to see what happens This is a very long message to see what happens This is a very long message to see what happens</div>');
                   
                   $('#serror_'+key+'_tooltip').tooltip({ position: "center right",delay: 0,
                        onBeforeShow: function(){
                        
                            $('.tooltip_serror').each(function(index) {
                                $('#'+this.id).tooltip().hide();
                            });
                            }        
                        });
                   
                }

            
                // validate the contact form
                $("#contactForm").validate({rules: x_rules,messages: x_messages,


                    invalidHandler: function (form, validator) {

                        var errors = validator.numberOfInvalids();
                        if (errors) {

                            for (var i = 0; i < validator.errorList.length; i++) {
                                
                                //HERE YOU COULD PRINT OUT ALL YOUR ERRORS TO A DIV ETC
                            }


                            return false;
                        }
                    },

                    success: function (label) {
                        var e_id=label.attr('for');
                        $('#serror_'+e_id+'_bad').hide();
                        $('#serror_'+e_id+'_good').show();
                        $('.tooltip_serror').each(function(index) {
                                $('#'+this.id).tooltip().hide();
                        });


                    },
                    errorPlacement: function (error, element) {

                        $('.tooltip_serror').each(function(index) {
                                $('#'+this.id).tooltip().hide();
                        });
                        
                        var e_id=(element.attr('id'));
                        $('#serror_'+e_id+'_good').hide();
                        $('#serror_'+e_id+'_bad').show();
                        //error.insertAfter(element);
                    },

                    highlight: function (element, errorClass) {
                        return;
                        $(element).fadeOut(0, function () { // "fast"
                            $(element).fadeIn(0) // "fast"
                        })

                    }


                });
            

            });
            
