var activePage;
var pages = Array(null, null, null, null, null);
var pageNames = Array('starter', 'budget', 'business', 'corporate', 'custom');
var setPage = null;
var firstLoad = false;
$(function() {
	activePage = $("#content .ico > div").attr('class');
	pages[pageToNum(activePage)] = $('#content').html();
	if(pageToNum(activePage) < 4) {
		loadPage((pageToNum(activePage)+1));
	}
	for(i=0; i < 5; i++) {
		loadPage(i);
	}
	hideMore();
	$('#content').append('<div class="ajaxLoader">Loading...</div>');
	$('#menu a').click(goTo);
	parseNav();
	readMore();
});

function pageToNum(pageName) {
	switch(pageName) {
		case 'starter':
			return 0;
		case 'budget':
			return 1;
		case 'business':
			return 2;
		case 'corporate':
			return 3;
		case 'custom':
			return 4;
		default:
			alert('ERROR');
	}
}

function loadPage(pageNum) {
	if(pages[pageNum]!=null) {
		return true;
	}
	$.get((pageNames[pageNum] + '.html'), isLoaded, 'html');
}
function getPage(pageName) {

}
function isLoaded(data) {
	var whileLoading = pageToNum($("#content .ico > div", data).attr('class'));
	pages[whileLoading] = $('#content', data).html();
	if(setPage==whileLoading) {
		changePage(pageNames[setPage]);
		setPage = null;
	}
}
function changePage(pageName) {
	var pageNum = pageToNum(pageName);
	if(pages[pageNum] == null) {
		setPage = pageNum;
		showLoader();
		return;
	} else if(activePage == pageName) {
		return;
	}
	var oldLeft, newLeft;
	if(pageToNum(activePage) > pageToNum(pageName)) {
		oldLeft = '701px';
		newLeft = '-701px';
	} else {
		oldLeft = '-701px';
		newLeft = '701px';
	}
	if(!firstLoad) {
		$('#content').height($('#content').height());
		$('#content').wrapInner('<div class="pack"></div>');
		firstLoad = true;
	}
	$('#content').append('<div class="newPack"></div>');
	$('#content .newPack').hide().css('left', newLeft).html(pages[pageNum]).show();
	hideMore();
	var newHeight = $('#content .newPack').height();
	$('#content .pack').animate({ left: oldLeft}, 1000, function() { $(this).remove(); });
	$('#content .newPack').removeClass('newPack').addClass('pack').animate({left: '0px' }, 1000);
	$('#content').animate({ height: newHeight+'px'}, 1000);
	hideLoader();
	$('#menu .' + activePage).removeClass('active');
	$('#menu .' + pageName).addClass('active');
	activePage = pageName;
	parseNav();
	readMore();
}
function showLoader() {
	$('#content .ajaxLoader').height(($('#content').height()-1)).show('normal');
}
function hideLoader() {
	$('#content .ajaxLoader').hide('fast');
}
function goTo() {
	var href = $(this).attr('href');
	var hrefA = href.split('.');
	changePage(hrefA[0]);
	return false;
}
function next() {
	changePage(pageNames[pageToNum(activePage)+1]); // (IE GRRRRRR!)
	return false;
}
function prev() {
	changePage(pageNames[pageToNum(activePage)-1]);
	return false;
	
}
function parseNav() {
	$('.nav .next').click(next);
	$('.nav .prev').click(prev);
}


/** READ MORE **/
function hideMore() {
	$('.readMore p').hide();
	$('.readMore h3').wrapInner('<a href="#"></a>');
}
function readMore() {
	$('.readMore h3 a').toggle(function() {
		var addHeight = $('p', $(this).parent().parent()).height();
		if(firstLoad) {
			addHeight = addHeight + 8;
		}
		$('p', $(this).parent().parent()).show(500);
		$('#content').animate({ height : ($('#content').height()+addHeight)+'px' }, 500);
		return false;
	}, function() { 
		var addHeight = $('p', $(this).parent().parent()).height();
		if(firstLoad) {
			addHeight = addHeight + 8;
		}
		$('p', $(this).parent().parent()).hide(500);
		$('#content').animate({ height : ($('#content').height()-addHeight)+'px' }, 500);
		return false;
	});
	//$('#content .linkRead').click(next);
}


