// JavaScript Document
var imgPreloaded = false;

if(!imgPreloaded) preloadImages();

function init() {
	menu('home');
	uhr = new Clock(60);
	uhr.start();
}

function Fertig() { 
	window.status = 'lade Bilder... fertig'; }

function Prozent(i) { 
	window.status = 'lade Bilder... '+i+'%'; }

function preloadImages() {
	// backgrounds
	preloader.AddImage('graphics/bg_top1.jpg');
	preloader.AddImage('graphics/bg_top2.jpg');
	preloader.AddImage('graphics/bg_main.jpg');
	preloader.AddImage('graphics/circle_1.jpg');
	preloader.AddImage('graphics/circle_2.jpg');	
	preloader.AddImage('graphics/bg_data.jpg');
	preloader.AddImage('graphics/bg_subdata.jpg');
	preloader.AddImage('graphics/bg_bottom.jpg');
	
	// Menü
	preloader.AddImage('graphics/btn_home.jpg');
	preloader.AddImage('graphics/btn_home_sel.jpg');	
	preloader.AddImage('graphics/btn_leistung.jpg');	
	preloader.AddImage('graphics/btn_leistung_sel.jpg');	
	preloader.AddImage('graphics/btn_hosting.jpg');	
	preloader.AddImage('graphics/btn_hosting_sel.jpg');	
	preloader.AddImage('graphics/btn_service.jpg');	
	preloader.AddImage('graphics/btn_service_sel.jpg');	

	//...
	preloader.onImagesLoaded = Fertig;
	preloader.onPercents = Prozent;
	preloader.LoadImages();
	}

function menu(_nav) {
	menuUnselectAll();
	menuSelect(_nav);
	nav = _nav;
	fadeData();
}

function submenu(_nav, _snav) {
	menuUnselectAll();
	menuSelect(_nav);
	nav = _nav;
	snav = _snav;
	loadSNav(_snav);
}

function subnav(_nav, _snav) {
	nav = _nav;
	loadNav(_nav, _snav);
}


function loadSubdata() {
	var url = "subpages/"+nav+".sub.php";	
	var opt = { method: 'post', postBody: '', onComplete: showSubdata };
	new Ajax.Updater('dataRightCenter', url, opt);
}

function showSubdata(res) {
	$('dataRightCenter').innerHTML = res.responseText;
	showSubdata();
}

function loadMenu() {
	//$('dataLeft').setStyle('dataLeft.arrow', {background-image:'url(../graphics/bg_home2.jpg)'});
	var url = "subpages/"+nav+".main.php";	
	var opt = { method: 'post', postBody: '', onComplete: showMenu };
	new Ajax.Request(url, opt);
}

function loadNav(_nav, _snav) {
	var url = "subpages/"+_nav+".main.php";	
	var opt = { method: 'post', postBody: 'snav='+_snav, onComplete: showSubnav };
	new Ajax.Request(url, opt);
}

function loadSNav(_snav) {
	var url = "subpages/"+_snav+".main.php";	
	var opt = { method: 'post', postBody: 'snav='+_snav, onComplete: showSubnav };
	new Ajax.Request(url, opt);
}

function showSubnav(res) {
	$('dataLeftCenter').innerHTML = res.responseText;
	if(nav=='hostinfo') updateHostinfo();
}

function fadeData() {
	hideSubdata();
	new Effect.Fade('dataLeft', {duration: 0.3, queue:{position:'end',scope:'dataScope'}});
	hideCircles();
	setTimeout('loadMenu()', 1000);
}

function appearData() {
	Effect.Appear('dataLeft', {duration: 0.6, queue:{position:'end',scope:'dataScope'}});
}

function showMenu(res) {
	showCircles();
	$('dataLeftCenter').innerHTML = res.responseText;
	appearData();
	if(nav!="impressum" && nav!="kontakt" && nav!="agb" && nav!="datenschutz" && nav!="preisliste") loadSubdata();	
}

function iconHover(e, _nav) {
	if(_nav!=nav) e.src = "graphics/btn_"+_nav+"_sel.jpg";
}

function iconOut(e, _nav) {
	if(_nav!=nav) e.src = "graphics/btn_"+_nav+".jpg";
}

function menuUnselectAll() {
	menuUnselect('home');
	menuUnselect('leistung');	
	menuUnselect('hosting');	
	menuUnselect('service');	
	menuUnselect('kontakt');
}

function menuSelect(_nav) {
	var e = $('btn_'+_nav);
	if(e) e.src = "graphics/btn_"+_nav+"_sel.jpg";
}

function menuUnselect(_nav) {
	var e = $('btn_'+_nav);
	if(e) e.src = "graphics/btn_"+_nav+".jpg";
}

function showCircles() {
	new Effect.Appear('circle1', {duration: 0.3, queue:{position:'end', scope:'dataScope'}});
	new Effect.Appear('circle2', {duration: 0.3, queue:{position:'end', scope:'dataScope'}});
	}

function hideCircles() {
	new Effect.Fade('circle2', {duration: 0.3, queue:{position:'end', scope:'dataScope'}});
	new Effect.Appear('circle1', {duration: 0.3, queue:{position:'end', scope:'dataScope'}});
	}


function hideSubdata() {
	//new Effect.Move('dataRight', {x:+400, y:0, sync:false, mode:'relative', queue:{position:'end',scope:'dataScope'}});
	new Effect.Fade('dataRight', {duration: 0.3, queue:{position:'end',scope:'dataScope'}});
}

function showSubdata() {
	//new Effect.Move('dataRight', {x:-400, y:0, sync:false, mode:'relative', queue:{position:'end',scope:'dataScope'}});
	new Effect.Appear('dataRight', {duration: 0.5, queue:{position:'end',scope:'dataScope'}});
}

