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('input.required').siblings('label').addClass('required');
	$j('input.required,textarea.required,select.required').focusout(function(e){

		if ($j(this).val() != '' || $j(this).html() != '') {

			$j(this).addClass('valid');

		} 

		else {

			$j(this).removeClass('valid');

		}

		//$j(this).addClass('valid');

	});

	$j('.required').focusout();

	
	// # Check form for required fields
	$j('form').submit(function(e){
		$j(this).find('input.required,textarea.required,select.required').each(function(i){
			if ($j(this).val() == '') {
				e.preventDefault();
				alert('Please complete all required fields.');
				return false;
			}
		});
	});

	

	
	$j('select.onchange').change(function(e){
		$j(this).parent('form').submit();	
	});
	
	$j('#nav').children().addClass('ni');
	$j('#nav .active').parents('.ni').addClass('active');
	//$j('#nav li').each(function(i){
	//	$j(this).addClass('nav'+i);
	//});
	

	$j('xa.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();
	});
	
	// # Reveal a target DOM
	$j('a.reveal').click(function(e){
		e.preventDefault();
		var target = $j(this).attr('href');
		$j(target).toggle('fast');
	});
	
	// # Init Prefab Scripts		
	$j('#slideshow ul').cycle('fade');
	
	$j('.pager').cycle({
		timeout: 0,
		next: '.next',
		prev: '.prev', 
		pager: '.pages'
	});
	
	$j("a[rel=lightbox]").fancybox();
		
	// # 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"));
	});
	
});



