/**********\
* LOADER *
\**********/

var Observer = Class.create({

	initialize: function() {

		// END initialize
		this.observer();

	},

	observer: function () {
		// allgemeiner Observer
		function handle(e) {
			
			var parent = Event.element(e).parentNode.nodeName.toLowerCase();
			var parentId = Event.element(e).parentNode.id.toLowerCase();

			var element = Event.element(e).tagName.toLowerCase();
			var elementId = Event.element(e).id.toLowerCase();

			if (parentId.search('opener') != -1 && elementId.search('opener') == -1) {
				element = 'li';
				elementId = parentId;

			}
			if (elementId.search('opener') != -1) {
				this.setElementActive (elementId);
			}
			
		}
		new Event.observe(document.body, 'click', handle.bindAsEventListener(this));

	},
	setElementActive: function (elementId) {

		var noeffect = false;

		var child = elementId.sub('opener', 'child');
		var effect = 'blind';
		var time = 0.3;
		if ($(child).readAttribute('effect') == "appear") {
			effect = 'appear';
		} else if ($(child).readAttribute('effect') == "slide"){
			effect = 'slide';
		}  else if ($(child).readAttribute('effect') == "replace"){
			effect = 'slide';
		}  else if ($(child).readAttribute('effect') == "switch"){
			effect = 'slide';
		} else if ($(child).readAttribute('effect') == "no"){
			noeffect = true;
		}
		
		if ($(child).readAttribute('time') != ""){
			time = $(child).readAttribute('time');
		}
		
		Effect.toggle(child,effect,{duration:time});
	},
	keys: function (e) {

		var code;
		var evt = e || window.event;
		code = evt.keyCode;
/*
		if (code == 40) {
			// Nein
			//alert('Nein');
		}
		if (code == 39) {
			// Weiter
			alert('weiter');
		}
		if (code == 38) {
			// Ja
			//alert('Ja');
		}
		if (code == 37) {
			// Zurück
			alert('zurück');
		}*/
		if (code == 13) {
			// Ja (Enter)
			send(); 
		}/*
		if (code == 8) {
			// Nein (Backspace)
		}*/
	},
	sender: function (element) {
		if (Prototype.Browser.IE == true) {
			new Event.observe($(element), 'keydown', this.keys.bindAsEventListener(this));
		} else {
			new Event.observe($(element), 'keypress', this.keys.bindAsEventListener(this));
		}
	}

});

