var gpreloadimages=[];
var gprepreloadimages=[
	essentials.root+'layout/weiter.png',
	essentials.root+'layout/zuruck.png',
	essentials.root+'layout/weiter-active.png',
	essentials.root+'layout/zuruck-active.png'
];
var gimages=[];
var gpos=-1;
var gmove=function(move){
	var i;
	var npos=gpos+move+0;
	npos=npos>=gpics.length?0:npos<0?gpics.length-1:npos;
	if(npos==gpos) return;
	for(i=0;i<gpics.length;i++){
		var gpic=gpics[i];
		if(gpic.i==gpos){
			gpic.div.setStyles({
				'z-index':1002,
				opacity:1
			});
			gpic.div.morph({
				opacity:0
			});
		}else if(gpic.i==npos){
			gpic.div.setStyles({
				'z-index':1001,
				opacity:1
			});
		}else{
			gpic.div.setStyles({
				'z-index':1000,
				opacity:0
			});
		}
	}
	gpos=npos;
}

window.addEvents({
	// beforeunload:obuf,
	domready:function(){
		var a,i,is,j,js;

		if($$('form')){
			is=$$('form');
			for(i=0;i<is.length;i++){
console.log(is[i]);
				is[i].altered=false;
				js=is[i].getElements('input,select,textarea');
console.log(js);
				for(j=0;j<js.length;j++){
					switch(js[j].get('type')){
						case 'submit':
							js[j].addEvents({
								click:function(){
console.log('b');
									this.getParent('form').sent=true;
								}
							});
							break;
						default:
console.log('b');
							js[j].addEvents({
								change:function(){
console.log('C');
									this.getParent('form').altered=true;
								}
							});
							break;
					}
				}
			}
		}

		if($('gallery')){
			for(i=0;i<gpics.length;i++){
				var gpic=gpics[i];
				var div=new Element('div',{
					'class':'gdiv',
					morph:{duration:1000,transition:Fx.Transitions.Sine.easeOut}
				});
				var img=new Element('img',{src:essentials.root+gpic.path+gpic.fname});
				img.inject(div);
				if(gpic.description){
					var ddiv=new Element('div',{'class':'gdesc',html:gpic.description});
					ddiv.inject(div);
				}
				gpreloadimages.push(essentials.root+gpic.path+gpic.fname);
				gimages.push(div);
				gpic.i=i;
				gpic.div=div;
			}
			var gplus=new Element('div',{'class':'gmove gplus',events:{click:function(){gmove(1);}}})
			gplus.inject($('gallery'));
			var gminus=new Element('div',{'class':'gmove gminus',events:{click:function(){gmove(-1);}}})
			gminus.inject($('gallery'));

			var u=new Asset.images(gprepreloadimages,{
				onComplete:function(){
					var v=new Asset.images(gpreloadimages,{
						onComplete:function(){
							$('gpreloader').dispose();
							for(i=0;i<gimages.length;i++) gimages[i].inject($('gallery'));
							gmove(1);
						}.bind(this)
					});
				}.bind(this),
				onError:function(){
				}
			});
		}

		if($('arrs')){
			var els=$$('#arrs .supplement,#arrs table.arr tbody tr');
			for(i=0;i<els.length;i++){
				var el=els[i];
				/\broom(\d+)\b/i.exec(el.className);
				el.room=RegExp.$1;
			}
			$$('#arrs table.arr tbody tr').addEvents({
				click:function(){
					$$('#arrs table.arr tbody tr').removeClass('clicked');
					$$('#arrs .supplement').setStyle('display','none');
					this.addClass('clicked');
					$$('#arrs .supplement.room'+this.room).setStyle('display','block');
				}
			});
		}

		if($('wellness')||$('restaurant')){
			var els=$$('#wellness #content div,#restaurant #content div');
			var divint=new Element('div',{id:'interior'});
			var ulint=new Element('ul');
			var divdates=new Element('div',{id:'dates'});
			for(i=0;i<els.length;i++){
				var el=els[i];
				el.inject(divdates);
				el.setStyle('display','none');
				var liint=new Element('li');
				var aint=new Element('a',{href:'#',html:el.getElement('h1').get('html')});
				el.i=aint.i=i;
				aint.addEvents({
					click:function(){
						var i,j;
						var els=$$('#content #dates div');
						for(i=0;i<els.length;i++){
							var el=els[i];
							if(el.i==this.i) el.setStyle('display','block')
							else el.setStyle('display','none');
						}
						var els=$$('#content #interior li');
						for(i=0;i<els.length;i++){
							var el=els[i];
							if(el.getChildren('a')[0]!=this){
								el.removeClass('active');
								el.getChildren('a').removeClass('active');
							}else{
								el.addClass('active');
								el.getChildren('a').addClass('active');
							}
						}
						return false;
					}
				});
				aint.inject(liint);
				liint.inject(ulint);
			}
			ulint.inject(divint);
			divint.inject($('content'));
			divdates.inject($('content'));
			ulint.getElement('a').fireEvent('click');
		}

		if($('rooms')){
			var els=$('dates').getParent().getAllNext();
			for(i=0;i<els.length;i++){
				var el=els[i];
				el.inject($('dates'));
				el.set('id','');
				var aint=new Element('a',{html:el.getChildren('h1')[0].get('html'),href:'#'});
				var liint=new Element('li');
				el.room=aint.room='x'+i;
				aint.inject(liint);
				liint.inject($$('#interior ul')[0]);
			}
			$$('#interior ul').setStyle('display','block');
			var els=$$('#interior a,#dates div,.supplement');
			for(i=0;i<els.length;i++){
				var el=els[i];
				if(/\broom(x?\d+)\b/i.exec(el.className)) el.room=RegExp.$1;
			}
			var els=$$('#interior a');
			for(i=0;i<els.length;i++){
				var el=els[i];
				el.addEvents({
					click:function(){
						var i;
						var els=$$('#interior li');
						for(i=0;i<els.length;i++){
							var el=els[i];
							if(el.getElement('a')==this){
								el.addClass('active');
								el.getElement('a').addClass('active');
							}else{
								el.removeClass('active');
								el.getElement('a').removeClass('active');
							}
						}
						var els=$$('#dates div');
						for(i=0;i<els.length;i++){
							var el=els[i];
							if(el.room==this.room) el.setStyle('display','block');
							else el.setStyle('display','none');
						}
						var els=$$('.supplement');
						for(i=0;i<els.length;i++){
							var el=els[i];
							if(el.room==this.room) el.setStyle('display','block');
							else el.setStyle('display','none');
						}
						return false;
					}
				});
				if(el.room==chosenroom) a=el;
			}
			if(!a) a=$$('#interior a')[0];
			a.fireEvent('click');
		}
	}
});

function obuf(){
	var i,is;

	is=$$('form');
	if(!is.length) return;

	if(Browser.ie){
		for(i=0;i<is.length;i++) if(is[i].altered&&!is[i].sent) return "Bitte bestätigen Sie, dass Sie diese Seite verlassen möchten.\n\nDas ausgefüllte Formular ist NICHT abgeschickt.\nBitte klicken Sie dafür zuerst auf 'Senden'";
		// for(i=0;i<is.length;i++) console.log(is[i].altered);
	}else{
		for(i=0;i<is.length;i++) if(is[i].altered&&!is[i].sent) return false;
	}
};
window.onbeforeunload=obuf;
