// hier evtl. Reskalierung des transparenten div.content.page.5=TEXT


function myLightboxMapper(el){
    return [el.href, el.title+"<a href='"+el.href.replace("/uploads/","/downloads/uploads/")+"'>Bild herunterladen</a>"];
}

function cleanUrl(url){
    var u=url.toString();
    u=u.replace('http://','');
    u=u.replace('www.','');
    u=u.replace('ramses-award.de','');
    u=u.replace('ramses-award.net','');
    u=u.replace('ramses-award.info','');
    
    if (u=='') u='/';
    return u;
}
        
function request(url, callback){
	var xmlHttp = new XMLHttpRequest();
	if (xmlHttp) {
		xmlHttp.open('GET', url, true);
		xmlHttp.onreadystatechange = function () {
		    if (xmlHttp.readyState == 4) {
		        callback(xmlHttp.responseText);
		    }
		};
		xmlHttp.send(null);
	}
}

function goForm(form){
	var elements=form.elements;
		
	var parameters='';
	for(var i=0; i<elements.length; i++) {
		var element=elements[i];
		parameters+='&'+element.name+'='+encodeURIComponent(element.value);
	}
	
	var getUrl=form.action+parameters;
	
	go(getUrl);
	
	return false;
}

function go(linkUrl){
	location.hash=cleanUrl(linkUrl);
	var url=cleanUrl(linkUrl);
	request(url, function(content){
		update(content, url);
	});
	
	ET_Event.eventStart('Seitenwechsel', url, 'geklickt');	
	
	return false;
}

function update(content, url){
	updateElements(['logoContainer','mid'], content);
	modifyLinks();
	jQuery("a[rel^='lightbox']").slimbox({overlayOpacity: 0.8,counterText: "Bild {x} von {y}"},myLightboxMapper);		
	
	var deranger = document.getElementById('deranger');
	if(deranger) {
		var onStartPage = url == '/index.php?id=1623';
		deranger.style.display = onStartPage ? 'block' : 'none' ;
	}	
	
	//loadAccordions();
}

function getChildById(element, id){
	var children=element.getElementsByTagName('*');
	for(var i=0; i<children.length; i++)
		if(children[i].id==id) return children[i];
		
	return null;
}

function updateElements(ids, content){

	var elementsToUpdate=new Object();
	for(var i=0; i<ids.length; i++){
		var id=ids[i];
		elementsToUpdate[id]=document.getElementById(id);
//		elementsToUpdate[id].id=id+"_old";
	}

	var tmpDiv=document.createElement('div');
	tmpDiv.innerHTML=content;
//	document.body.appendChild(tmpDiv);

	for(id in elementsToUpdate){
		var element=elementsToUpdate[id];
//		var newElement=document.getElementById(id);
		var newElement=getChildById(tmpDiv,id);
		if(!newElement) var newContent='error: no replacement found.';
		else            var newContent=newElement.innerHTML;	

		element.innerHTML=newContent;
		element.id=id;
	}
		
	//document.body.removeChild(tmpDiv);
}

currentActive=false;

function toggleActive(link,active){
	if(!link.className.match(/^level[12]/)) return;

	if(active && !link.className.match(/.*active$/))
		link.className=link.className.replace(' ','')+'active';
	
	if(currentActive)
		currentActive.className=currentActive.className.replace('active','');
	
	currentActive=link;
}

function modifyLinks(){
	var links=document.getElementsByTagName('a');
	for(var i=0; i<links.length; i++){
		var link=links[i];
		if(!link.onclick && !link.rel && (!link.target || link.target=='_self') && link.href.match(/^http/) && link.href!='#'){
			link.onclick=function(){			
				toggleActive(this,true);
				go(this.href);
				return false;
			};
		}
	}
	
	for (var i=0; i<document.forms.length; i++){
		var form=document.forms[i];
		form.submit=function(){
			return goForm(form);
		};
	}
}

function cleanLocation(loc){
	var parts=loc.split('#');	
	return parts[1];
}

function load(){
	if(location.hash && location.hash.match(/[/]/)) go(cleanLocation(location.hash));
	modifyLinks();
	loadAccordions();
}

/*Event.observe(window, 'load', loadAccordions, false);*/
//
//	Set up all accordions
//
function loadAccordions() {

	var topAccordion = new accordion('navi', {
		classNames : {
			toggle : 'level0',
			content : 'subitems'
		},
		defaultSize : {
		//	width : 250
		},
		direction : 'vertical',
		onEvent: 'mouseover'
	});


	var subMenus=document.getElementById('navi').getElementsByTagName('div');

	for(var i=0; i<subMenus.length; i++){
		var subMenu=subMenus[i];
		var id='submenu'+i;
		subMenu.id=id;
		new accordion(id, {
			classNames : {
				toggle : 'level1',
				content : 'subitems'
			},
			defaultSize : {
			},
			direction : 'vertical',
			onEvent: 'mouseover'
		});
		
		var link=subMenu.previousSibling;
		var subClass=subMenu.className;
		if(subClass=='subitemsActive')
			topAccordion.activate(link);
	}
	
	// Open second one
	//topAccordion.activate($$('#horizontal_container .horizontal_accordion_toggle')[2]);
}	







/*if (   !location.hash
    && !navigator.userAgent.match(/(iPhone)|(iPad)|(iPod)/))
{
	var url=location;
	location=location+'#'+cleanUrl(url);
}*/





