// when the DOM is ready...
$(document).ready(function () {

	/**
	 * init kiwi slider
	 */
	$("div.scroll").codaSlider()
	
	/**
	 * init jcarousel
	 */
	if (location.hash) {
		jstart = location.hash.slice(1) - 1;
	} else {
		var jstart = 1;
	}
	
	$('.tx-kiwislider-pi1 ul.navigation').jcarousel({
		start: jstart,
		wrap: true
	});
	
	var clipWidth = $('ul.jcarousel-list').css('width');
	var containerWidth = $('.jcarousel-container').css('width');
	if (clipWidth <= containerWidth) {
		$('.jcarousel-prev').css('background-position', '0px -50px');
		$('.jcarousel-next').css('background-position', '-15px -50px');
	}
		
});

/**

 * jQuery Coda-Slider v1.1 - http://www.ndoherty.com/coda-slider
 * 
 * Copyright (c) 2007 Niall Doherty
 * 
 * Inspired by the clever folks at http://www.panic.com/coda
 * Many thanks to Gian Carlo Mingati. Coda-Slider is a heavily modified version
 * of his slideViewer, which can be found at
 * http://www.gcmingati.net/wordpress/wp-content/lab/jquery/imagestrip/imageslide-plugin.html
 * 
 * Requirements:
 * - jQuery 1.2 (http://www.jquery.com)
 * - jQuery easing plugin (1.2) (http://gsgd.co.uk/sandbox/jquery/easing/)
 * - jQuery easing compatability plugin (http://gsgd.co.uk/sandbox/jquery/easing/)
 * 
 * Modified by Maik Mettenheimer, 2009-03-24
 * - No autogenerated tab navigation
 * - integrate jcarousel tab navigation
 * 
 */

jQuery.fn.codaSlider = function(settings) {
	 settings = jQuery.extend({
     easeFunc: "expoinout",
     easeTime: 750,
     toolTip: false
  }, settings);
	return this.each(function(){
		var container = jQuery(this);
		// Get the width of a panel, set from CSS...
		var panelWidth = container.find("div.panel").width();
		// panelCount gives us a count of the panels in the container...
		var panelCount = container.find("div.panel").size();
		// Calculate the width of all the panels when lined up end-to-end...
		var stripViewerWidth = panelWidth*panelCount;
		// Use the above width to specify the CSS width for the panelContainer element...
		container.find("div.scrollContainer").css("width" , stripViewerWidth);
		

		/**
		 * Specify the current panel.
		 * If the loaded URL has a hash (cross-linking), we're going to use
		 * that hash to give the slider a specific starting position...
		 */
		if (location.hash && parseInt(location.hash.slice(1)) <= panelCount) {
			var cPanel = parseInt(location.hash.slice(1));
			var cnt = - (panelWidth*(cPanel - 1));
			jQuery(this).find("div.scrollContainer").css({ left: cnt });
		// Otherwise, we'll just set the current panel to 1...
		} else { 
			var cPanel = 1;
		};
		
		/**
		 * Create appropriate nav
		 */
		container.each(function(i)
		{
		
			/**
			 * Tab nav
			 */
			jQuery("ul.navigation li a").each(function(z)
			{
				// What happens when a nav link is clicked
				jQuery(this).bind("click", function() {
					jQuery(this).addClass("current").parent().parent().find("a").not(jQuery(this)).removeClass("current");
					var cnt = - (panelWidth*z);
					cPanel = z + 1;
					jQuery(this).parent().parent().parent().parent().next().find("div.scrollContainer").animate({ left: cnt}, settings.easeTime, settings.easeFunc);
				});
			});


			/**
			 * Same-page cross-linking
			 */
			jQuery("a.cross-link").click(function(){
				jQuery(this).parents().find("ul.navigation li li a:eq(" + (parseInt(jQuery(this).attr("href").slice(1)) - 1) + ")").trigger('click');
			});	


			/**
			 * Specify which tab is initially set to "current".
			 * Depends on if the loaded URL had a hash or not (cross-linking).
			 */
			if (location.hash && parseInt(location.hash.slice(1)) <= panelCount) {
				jQuery("ul.navigation li a:eq(" + (location.hash.slice(1) - 1) + ")").addClass("current");
			} else {
				jQuery("ul.navigation li a:eq(0)").addClass("current");
			}
			
		});

  });
};
