jQuery.noConflict();
jQuery(document).ready(function () {
	// setting the tabs hide and show, setting the current tab
	jQuery('div.tabbed div.t1').hide();
	jQuery('div.tabbed div.t2').hide();
	jQuery('div.tabbed div.t3').hide();
	jQuery('div.tabbed div.t4').hide();

	jQuery('div.tabbed div.t1').show();
	jQuery('div.tabbed ul.tabs li.t1 a').addClass('tab-current');

	// On click function
	jQuery('div.tabbed ul li a').click(function(){
		var thisClass = this.className.slice(0,2);
		jQuery('div.tabbed div.t1').hide();
		jQuery('div.tabbed div.t2').hide();
		jQuery('div.tabbed div.t3').hide();
		jQuery('div.tabbed div.t4').hide();

		jQuery('div.' + thisClass).show();
		jQuery('div.tabbed ul.tabs li a').removeClass('tab-current');
		jQuery(this).addClass('tab-current');
	});

	/**
	 * Written by: <g.jansma@drecomm.nl>
	 */

	function start_dynamicScroller(){
 		jQuery.dynamicScroller(
 			new Array(
 				'li.t1',
 				'li.t2',
 				'li.t3',
 				'li.t4'
 			), {
			delay: 4000,
			async: 0,
			loop: function(index, value){
				jQuery('div.tabbed ul ' + value + ' a').trigger('click');
			}, callback: function(){
				start_dynamicScroller();
			}
		});
	}

	start_dynamicScroller();

	jQuery('div.tabbed').mouseover(function(){
		jQuery.pauseScroller(true);
	}).mouseout(function(){
		jQuery.pauseScroller(false);
	});

});

/**
 * Written by: <g.jansma@drecomm.nl>
 */

(function($){
	var pause = false;

	$.pauseScroller = function(arg){
		pause = (arg === true) ? true : false;
	}

	$.dynamicScroller = function(array, options){
		var index = 0;
		var elements = array.length;
		var loop = options.loop || function(){};

		$.dynamicScroller_async(
			$.extend(options, {
				scroller: function(){ return index < elements; },
				loop: function(){
					var value = array[index];
					if(pause === true){
						return;
					} else {
						return loop.call(value, index++, value);
					}
				}
			})
		);
	};

	$.dynamicScroller_async = function(options){
		var delay = options.delay || 3000;
		var async = options.async ? 500 : options.async;
		var scroller = options.scroller || function(){ return true; };
		var loop = options.loop || function(){};
		var callback = options.callback || function(){};
		(function(){
			var act = false;
			var start = new Date();
			while(act = scroller()){
				loop();
				if(async === 0 || (new Date() - start) > async){
					break;
				}
			}
			if(act){
				setTimeout(arguments.callee, delay);
			} else {
				callback();
			}
		})(jQuery);
	};
})(jQuery);