var FadingBanners =
{
	baseUrl: null,
	//	Give time in seconds
	rotationTime: 'slow',
	timeout: 10000,
	container: '#rotatingBanners',
	incremented: [],
	intervalId: null,

	init: function()
	{
		FadingBanners.baseUrl = location.protocol + '//' + location.hostname + '/';
		var url = location.pathname;
		if (location.hostname == 'devsys2.gaslightmedia.com') {
			var urlParts = url.split('/');
			FadingBanners.baseUrl += urlParts[1] + '/';
		} else if (location.hostname == 'kanga.acrewoods.com') {
			var site = location.pathname.split('/');
			var urlParts = url.split('/');
			FadingBanners.baseUrl += urlParts[1] + '/' + site[2];
		}
	
		$(FadingBanners.container).innerfade({
			speed: FadingBanners.rotationTime,
			timeout: FadingBanners.timeout,
			containerheight: '60px'
		});
		
		//	wait 1 second and start the timer to 
		//	increment the other banners.
		setTimeout(function() {
				FadingBanners.intervalId =
						setInterval(FadingBanners.addBannerImpressions, FadingBanners.timeout);
			}, 1000
		);
	},

	addBannerImpressions: function(event)
	{
		//	will loop through and do an ajax call to increment each banner
		//	after the loop finds a banner it has already incremented, it will
		//	clear the interval so they don't get any more impressions.
		$(FadingBanners.container + ' a').each(function() {
			var cur = $(this).css('display');
            var catid = $('#pageCatId').html();
			
			if (cur == 'block') {
				params = FadingBanners.getUrlVars($(this).attr('href'));
				var obj = FadingBanners.oc(FadingBanners.incremented);
				if (params['banner'] in obj) {
					clearInterval(FadingBanners.intervalId);
				} else {
					FadingBanners.incremented.push(params['banner']);
					$.ajax({
						type: "GET",
						url: FadingBanners.baseUrl + "Toolkit/Banners/incrementRotatingBanner.php",
						data: "banner=" + params['banner'] + '&catid=' + catid
					});
				}
			}
		});
	},
	
	getUrlVars: function(url)
	{
		var vars = [], hash;
		var hashes = url.slice(url.indexOf('?') + 1).split('&');
		for (var i = 0; i < hashes.length; ++i) {
			hash = hashes[i].split('=');
			vars.push(hash[0]);
			vars[hash[0]] = hash[1];
		}
		
		return vars;
	},
	
	oc: function(a)
	{
		var o = {};
		for (var i = 0; i < a.length; ++i) {
			o[a[i]] = '';
		}
		
		return o;
	}
};

$(document).ready(FadingBanners.init);
