
jQuery(function($){
  
  $("*[id^='contact_message_name']:first").parents('form').validate({
    rules: {"contact_message[name]":{"required":true,"maxlength":255},"contact_message[email]":{"required":true,"email":true},"contact_message[referer]":{"required":true}},
    messages: {} ,
    wrapper: 'ul.error_list',
    errorElement: 'li',
    errorPlacement: function(error, element) 
    {
     if(element.parents('.radio_list').is('*') || element.parents('.checkbox_list').is('*'))
     {
       error.prependTo( element.parent().parent().parent() );
     }
     else
     {
       error.appendTo( element.parent() );
     }
   }
  
  });
  
  
});

jQuery.validator.addMethod(
  "regex",
  function(value, element, regexp) {
      if (regexp.constructor != RegExp)
          regexp = new RegExp(regexp);
      else if (regexp.global)
          regexp.lastIndex = 0;
      return this.optional(element) || regexp.test(value);
  }
  //,"Invalid."
);

jQuery.validator.addMethod(
  "password",
  function(value, element, regexp) {
      if (regexp.constructor != RegExp)
          regexp = new RegExp(regexp);
      else if (regexp.global)
          regexp.lastIndex = 0;
      return this.optional(element) || regexp.test(value);
  }
);

jQuery.validator.addMethod(
  "mustaccept",
  function(value, element, regexp) {
      return $(element).attr('checked');
  }
);