var $j = jQuery.noConflict(); // # Assigns jquery calls to $j
$j(document).ready(function() {
	
	// # Input/form classes
	$j("select").addClass('_select');
	$j("textarea").addClass('_textarea');
	$j("button").addClass('_button');
	$j('input').each(function(e){
		var type = '_'+$j(this).attr('type');
		$j(this).addClass(type);
	});	
	$j('.required').siblings('label').addClass('required');

	// # Check form for required fields
	$j(".required").parents('form').validate({		
		invalidHandler: function(form, validator) {
	      var errors = validator.numberOfInvalids();
	      if (errors) {
	        var message = errors == 1
	          ? 'You have not filled out a required field.\n'
	          : 'You have not filled out ' + errors + ' required fields.\n';
	        var errors = "";
	        //if (validator.errorList.length > 0) {
	        //    for (x=0;x<validator.errorList.length;x++) {
	        //        errors += "\n\u25CF " + validator.errorList[x].message;
	         //   }
	       // }
	        alert(message + errors);
	      }
	      validator.focusInvalid();
	    },
	    submitHandler: function(form) {
			$j(form).addClass('submitted');
			var button = $j(form).find('input[type=submit]');
			//alert('submitting!');
			button.addClass('disabled');
			button.val('Submitting, please wait...');
			form.submit();
		},
	    success: function(label) {
	    	//$j(this).addClass('submitted');
	    	//$j(this).find('input[type=submit]').addClass('disabled');
	    	//$j(this).find('input[type=submit]').html('Submitting...');
	    	//alert('submitted');
	    },
	    debug: false
	});
	
	// # Creat auto-submit select boxes
	$j('select._onchange').change(function(e){
		$j(this).parents('form').find('._submit').click();
	});
	
	//$j('#nav').children().addClass('ni');
	$j('#nav .active').parents('li').addClass('active');
	//$j('#nav li').each(function(i){
	//	$j(this).addClass('nav'+i);
	//});	

	// # Auto Toggle
	$j('a._toggle').click(function(e){
		e.preventDefault();
		var href = $j(this).attr('href');
		$j(href).slideToggle(100);
	});
	
	// # Fix PNGs
	$j('img[src*=.png]').addClass('unitPng');

	// # For image rack
	$j(".imagerack .thumbs a").click(function(event) {
		event.preventDefault();
		var href = $j(this).attr("href");
		var img = href+'&w=273&h=273';
		$j(".imagerack .main").html('<a href="'+href+'" rel="lightbox"><img src="'+img+'"></a>');
		$j(".imagerack .main a").fancybox();
	});
	
	// # Init Prefab Scripts		
	//$j('#slideshow ul').cycle('fade');
	
	$j('.pager').cycle({
		timeout: 0,
		next: '.next',
		prev: '.prev', 
		pager: '.pages'
	});
	
	//$j("a[rel=lightbox]").fancybox();
	$j("a[rel=lightbox]").prettyPhoto();
	
	// # Invalid image removal
	$j('img').error(function(){
		$j(this).remove();
	});
	
	//$j.localScroll();
	
	// # Initialize Tabs
	$j(".tabs").tabs();

	// # Auto shadow application
	$j(".shadow").each(function (i) {
		//$j(this).wrap('<div class="shadow"></div>');
	});
	
	//var border = RUZEE.ShadedBorder.create({ shadow:8 });
	$j(".shadow").each(function (i) {
		if ($j(this).attr("id") == "") {
			$j(this).attr("id","shadow"+i);
		}		
		//border.render($j(this).attr("id"));
	});
	
});



