(function(jQuery){var ValidationErrors=new Array();jQuery.fn.validate=function(options){options=jQuery.extend({expression:"return true;",message:"",error_class:"ValidationErrors",error_field_class:"ErrorField",live:true},options);var SelfID=jQuery(this).attr("id");var unix_time=new Date();unix_time=parseInt(unix_time.getTime()/1000);if(!jQuery(this).parents('form:first').attr("id")){jQuery(this).parents('form:first').attr("id","Form_"+unix_time)}var FormID=jQuery(this).parents('form:first').attr("id");if(!((typeof(ValidationErrors[FormID])=='object')&&(ValidationErrors[FormID]instanceof Array))){ValidationErrors[FormID]=new Array()}if(options['live']){if(jQuery(this).find('input').length>0){jQuery(this).find('input').bind('blur',function(){if(validate_field("#"+SelfID,options)){if(options.callback_success)options.callback_success(this)}else{if(options.callback_failure)options.callback_failure(this)}});jQuery(this).find('input').bind('focus keypress click',function(){jQuery("#"+SelfID).next('.'+options['error_class']).remove();jQuery("#"+SelfID).removeClass(options['error_field_class'])})}else{jQuery(this).bind('blur',function(){validate_field(this)});jQuery(this).bind('focus keypress',function(){jQuery(this).next('.'+options['error_class']).fadeOut("fast",function(){jQuery(this).remove()});jQuery(this).removeClass(options['error_field_class'])})}}jQuery(this).parents("form").submit(function(){if(validate_field('#'+SelfID))return true;else return false});function validate_field(id){var self=jQuery(id).attr("id");var expression='function Validate(){'+options['expression'].replace(/VAL/g,'jQuery(\'#'+self+'\').val()')+'} Validate()';var validation_state=eval(expression);if(!validation_state){if(jQuery(id).next('.'+options['error_class']).length==0){jQuery(id).after('<div class="'+options['error_class']+'">'+options['message']+'</div>');jQuery(id).addClass(options['error_field_class'])}if(ValidationErrors[FormID].join("|").search(id)==-1)ValidationErrors[FormID].push(id);return false}else{for(var i=0;i<ValidationErrors[FormID].length;i++){if(ValidationErrors[FormID][i]==id)ValidationErrors[FormID].splice(i,1)}return true}}};jQuery.fn.validated=function(callback){jQuery(this).each(function(){if(this.tagName=="FORM"){jQuery(this).submit(function(){if(ValidationErrors[jQuery(this).attr("id")].length==0)callback();return false})}})}})(jQuery);jQuery(function(){jQuery("#ValidFirstName").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidLastName").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidCompany").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidIndustry").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidAddress").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidSuburb").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidState").validate({expression:"if (VAL) return true; else return false;",message:"This field is required"});jQuery("#ValidPostcode").validate({expression:"if (!isNaN(VAL) && VAL) return true; else return false;",message:"Error on this field"});jQuery("#ValidEnquiry").validate({expression:"This field is required"});jQuery("#ValidNumber").validate({expression:"if (!isNaN(VAL) && VAL) return true; else return false;",message:"Error on this field"});jQuery("#ValidEmail").validate({expression:"if (VAL.match(/^[^\\W][a-zA-Z0-9\\_\\-\\.]+([a-zA-Z0-9\\_\\-\\.]+)*\\@[a-zA-Z0-9_]+(\\.[a-zA-Z0-9_]+)*\\.[a-zA-Z]{2,4}$/)) return true; else return false;",message:"Email address is not valid"});jQuery("#ValidFindus").validate({expression:"if (VAL != '0') return true; else return false;",message:"You haven't made a selection"});jQuery("#ValidEnquiryType").validate({expression:"if (VAL != '0') return true; else return false;",message:"You haven't made a selection"});jQuery("#ValidTitle").validate({expression:"if (VAL != '0') return true; else return false;",message:"You haven't made a selection"});jQuery("#ValidField").validate({expression:"if (VAL) return true; else return false;",message:"Please enter the Required field"});jQuery("#ValidNumber").validate({expression:"if (!isNaN(VAL) && VAL) return true; else return false;",message:"Please enter a valid number"});jQuery("#ValidEmail").validate({expression:"if (VAL.match(/^[^\\W][a-zA-Z0-9\\_\\-\\.]+([a-zA-Z0-9\\_\\-\\.]+)*\\@[a-zA-Z0-9_]+(\\.[a-zA-Z0-9_]+)*\\.[a-zA-Z]{2,4}$/)) return true; else return false;",message:"Please enter a valid Email ID"});jQuery("#ValidMultiSelection").validate({expression:"if (VAL) return true; else return false;",message:"Please make a selection"});jQuery("#ValidRadio").validate({expression:"if (isChecked(SelfID)) return true; else return false;",message:"Please select a radio button"});jQuery("#ValidCheckbox").validate({expression:"if (isChecked(SelfID)) return true; else return false;",message:"Please check atleast one checkbox"});jQuery("#ValidPassword").validate({expression:"if (VAL.length > 5 && VAL) return true; else return false;",message:"Please enter a valid Password"});jQuery("#ValidConfirmPassword").validate({expression:"if ((VAL == jQuery('#ValidPassword').val()) && VAL) return true; else return false;",message:"Confirm password field doesn't match the password field"});jQuery("#ValidSelection").validate({expression:"if (VAL != '0') return true; else return false;",message:"Please make a selection"});jQuery("#ValidInteger").validate({expression:"if (VAL.match(/^[0-9]*$/) && VAL) return true; else return false;",message:"Please enter a valid integer"});jQuery("#ValidDate").validate({expression:"if (!isValidDate(parseInt(VAL.split('-')[2]), parseInt(VAL.split('-')[0]), parseInt(VAL.split('-')[1]))) return false; else return true;",message:"Please enter a valid Date"});jQuery('.AdvancedForm').validated(function(){alert("Use this call to make AJAX submissions.")})});
