/***************** color-switcher ****************
 *
 */
 
var headNode = document.getElementsByTagName('head')[0];
var switchNode = false;

function switchColor() {
	if (switchNode) {
      		/*** IE 6 Hack ***/
      		switchNode.setAttribute('type', 'text');
			switchNode.setAttribute('href','');
			switchNode.parentNode.removeChild(switchNode);	
			switchNode = false;
	}
	else {
		importCSS('black.css');
	}
}

 function importCSS(url)
 {
    try {
        /* check the parameters and set defaults */
        if(!url) throw("importCSS: Missing parameter page.");


        /* import page */
 //       var Head = document.getElementsByTagName('head')[0];
        var CSS = document.createElement('link');
        CSS.setAttribute('type', 'text/css');
        CSS.setAttribute('rel', 'stylesheet');
        CSS.setAttribute('id', 'switcher');
        CSS.setAttribute('href', url);
        return switchNode = headNode.appendChild(CSS);

        return true;
    } catch(e) {
        alert(e.message);
        return false;
    }
 }






// methode zum laden der inhalte
var myrequest = new Request.HTML({
   method: 'get', 
   update: 'stage', 
   onRequest: function () { loader.setStyle('opacity',1); loader.set('html', 'Seite wird geladen ...'); }, 
   onSuccess: function () { loader.fade(0); $('stage').fade(0,1); }, 
   encode: 'utf-8',
   evalResponse: false,
   evalScripts: true
});
// nicht cachen
//myrequest.setHeader('Last-Modified','Sat, 1 Jan 2005 05:00:00 GMT');


var myfaderIn = function () {
	arguments[0].fade(1,0);
}
var myfaderOut = function () {
	arguments[0].fade(0,1);
}



// hier werden die angeklickten menuepunkte gespeichert
var navigation_trigger = new Hash({main: "", sub: ""});

// methoden an die navigaiton uebertragen
var stage_loader = function () {

	if (navigation_trigger.get('sub') != "") {
		navigation_trigger.get('sub').removeClass('active');
		navigation_trigger.set('sub', '');
	} 

	navigation_trigger.set('sub', arguments[0]);
	navigation_trigger.get('sub').addClass('active');

	var content = arguments[1];
	var el = $('stage');
		
	el.fade(1,0).addEvent(
		'onComplete', myfaderIn.pass(el) ).addEvent(
		'onComplete', myrequest.send({url: 'loader.php?load='+content})
	)
}


	window.addEvent('domready', function() {
		content = $('content');
		content.fade('hide');
		content.setStyle('visibility', 'visible');
		content.fade('in');
		
		loader = $('loader');
		loader.fade('out');

		main = $$('.main ul');
		sub = $$('.main ul ul');

		main.each(
			function(item, index) {
				var obj   = item.hasClass('single');
				if(obj) {
					var obj2 = item.getElement('li').getElement('a');
						obj2.addEvent('click', stage_loader.pass([$(item), item.getProperty('id')]) )
				}
			}
		);

		sub.each(
			function(item, index) {
				var obj    = $(item.getProperty('id'));
				var pos1 = $('main').getCoordinates();
				var pos2 = obj.getParent('ul').getCoordinates();
				var pos3 = obj.getCoordinates();

	
				obj.setStyle('top', pos2.top-pos1.top);
				obj.setStyle('left', -(pos3.width+pos1.left));
	
				var t2 = obj.getChildren('li');
				t2.each(
					function(item, index) {
						var id = item.getProperty('id');
						if (id != null) {
							$(item).addEvent('click', stage_loader.pass([$(item), id]) )
						}
					}


				)
			}
		)
	});

	
	var active_main = -1;
	var active_sub = -1;

	var main_node = -1;
	var sub_node = -1;
	
	function switchMain(which) {
		
		if (active_main != -1 && main_node != -1 && active_main != which ) {

			if (main_node.getProperty('id').indexOf('sub') > -1) {
				main_node.getParent('li').removeClass("active");
			 	main_node.slider = new Fx.Morph(sub.getProperty('id')[active_main]);
				main_node.slider.start({'left': [150,-170], 'opacity': [0.2, 0]});
			}
			else {
				main_node.removeClass("active");
			}
		}
	
	
		if (active_main != which) {

			if (main_node = $(sub.getProperty('id')[which])) {

				main_node.getParent('li').addClass("active");
	
		 		main_node.slider = new Fx.Morph(sub.getProperty('id')[which]);
				main_node.slider.start({'left': [-170,150], 'opacity': [0, 1]});
				active_main = which;
			} 
			else {
				main_node = sub.getParent('div').getElementById(data[which]['name']);  //.getProperty('id');
				main_node.addClass("active");
				if (sub_node != -1) sub_node.removeClass("active");
				active_main = which;
			}

		}
	}



var thumbnails = "";
var galleryimages = "";
function galleryInit() {
	if (galleryimages) {
	 	galleryimages.stop();
		thumbnails = "";
		galleryimages = "";
	 }
	 
	thumbnails = new noobSlide({
		box: $('gbox'),
		items: $$('#gbox .block'),
		size: $$('#gbox .block')[0].getSize().x,
		mode: 'horizontal',
		autoPlay: false,
		handles: $$('#controls .buttons'),
		addButtons: {previous: $$('#controls .prev'), play: $$('#controls .play'), next: $$('#controls .next')},
		imgblock: galleryimages
	});
//		thumbnails.walk(0,false,true);

	galleryimages = new galleryEffects({
		box: $('galleryImages'),
		storage: $('galleryStorage'),
		thumbnails: $$('#thumbnails .gallerythumbs'),
		thumbnails_path: 'thumbnails/',
		statusbar: $('loader'),
		startnr: 1,
		thumbblock: thumbnails
	});

	$('gallery').setStyle('opacity','0');
	galleryimages.setup();
}


var ff = "";
function kontaktInit() {
	$('kontakt').addEvent('submit', function(){ return false; } );
	$('button').addEvent('click', function(){ sendForm()} );

	var ff = $$('input', 'textarea');

	var fh = new formHighlight ({
		inputs: ff, 
		activeClass: 'active_field',
		initialFocus: true
	});
					 


}
function sendForm() {
	var ff = $$('input', 'textarea');
	var req = ['Name', 'Strasse', 'Ort', 'Telefon', 'Email', 'Nachricht'];
	var err = "";
	var data = '';
	
	req.each(
		function(item, index) {
			if(!$chk(ff[index].get('value'))) {
				ff[index].addClass('error_field');
				err += '<li>' + item + "</li>";
			}
		}
	)

	if (err) {
		err = 'Die folgende Felder wurden nicht ausgef&uuml;llt:<ul>'+err+'</ul>';
		
		$('formerror').setStyle('opacity', 1);
		$('formerror').set('html', err);
		$('formerror').highlight('#f00', '#fff');
		
		(function() { $('formerror').fade(0)} ).delay(5000);
		(function() { ff.removeClass('error_field')} ).delay(6000);


	}
	else {
		ff.each(
			function(item, index) {
				data += '&'+item.get('name')+'='+item.get('value');
			}
		)

		var sendmail = new Request.HTML({
		   method: 'post', 
		   update: 'stage', 
		   data: $$('input', 'textarea'),
		   onRequest: function () { loader.setStyle('opacity',1); loader.set('html', 'Seite wird geladen ...'); }, 
		   onSuccess: function () { loader.fade(0); $('stage').fade(0,1); }, 
		   encode: 'utf-8',
		   evalResponse: false,
		   evalScripts: true,
		   url: 'kontakt.php'
		});
		
		sendmail.send(data);

		
	}
}
 



