/**
 * (C) 2011 Matthias Steinbauer
 */

/**
 * Class capable of loading something into my page
 */
function PageLoader (page) {
	this.page = page;
}

/**
 * Perform page Loading Code within PageLoader
 */
PageLoader.prototype.doLoad = function () {
	// set window title
	document.title = this.page.title;
	// set h1 title
	$('#pagetitle').html(this.page.title);
	// set background image
	var bgimgDiv = $('#bgimg');
	bgimgDiv.html('&nbsp;');
	bgimgDiv.css("background-image", "url('" + this.page.bgimg + "')");
	
	var div = $('#detail');
	if(this.page.links != undefined && div != undefined) {
		var h = '';
		for(var l in this.page.links) {
			var link = this.page.links[l];
			h += '<a href="' + link.href + '">' + link.label + '</a>';
		}
		div.html(h);
	}
};

/**
 * Splices the URL in order to get its params
 * 
 * @returns {Array}
 */
function getUrlVars()
{
	var vars = [], hash;
	var hashes = window.location.href.slice(window.location.href.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;
}

/**
 * Custom Method to put e-Mail adresses
 */
function putEmail() {
	var email = $('#email');
	
	if(email == undefined) {
		return;
	}
	
	var str1 = 'matt';
	var str3 = 'steinb';
	var str5 = '.org';
	var str2 = 'hias';
	var str4 = 'bauer';
	
	var adr = str1 + str2 + '@' + str3 + str4 + str5;
	
	var h = '<a href="mailto:' + adr + '">' + adr + '</a>';
	email.html(h);
}

/**
 * This runs my main routine to actually load the page
 * 
 */
jQuery(window).load(function() {
    var vars = getUrlVars();
    var indexPage = 'autoalpha';
    
    if(vars.length > 0 && vars['page'] != undefined) {
    	indexPage = vars['page'];
    }
    
    var page = pageDefinitions[indexPage];
    var loader = new PageLoader(page);
    loader.doLoad();
    putEmail();
});
