// Custom fonts
Cufon.replace('#nav li a');
Cufon.replace('div.leftNavHeader span.navHeaderText');

var PM = {
	isInit: false,
	gameNameOrder: ['ifarm', 'link4', 'imafia'], // Left to right order	
	selectedGame: 'ifarm',
	selectedImageNum: 1,
	
	// http://snook.ca/archives/javascript/jquery-bg-image-animations/
	// http://stackoverflow.com/questions/367020/jquery-easiest-way-to-animate-background-image-sliding-left
	rotateFeature: function(obj) {
		var bgd = $('#background');
		
		if (!PM.isInit) {
			var elems = $("div#featureContainer > a");
			for (var i = 0; i < elems.length; i++) {
				elems[i].gameName = PM.gameNameOrder[i];
			}
			PM.isInit = true;
		}				
		
		var urlString = "url('/images/site/bgd_banners/" + obj.gameName + ".jpg')"		
		bgd.css('background-image', urlString);
				
		PM.rotateBlurbHeader(obj);
		PM.rotateDescr(obj);
		PM.selectFeature(obj);
		
		PM.selectedGame = obj.gameName;
		
		// NOTE: Preload images?
		// http://jquery-howto.blogspot.com/2009/02/preload-images-with-jquery.html
	}	,
	
	rotateBlurbHeader: function(obj) {
		var el = $('#blurbHeader');
		el.attr('src', '/images/site/blurb_headers/' + obj.gameName + '.png');
	},
	
	rotateDescr: function(obj) {
		var oldIdentifier = "#" + PM.selectedGame + "Descr";
		var oldDescrEl = $(oldIdentifier);
		
		var newIdentifier = "#" + obj.gameName + "Descr";
		var newDescrEl = $(newIdentifier);
		
		oldDescrEl.hide();
		newDescrEl.show();
	},
	
	selectFeature: function(obj) {
		var el = $('#selectedFeature');
		el.remove();
		el.insertBefore(obj);
	},
	
	learnMore: function(obj) {
		window.location = "/games?game_name=" + PM.selectedGame;		
	},
	
	// Swapping images
	//   http://jquery-howto.blogspot.com/2009/04/jquery-image-swap-or-how-to-replace.html
	//   http://jquery-howto.blogspot.com/2009/02/preload-images-with-jquery.html  
	swapImage: function(obj, imageNum, gameName) {
		var ss = $("#screenshot");
		
		if (imageNum == 0) {
			imageNum = PM.selectedImageNum - 1;
			if (imageNum <= 0) imageNum = 1;
		} else if (imageNum == 5) {
			imageNum = PM.selectedImageNum + 1;
			if (imageNum >= 5) imageNum = 4;
		}
		
		ss.attr("src", "/images/site/screenshots/" + gameName + "/"+ imageNum + ".jpg");
		
		PM.selectNum(imageNum);
		PM.selectedImageNum = imageNum;
	},
	
	selectNum: function(imageNum) {
		var oldNumEl = $('#ss' + PM.selectedImageNum);
		var newNumEl = $('#ss' + imageNum);
		
		oldNumEl.attr("class", "number");
		newNumEl.attr("class", "number selected");
	}
};