var anim_duration = 200;

// creates a pager
function initPager(pager_elem, dots_elem, prepend) {
	var pager = $(pager_elem);
	var pages = pager.children(".pager_page");
	var dots = $(dots_elem);
	var nobs = dots.children('span');

	pages.last().after('<div id="space_fix"></div>');
	$('#space_fix').css('height', pages.first().height());

	for(var i = 0; i < pages.length; i++) {
		var elem = $(pages[i]);
		elem.css('position', 'absolute');
		elem.css('top', '0px');
		elem.css('left', '0px');
	}

	for(var i = 0; i < nobs.length; i++) {
		$(nobs[i]).data('data_page', prepend + (i + 1));
		$(nobs[i]).data('data_pager', pager_elem);
		$(nobs[i]).data('data_dots', dots_elem);
	}

	$(pages[0]).addClass('selected');
	nobs.click(pagerNobClick);
}

// called to switch pager page
function pagerNobClick(data) {
	var elem = $(data.currentTarget);
	var dots = $(elem.data('data_dots'));
	var page = $(elem.data('data_page'))[0];
	var old_page = $(elem.data('data_pager')).children('.selected')[0];
	
	if(page == old_page)
		return;

	$(page).addClass('selected');
	$(old_page).removeClass('selected');

	dots.children().removeClass('selected');
	dots.children(elem.data('data_page')).addClass('selected');
	
	$(page).fadeIn(anim_duration);
	$(old_page).fadeOut(anim_duration);
}

// creates a switcher
function initSwitcher() {
	var switchers = $('#switcher_content span');
	var content = $('#switched_content');
	if(switchers.length < 1 || content.length < 1)
		return;
	
	switchers.click(switcherClick);
}

// called to switch content
function switcherClick(data) {
	var elem = $(data.currentTarget);
	var chosen = $('#switcher_content .selected');
	var content = $('#switched_content');
	var page = elem.attr('data_file');

	//if(chosen[0] == elem[0])
	//	return;
	
	if(chosen.length > 0)
	{
		chosen.removeClass('selected');
		if(chosen[0] == elem[0])
			page = 'main';
	}
	if(chosen[0] != elem[0])
		elem.addClass('selected');
	
	content.addClass('loading');
	content.html('');
	$.ajax( {
		url: "/Content/" + content.attr('data_page') + "/" + page + ".html",
		success: function(data) {
			content.removeClass('error loading');
			content.html(data);
		},
		error: function(data) {
			content.removeClass('loading');
			content.addClass('error');
			content.html('Page content not found.');
		}
	} );
}

