function addLoadEvent(func) {
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		var oldonload = window.onload;
		window.onload = function() {
		if (oldonload) {
			oldonload();
		}
			func();
		}
	}
}
page = {
	page : null,
	ajax : null,
	getBox : function(){
			var box = document.getElementById('box');
			if (box) return box;
			
			var imagebox = document.getElementById('imagebox')
            if (imagebox.className == 'start') {
                imagebox.className = '';
            }
            box = document.createElement('div');
			var header = document.createElement('h2');
			var headerText = document.createTextNode('');
			var content = document.createElement('div');
			header.appendChild(headerText);
			box.appendChild(header);
			box.appendChild(content);
			box.setAttribute('id','box');
			imagebox.appendChild(box);
			return box;
		},
	set : function(page, link){
			page = page.split(' ', 2);
			if(this.page != page[0] || page[1] == 'sub') {
				this.page = page[0];
				if(link.indexOf('?') == -1) link += '?';
				this.sendAJAX(link + '&ajax=1');
			}
		},
	add : function(theContent){
			var box = this.getBox();
	
			var header = box.getElementsByTagName('h2')[0];
			header.className = this.page;
			header.childNodes[0].nodeValue = this.page.charAt(0).toUpperCase() + this.page.substr(1, this.page.length).replace('_', ' ');

			var content = box.getElementsByTagName('div')[0];
			var newContent = document.createElement('div');
			newContent.innerHTML = theContent;
			newContent.setAttribute('id', this.page);
			box.replaceChild(newContent, content);

			if (window.execScript) {
				var scripts = newContent.getElementsByTagName("script");
				for (var i=0; i < scripts.length; i++) window.execScript(scripts[i].innerHTML);
			} else if (eval) {
				var scripts = newContent.getElementsByTagName("script");
				for (var i=0; i < scripts.length; i++) eval(scripts[i].innerHTML);
			}
			AM_securemail()
		},
	sendAJAX : function(url) {
			if(window.XMLHttpRequest) this.ajax = new XMLHttpRequest();
			else if (window.ActiveXObject) {
				try {
					this.ajax = new ActiveXObject('Msxml2.XMLHTTP');
				} catch(err) {
					this.ajax = new ActiveXObject('Microsoft.XMLHTTP');
				}
			}
			if (!this.ajax) return false;
			try {
				var svar = this;
				this.ajax.onreadystatechange=function() {
						svar.loaded();
					}
				this.ajax.open('GET', url, true);
				this.ajax.send(null);
			} catch(err) {
				this.error(1);
			}
		},
	loaded : function(){
			var ajax = this.ajax;
			var status = this.ajax.readyState;
			if (status == 4) {
				var http = ajax.status;
				if (http == 200 || http == 0) {
					this.add(ajax.responseText);
				} else {
					this.error(2);
				}
			}
		},
	error : function(nr){
			alert('Error number ' + nr);
		}
}
function AM_securemail() {
	var link = document.getElementsByTagName("a");
	var re =/mailto:([\w\.\-]+)\[[A-Z-]+\]([\w\-]+)\[[A-Z]+\](\w+)/i;
	for (i = 0; i < link.length; i++) {
		st = link[i].getAttribute("href");
		link[i].setAttribute("href", st.replace(re, "mailto:$1@$2.$3"));
	}
}
function initMenu(func) {
	var options = document.getElementsByTagName('a');
	if (!options) return false;
	for (var i = 0; i < options.length; i++) {
		if(options[i].getAttribute('rev') == 'menu') {
			options[i].onclick = function() {
					page.set(this.parentNode.className, this.getAttribute('href'));
					if (typeof func == 'function') func();
					return false;
				}
		}
	}
}
addLoadEvent(AM_securemail);
addLoadEvent(initMenu);