window.addEvent('domready',function()
{
	if($('banner-control'))
	{
		var controls = $('banner-controls-nav');
		$('banner-control').removeClass('no-script');
		var controlsWidth = controls.getSize().x + 32;
		$('banner-control').setStyle('width', controlsWidth );
		
		$$('#banner div.banner-item').setStyle('opacity', '0');
		$$('#banner div.banner-item.active').setStyle('opacity', '1');
		bannerEvents();
		
		var next = $('next-banner');
		var previous = $('prev-banner');
		var	allowReverse = false;
		
		next.addEvent('click', function(e) {
			e.stop();
			allowReverse = false;
			changeBanner( allowReverse );
		});
		
		previous.addEvent('click', function(e) {
			e.stop();
			allowReverse = true;
			changeBanner( allowReverse );
		});
		
		$$('#banner-controls-nav a').addEvent('click', function(e) {
			e.stop();
			var nextBanner = this.id.replace('banner-link-', 'banner-');
			jumpToBanner( nextBanner );
		});
	}
	
	if( $('slideshow') ){
		newsCarousel();
	}
	
	setupNewWindow();
});

function bannerEvents() {
	
	var startEffects = setInterval('changeBanner()', 7000);
	var banner = $('banner');
	
	banner.addEvents({
		'mouseover': function() {
			pauseBanner( startEffects );
		},
		'mouseout': function() {
			startEffects = setInterval('changeBanner()', 7000);
		}
	});
}

function jumpToBanner( nextBanner ) {
	var bannerCount = $$('#banner div.banner-item').length;
	
	for( var i=0; i<bannerCount; i++ ) {
		if( $$('#banner div.banner-item')[i].hasClass('active') ) {
			activeBanner = $$('#banner div.banner-item')[i];
		}
	}

	activeBanner.removeClass('active');
	activeBanner.tween('opacity', 0);

	$(nextBanner).addClass('active');
	$(nextBanner).tween('opacity', 1);
	
	$$('#banner-controls-nav a').removeClass('active');
	var activeBannerLink = $(nextBanner).id.replace('banner-', 'banner-link-');
	$(activeBannerLink).addClass('active');
}

function changeBanner( allowReverse ) {
	if( !allowReverse ) {
		allowReverse = false;
	}
	var nextBanner;
	
	var banners = $$('#banner div.banner-item');
	var bannerCount = banners.length;
	var activeBanner;
	var activeBannerLink;
	
	for( var i=0; i<bannerCount; i++ ) {
		if( banners[i].hasClass('active') ) {
			activeBanner = banners[i];
			if( (allowReverse == false) ) {
				nextBanner = banners[i+1];
			}
			else {
				nextBanner = banners[i-1];
				if( i-1 == -1 ) {
					nextBanner = banners[bannerCount-1];
				}
			}
		}
	}
	if( !nextBanner ) {
		nextBanner = banners[0];
	}
	
	activeBanner.removeClass('active');
	activeBanner.tween('opacity', 0);
	
	nextBanner.addClass('active');
	nextBanner.tween('opacity', 1);
	
	$$('#banner-controls-nav a').removeClass('active');
	var activeBannerLink = nextBanner.id.replace('banner-', 'banner-link-');
	$(activeBannerLink).addClass('active');
}

function pauseBanner( startEffects ) {
		startEffects = clearInterval(startEffects);
}

function newsCarousel() {
	var tween = new Fx.Tween($('slideshow-wrapper'));
	var isTweening = false;
	
	$('slideshow-container').removeClass('noscript');
	
	if( $('slideshow') ) {
		
		$('slideshow').removeClass('hide');
		
		tween.start('left', 0);
		
		$('slideshow').getElements('a').addEvent('click', function(event) {
			
			event = new Event(event).stop();
			var activeNews = $('slideshow-wrapper').getElement('.inUse');
			var activeIcon = $('slideshow').getElement('.icon-on');
			var activeIconId = activeIcon.id.replace("icon-", "");
			var activeNewsId = activeNews.id.replace("content-", "");
			var iconId = this.id.replace("icon-", "");
			var iconNum = false;
			
			if (!isNaN(iconId)) {
				iconNum = true;	
			}
			
			if (((this.id == 'previous') || ( (iconNum) && (iconId < activeNewsId) ) ) && isTweening == false) {
				
				isTweening = true;
				var moveAmount = 230;
				activeNews.removeClass('inUse');
				activeIcon.removeClass('icon-on');
				activeIcon.addClass('icon-off');
				
				if (iconNum) {
					
					var v = iconId;
					var difference =  activeIconId - iconId;
					moveAmount = 230 * difference;
				}
				else {
					var v = activeNewsId;
					v--;
				}
				
				if(activeNewsId == 0) {
					v = sizeOf;
					moveAmount = -230 * sizeOf;
				}
				
				var nextActiveNews = $('slideshow-wrapper').getElementById(String("content-" + v));
				var nextActiveIcon = $('slideshow').getElementById(String("icon-" + v));
				
				nextActiveNews.addClass('inUse');
				nextActiveIcon.removeClass('icon-off');
				nextActiveIcon.addClass('icon-on');
				
				var currentLeft = $('slideshow-wrapper').getStyle("left");
				currentLeft = parseInt(currentLeft.replace('px', ''));
				
				$('slideshow-wrapper').set('tween', {
					onComplete: function(e) {
							isTweening = false;
						}
					});
				$('slideshow-wrapper').tween('left', currentLeft + moveAmount);
			}
			
			if ( ( (this.id == 'next') || ( (iconNum) && (iconId > activeNewsId) ) ) && isTweening == false) {
				isTweening = true;

				var moveMultiplyer = parseInt(activeNewsId) + 1;
				var moveAmount = -230 * moveMultiplyer;
				activeNews.removeClass('inUse');
				activeIcon.removeClass('icon-on');
				activeIcon.addClass('icon-off');
				
				if (iconNum) {
					var i = iconId;
					moveAmount = (-230 * iconId);
				}
				else {
					var i = activeNewsId;
					i ++;
				}
				
				if(activeNewsId == sizeOf) {
					i = 0;
					moveAmount = 0;
				}
				
				var nextActiveNews = $('slideshow-wrapper').getElementById(String("content-" + i));
				var nextActiveIcon = $('slideshow').getElementById(String("icon-" + i));
				
				nextActiveNews.addClass('inUse');
				nextActiveIcon.removeClass('icon-off');
				nextActiveIcon.addClass('icon-on');
				
				$('slideshow-wrapper').set('tween', {
					onComplete: function(e) {
							isTweening = false;
						}
					});
				$('slideshow-wrapper').tween('left', moveAmount);
			}
		});
	}
}

function handleResponse( result, obj )
{
	if( result == 'SUGGEST' )
	{
		createPopup( obj );
	}
	else if( result == '' )
	{
		createPopup( obj );
	}
	else
	{
		$('refine_Search_large').submit();
	}
}

function setupNewWindow()
{
	var els = $$('.new-window');
	
	for( i=0; i<els.length; i++ )
	{
		els[i].addEvent('click', function(e)
		{
			e.stop();
			newWindow( this );
		});
	}
}

function newWindow( el )
{
	window.open(el.href, 'locum');
}