/* Preloader function */
	jQuery.preloadImages = function()
	{
		for(var i = 0; i<arguments.length; i++)
		{
			jQuery("<img>").attr("src", arguments[i]);
		}
	}
	
	$(document).ready(function(){
		
		$("ul#main-menu li a img").hover(
			function(){
				if($(this).attr("src").indexOf("_over") == -1) {
					var newSrc = $(this).attr("src").replace(".gif", "_over.gif");
					$(this).attr("src",newSrc);
				}
			},
			function(){
				if($(this).attr("src").indexOf("_over.gif") != -1) {
					var oldSrc = $(this).attr("src").replace("_over.gif", ".gif");
					$(this).attr("src",oldSrc);
				}
			}
		);
		
		/* Popup loader */
		$('a.popup').click(function(e){
			var href = this.href;
			/* default options */
			window.open(href,'popup',this.rel+',scrollbars=yes,resizable=no,menubar=no,location=no,toolbar=no,status=no');
			return false;
		});
		
		$('.tooltip').tooltip({
	   		bodyHandler: function() { 
    	    	return $(this).attr('rel'); 
    		}, 
	    	showURL: false 
		});
	});

	
/*
	jQuery validatory crap
*/
	jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
		return this.optional(element) || /^[a-z\-\.,\(\)\'\"\s]+$/i.test(value);
	}, "Letters or punctuation only please");  
	
	jQuery.validator.addMethod("alphanumeric", function(value, element) {
		return this.optional(element) || /^[\w\s]+$/i.test(value);
	}, "Letters, numbers, spaces or underscores only please");  
	
	jQuery.validator.addMethod("lettersonly", function(value, element) {
		return this.optional(element) || /^[a-z]+$/i.test(value);
	}, "Letters only please"); 
	
	jQuery.validator.addMethod("nowhitespace", function(value, element) {
		return this.optional(element) || /^\S+$/i.test(value);
	}, "No white space please"); 
	
	jQuery.validator.addMethod("anything", function(value, element) {
		return this.optional(element) || /^.+$/i.test(value);
	}, "May contain any characters."); 
	
	jQuery.validator.addMethod("integer", function(value, element) {
		return this.optional(element) || /^\d+$/i.test(value);
	}, "Numbers only please");
	
	jQuery.validator.addMethod("phone", function(value, element) {
		return this.optional(element) || /^\d{3}-\d{3}-\d{4}$/.test(value);
	}, "Must be XXX-XXX-XXXX");
	
	jQuery.validator.addMethod("postalCAN", function(value, element) {
		return this.optional(element) || /^\w{3} \w{3}$/.test(value);
	}, "Must be XXX XXX");