$(document).ready(function(){
	
	jQuery.fn.exists = function() { return (this.length > 0); };
	
	// Prep page
	$("div#clients").height("4px");
	$("div#clients form").hide();
	var hidden = 1;

	// Client Panel
	$("#toggle").click(function(){
		if(hidden){
			$(".replace").addClass('down');
			$("div#clients").animate({ height: "40px" }).animate({height: "36px" }, "fast",
				function(){
					$("div#clients form").fadeIn("fast");
			});
			hidden = 0;
		}else{
			$("div#clients form").fadeOut("fast",function(){
				$(".replace").removeClass('down');
				$("div#clients").animate({ height: "0px" }).animate({height: "4px" }, "fast");
			});
			hidden = 1;
		}
	});
		
	//Lava Lamp menu startup
	$("#navigation").lavaLamp({
		fx: "easeOutBack",
		speed: 700
    });
	
    if($('#slider').exists()){ 
		/* HighSlide */
		
		// bind the navigation clicks to update the selected nav:
		var $panels = $('#slider .scrollContainer > div');
		var $container = $('#slider .scrollContainer');
		
		// if false, we'll float all the panels left and fix the width 
		// of the container
		var horizontal = true;
		
		// float the panels left if we're going horizontal
		if (horizontal) {
		  $panels.css({
			'float' : 'left',
			'position' : 'relative' // IE fix to ensure overflow is hidden
		  });
		  
		  // calculate a new width for the container (so it holds all panels)
		  $container.css('width', $panels[0].offsetWidth * $panels.length);
		}
		
		// collect the scroll object, at the same time apply the hidden overflow
		// to remove the default scrollbars that will appear
		var $scroll = $('#slider .scroll').css('overflow', 'hidden');
		
		// handle nav selection
		function selectNav() {
		  $(this)
			.parents('ul:first')
			  .find('a')
				.removeClass('selected')
			  .end()
			.end()
			.addClass('selected');
		}
		
		$('#slider .navigation').find('a').click(selectNav);
		
		// go find the navigation link that has this target and select the nav
		function trigger(data) {
		  var el = $('#slider .navigation').find('a[href$="' + data.id + '"]').get(0);
		  selectNav.call(el);
		}
		
		if (window.location.hash) {
		  trigger({ id : window.location.hash.substr(1) });
		} else {
		  $('ul.navigation a:first').click();
		}
		
		// offset is used to move to *exactly* the right place, since I'm using
		// padding on my example, I need to subtract the amount of padding to
		// the offset.  Try removing this to get a good idea of the effect
		var offset = parseInt((horizontal ? 
		  $container.css('paddingTop') : 
		  $container.css('paddingLeft')) 
		  || 0) * -1;
		
		
		var scrollOptions = {
		  target: $scroll, // the element that has the overflow
		  
		  // can be a selector which will be relative to the target
		  items: $panels,
		  
		  navigation: '.navigation a',
		  
		  // selectors are NOT relative to document, i.e. make sure they're unique
		  prev: 'img.left', 
		  next: 'img.right',
		  
		  // allow the scroll effect to run both directions
		  axis: 'xy',
		  
		  onAfter: trigger, // our final callback
		  
		  offset: offset,
		  
		  // duration of the sliding effect
		  duration: 500,
		  
		  // easing - can be used with the easing plugin: 
		  // http://gsgd.co.uk/sandbox/jquery/easing/
		  easing: 'swing'
		};
		
		// apply serialScroll to the slider - we chose this plugin because it 
		// supports// the indexed next and previous scroll along with hooking 
		// in to our navigation.
		$('#slider').serialScroll(scrollOptions);
		
		// now apply localScroll to hook any other arbitrary links to trigger 
		// the effect
		$.localScroll(scrollOptions);
		
		// finally, if the URL has a hash, move the slider in to position, 
		// setting the duration to 1 because I don't want it to scroll in the
		// very first page load.  We don't always need this, but it ensures
		// the positioning is absolutely spot on when the pages loads.
		scrollOptions.duration = 1;
		$.localScroll.hash(scrollOptions);
	}
	//Recent items accordion
    $("#home-recent-box").accordion({ collapsible:true, active:false });	

	//Detects and warns ie6 users that their browser sucks
	if (jQuery.browser.msie) {
  		if(parseInt(jQuery.browser.version) <= 6) {
      		$('body').prepend("<div class='ie-msg'><p>This website has been designed and tested for modern browsers, your current browser IE6 is out of date and not supported by this website. For the best possible user experience please download and used one of the following browsers, <a href='http://www.microsoft.com/windows/internet-explorer/default.aspx'>Internet Explorer 8</a>, <a href='http://www.mozilla-europe.org/en/firefox/'>Firefox</a>, <a href='http://www.apple.com/safari/download/'>Safari</a>, <a href='http://www.opera.com/browser/download/'>Opera</a>, <a href'http://www.google.com/chrome'>Chrome</a>.  Thank You.</p></div>");
  		}
	}
	
	//Adds browser specific tag to container
	var userAgent = navigator.userAgent.toLowerCase();
	
	var is_chrome = /chrome/.test( userAgent );
	var is_safari = /webkit/.test( userAgent ) && !is_chrome;
	var is_opera  = /opera/.test( userAgent );

	if ( is_chrome || is_safari ){ $('#container').addClass('webkit');}
	if ( is_opera ){ $('#container').addClass('opera');}
});

