var tpl_path = '/killart/templates/killart/';

window.addEvent('domready',function(){

	var ajax = $('ajax');

	var loader_black = new Asset.image('/lib/main/images/loader.black.gif');
	var loader_dark = new Asset.image('/lib/main/images/loader.dark.gif');

	var pic = new Array();
	var info = new Array();
	$$('.member_trigger').each(function(el, i){
		var ids = el.get('id').split('_');
		var mem_id = parseInt(ids[1]);
		var ban_id = parseInt(ids[2]);
		pic[i] = member[ban_id+'_'+mem_id];
		el.addEvent('mouseover',function(){
			$('roster_banner_'+ban_id).setStyle('background-image','url(/lib/main/images/loader.black.gif)');
			var preloadimg = new Asset.image(pic[i],{onload: function(){
				$('roster_banner_'+ban_id).setStyle('background-image','url('+pic[i]+')');
			}});
			return false;
		});
	});

	$$('img.preload_img').each(function(el){
		var img_src = el.get('src');
		el.set('src','/lib/main/images/loader.dark.gif');
		new Asset.image(img_src,{onload: function(){
			el.set('src',img_src);
		}});
	});

	$$('img.preload_img_dark').each(function(el){
		var img_src = el.get('src');
		el.set('src','/lib/main/images/loader.black.gif');
		new Asset.image(img_src,{onload: function(){
			el.set('src',img_src);
		}});
	});

	if($('smiley_collapse') && $('smiley_toggle')) {
		var bbt = $('smiley_toggle');
		$('smiley_collapse').set('tween', {duration: 200, transition: Fx.Transitions.linear});
		$('smiley_collapse').setStyle('height','0px');
		bbt.addEvent('click',function() {
			$('smiley_collapse').tween('height','100px');
		});

		var smiley = $$('#smiley_collapse li img');
		smiley.each(function(el, i) {
			el.addEvent('click', function() {
				$('smiley_collapse').tween('height','0px');
			});
		});
		if($('qr_collapse')) {
			$('qr_toggle').addEvent('click',function() {
				$('smiley_collapse').setStyle('height','0px');
			});
		}
	}

	if($('flag_collapse') && $('flag_toggle')) {
		var bbft = $('flag_toggle');
		$('flag_collapse').set('tween', {duration: 200, transition: Fx.Transitions.linear});
		$('flag_collapse').setStyle('height','0px');
		bbft.addEvent('click',function() {
			$('flag_collapse').tween('height','300px');
		});

		var flag = $$('#flag_collapse li img');
		flag.each(function(el, i) {
			el.addEvent('click', function() {
				$('flag_collapse').tween('height','0px');
			});
		});
		if($('qr_collapse')) {
			$('qr_toggle').addEvent('click',function() {
				$('flag_collapse').setStyle('height','0px');
			});
		}
	}

	if(headlines[0]) {
		var boxes = new Array();
		$$('.switchbox').each(function(el,i){
			boxes[i] = el;
			el.setStyle('display','none');
		});
		boxes[0].setStyle('display','');
		headlines.each(function(el,i) {
			var build = new Element('a',{'href':'','class':'build_trigger','html':el}).inject($('headlines'));
			build.addEvent('click',function(){
				return false;
			});
			if(i == 0) {
				build.addClass('active');
			}
			build.addEvent('mouseover',function(){
				$$('.build_trigger').each(function(link){
					link.removeClass('active');
				});
				$$('.swboxfont').each(function(font){
					var src = font.get('src').replace('swboxhover','swbox');
					font.set('src',src);
				});
				$$('.switchbox').each(function(box){
					box.setStyle('display','none');
				});
				build.addClass('active');
				boxes[i].setStyle('display','');
			});
		});
	}

	if(squads[0]) {
		var res = new Array();
		var links = new Array();
		$$('.resultsnav').each(function(el,i){
			res[i] = el;
			el.setStyle('display','none');
		});
		$$('.resultsnav').each(function(el,i){
			links[i] = el;
			el.setStyle('display','none');
		});
		res[0].setStyle('display','');
		squads.each(function(el,i) {
			var res_size = res[i].getSize();
			var outer = new Element('a',{'class':'resw_link','href':'#'}).inject($('resultswitch'));
			outer.addClass('flleft');
			if(i == 0) {
				outer.addClass('resw_link_active');
			}
			var icon = new Element('img',{'src':el}).inject(outer);
			outer.addEvent('click',function(){
				nav = $$('.resultsnav');
				resw = $$('.resw_link_active');
				nav.each(function(nv,n){
					if(resw[n]) {
						resw[n].removeClass('resw_link_active');
					}
					res[n].setStyle('display','none');
				});
				res[i].setStyle('display','');
				outer.addClass('resw_link_active');
				return false;
			});

		});
	}

	var submenus = $$('.submenu ul');
	submenus.each(function(ele){
		if(ele.hasClass('active')) {
			ele.setStyle('display','');
		} else {
			ele.setStyle('display','none');
		}
	});
	$$('.sub_trigger').each(function(el,i){
		var subid = el.get('id');
		el.addEvent('mouseover',function(){
			$$('.sub_trigger').each(function(navi){
				navi.removeClass('active');
			});
			el.addClass('active');
			submenus.each(function(ele){
				ele.setStyle('display','none');
			});
			if(el.get('id') != 'nothing') {
				$('sub_'+subid).setStyle('display','');
			}
		});
	});

	var container_height = 0;
	var swtrigger = new Array();
	var nextsize = new Array();
	var currsize = new Array();
	nextsize[0] = 0;
	$$('.switch_trigger').each(function(el,i){
		var cid = el.get('id');
		var csize = $(cid).getSize();
		container_height += csize.y;
		nextsize[(i + 1)] = 0 - container_height;
		currsize[i] = csize.y;
		swtrigger[i] = el;
	});

	if($('switch_outer') && $('switch_inner')) {
		$('switch_outer').set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
		$('switch_inner').set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
		$('switch_outer').setStyles({
			'height':currsize[0]+'px',
			'overflow':'hidden'
		});
	}

	$$('li.news_trigger').each(function(el,i){
		swtrigger[i].set('tween', {duration: 250, transition: Fx.Transitions.linear});
		$('switch_inner').setStyle('height',container_height+'px');
		el.addEvent('click',function(){
			swtrigger.each(function(sw){
				sw.tween('opacity','0');
				var delay = (function(){
					sw.tween('opacity','1');
				}).delay(250);
			});
			$('switch_outer').tween('height',currsize[i]+'px');
			$('switch_inner').tween('margin-top',nextsize[i]+'px');
			$$('li.news_trigger').each(function(li, i){
				li.setStyles({
					'background-image':'',
					'background-color':'',
					'color':'#FFF',
					'font-size':'11px'
				});
			});
			el.setStyles({
				'background-color':'#FFF',
				'color':'#777',
				'font-size':'13px'
			});
			var id = el.get('id').substr(5,el.get('id').length);
			$$('.switch_trigger').each(function(ele){
				// ele.setStyle('display','none');
			});
			$('cont_'+id).setStyle('display','');
			return false;
		});
	});

	var locations = $$('.imagerotate a');
	$$('.imagerotate img').each(function(el,i){
		var title = el.get('alt');
		var discription = el.get('title');
		var imgsrc = el.get('src');
		el.setStyle('opacity','0');
		var preloadimg = new Asset.image(imgsrc,{onload: function(){
			var loc = locations[i];
			var imgsize = el.getSize();
			var rotate_img = new Element('div',{'class':'rotate_init','styles':{
				'background-image':'url('+imgsrc+')',
				'background-position':'center',
				'width':'419px',
				'height':'201px',
				'position':'absolute',
				'left':'auto',
				'top':'auto',
				'margin':'1px 0 0 0',
				'z-index':(10 + i),
				'cursor':'pointer'
			}}).inject(locations[i],'after');
			rotate_img.set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
			locations[i].dispose();
			var overlay = new Element('div',{'class':'rotate_overlay','styles':{'z-index':'1','background-image':'url('+tpl_path+'/img/overlay.png)','height':'75px','width':'409px','padding':'0 5px 0 5px','margin':(201 - 75)+'px 0 0 0','color':'#FFF'}}).inject(rotate_img);
			if(i == 0) {
				rotate_img.setStyle('opacity','1');
			} else {
				rotate_img.setStyle('opacity','0');
			}
			overlay.set('html','<strong style="font-size:18px;">'+title+'</strong><br />'+discription);
			var link = new Element('a',{'href':'#','html':(i + 1)}).inject($('rotate_nav'));
			link.set('tween',{duration: 500, transition: Fx.Transitions.Expo.easeOut});
			link.setStyle('opacity', '0.5');
			link.addEvent('mouseover',function(){
				$$('.rotate_init').each(function(hide){
					hide.set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
					hide.tween('opacity','0');
				});
				link.tween('opacity', '1');
				rotate_img.tween('opacity','1');
			});
			link.addEvent('click',function(){
				window.location.href = loc;
			});
			rotate_img.addEvent('click',function(){
				window.location.href = loc;
			});
            		link.addEvent('mouseout', function() {
				link.tween('opacity', '0.5');
			});
		}});
	});

	$$('.preview_overlay').each(function(el){
		el.set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
		var save = el.get('html');
		el.set('html','');
		var overlay = new Element('div',{'class':'absolute','html':save,'styles':{'z-index':'1','background-image':'url('+tpl_path+'/img/overlay.png)','height':'55px','width':'280px','padding':'0 5px 0 5px'}}).inject(el);
		overlay.setStyle('margin-top','160px');
		overlay.set('tween', {duration: 500, transition: Fx.Transitions.Expo.easeOut});
		el.addEvent('mouseover',function(){
			overlay.tween('margin-top','110px');
		});
		el.addEvent('mouseout',function(){
			overlay.tween('margin-top','160px');
		});	
	});

	var opa07 = $$('.opa07');
	opa07.each(function(el) {
		el.set('tween',{duration: 500, transition: Fx.Transitions.Expo.easeOut});
		el.setStyle('opacity', '0.5');
		el.addEvent('mouseover', function() {
			el.tween('opacity', '1');
		});
            	el.addEvent('mouseout', function() {
			el.tween('opacity', '0.5');
		});
	});
	var opa03 = $$('.opa03');
	opa03.each(function(el) {
		el.set('tween',{duration: 500, transition: Fx.Transitions.Expo.easeOut});
		el.setStyle('opacity', '0.3');
		el.addEvent('mouseover', function() {
			el.tween('opacity', '1');
		});
            	el.addEvent('mouseout', function() {
			el.tween('opacity', '0.3');
		});
	});

	$$('.captcha').each(function(el, i){
		var reload = new Element('a',{'href':''}).inject(el,'after');
		var reload_img = new Element('img',{'src':'/lib/main/images/reload.gif','alt':''}).inject(reload);
		reload.addEvent('click',function(){
			el.set('src','/lib/main/images/loader.dark.gif');
			el.setStyle('margin','1px 62px 4px 60px');
			var heute = new Date();
			var delay = (function(){
				var time = heute.getTime();
				var preloadimg = new Asset.image('/lib/captcha/captcha.php?'+time,{onload: function(){
					el.set('src','/lib/captcha/captcha.php?'+time);
					el.setStyle('margin','0 3px 3px 0');
				}});
			}).delay(750);
			return false;
		});
	});
	$$('.bbcode_click').each(function(el, i){
		el.addEvent('click',function(){
			var split = el.get('rel').split('#');
			bbfontstyle(split[0],split[1],split[2]);
			return false;
		});
	});

	$$('.start_movie').each(function(el, i){
		var movieid = el.get('id').replace('movie_','');
		if(i == 0) {
			var req = new Request.HTML({url:'/ajax.php?init=load_movie&id='+movieid, 
				onSuccess: function(html) {
					$('movie_load').set('html', '');
					$('movie_load').adopt(html);
				},
				onFailure: function() {
					$('movie_load').set('text', 'The request failed.');
				}
			}).send();
		}
		el.addEvent('click',function(){
			var req = new Request.HTML({url:'/ajax.php?init=load_movie&id='+movieid+'&autostart=true', 
				onSuccess: function(html) {
					$('movie_load').set('html', '');
					$('movie_load').adopt(html);
				},
				onFailure: function() {
					$('movie_load').set('text', 'The request failed.');
				}
			}).send();
			return false;
		});
	});

	var rating = $$('.rating');
	rating.each(function(el, i){
		var input = new Element('div',{'class':'flleft','styles':{'font-weight':'bold','margin':'0 0 0 3px','line-height':'19px','height':'20px'}});
		var styles = el.get('style');
		var location = $('rating_location').get('value');
		var dataid = $('rating_dataid').get('value');
		el.addEvent('mouseenter',function(){
			var coord = el.getCoordinates();
			input.inject(el,'after');
			var mouseposix = 0;
			el.addEvent('mousemove',function(event){
				mouseposix = (event.client.x - coord.left) + 1;
				if(mouseposix > 100) {
					mouseposix = 100;
				}
				el.setStyle('background-position',((0 - 100) + mouseposix)+'px top');
				input.set('html',round(((mouseposix / 10) / 2),1));
			});
			el.addEvent('click',function(){
				var req = new Request.HTML({url:'/ajax.php?init=rating&rate='+round(((mouseposix / 10) / 2),1)+'&module='+location+'&dataid='+dataid, 
					onSuccess: function(html) {
						$('error_handle').set('html','');
						$('error_handle').adopt(html);
					},
					onFailure: function() {
						$('error_handle').set('text', 'The request failed.');
					}
				}).send();
			});
		});
		el.addEvent('mouseleave',function(){
			el.removeEvent('mousemove');
			el.removeEvent('click');
			el.set('style',styles);
			input.dispose();
		});
	});
});

window.addEvent('load',function(){
	if($('slider')) {
		init_slider($('slider'));
	}
});

	var round = (function(x, n) {
		if (n < 1 || n > 14) return false;
		var e = Math.pow(10, n);
		var k = (Math.round(x * e) / e).toString();
		if (k.indexOf('.') == -1) k += '.';
		k += e.toString().substring(1);
		var zahl = k.substring(0, k.indexOf('.') + n+1);
		var z = zahl.split('.');
		if(z[1]) {
			if(z[1] > 5) {
				zahl = Math.round(zahl);
			}
			if(z[1] < 5) {
				zahl = Math.round(zahl)+'.5';
			}
			if(zahl > 5) {
				zahl = 5;
			}
		}
		return zahl;
	});


	var init_resize = (function(el) {
		var imgsize = el.getSize();
		el.setStyle('display','none');
		if(imgsize.x > 600) {
			var imagebox = new Element('div',{'styles':{'padding':'0','width':'582px'}}).inject(el,'after');
			var imagenotice = new Element('div',{'styles':{'background-color':'#FFFACB','padding':'2px','font-size':'11px','color':'#555','font-weight':'normal','border':'1px solid #555'}}).inject(imagebox);
			imagebox.addEvent('mouseover',function(){
				imagenotice.set('styles',{'background-color':'#FFF69D','color':'#222'});
			});
			imagebox.addEvent('mouseout',function(){
				imagenotice.set('styles',{'background-color':'#FFFACB','color':'#555'});
			});
			var imagelink = new Element('a',{'href':el.get('src'),'alt':'','rel':'lightbox'}).inject(imagebox);
			imagenotice.set('html','<img src="./source/tpl/ak.harmony/images/error.gif" style="float:left;margin:0 4px 0 0;" alt="" />Das Bild wurde automatisch verkleinert. Bitte aufs Bild klicken um die volle größe zu sehen. ('+imgsize.x+' x '+imgsize.y+')');
			var clone = el.clone().inject(imagelink);
			clone.setStyle('width','580px');
			clone.setStyle('cursor','pointer');
			clone.setStyle('border','1px solid #555');
			clone.setStyle('border-top','0px');
			clone.setStyle('padding','0');
			clone.setStyle('display','');
			el.dispose();
		} else {
			el.setStyle('display','');
		}
	});

	var init_viewbox = (function(el) {
		var childs = el.getChildren();
		if(el.get('rel') == 'lightbox') {
			el.addEvent('click',function(){
				viewbox(el.get('href'));
				return false;
			});
		}
	});

	var init_slider = (function(el) {
		var cID = el.get('id');
		var outersize = 0;
		var pages = 0;
		var itemsize = 0;
		var page = new Array();
		var nav = new Array();
		var slideto = new Array();
		$$('#slider_inner .info_item img').each(function(ele, i) {
			itemsize = ele.getSize();
			outersize = outersize + itemsize.x;
			ele.setStyle('float','left');
			pages = pages + 1;
			if(i == 0) {
				slideto[i] = 0;
			} else {
				slideto[i] = '-'+(itemsize.x * i);
			}
			nav[i] = new Element('a',{'href':'#','html':(i+1)});
		});
		var caption = new Element('div',{'class':'slider_caption'}).inject('slider');
		$('ajax').set('html',pages);
		$('slider_inner').setStyle('width',outersize+'px');
		el.setStyle('overflow','hidden');
		el.setStyle('width',itemsize.x+'px');
		var margin = 0;
		var i = 0;
		var sliderMorph = new Fx.Morph('slider_inner', {duration: 500, transition: Fx.Transitions.Back.easeIn});
		var slide = (function(){
			i = i + 1;
			if(pages == i) {
				margin = 0;
				i = 0;
			} else {
				margin = margin - 400;
			}
			sliderMorph.start({'margin-left':margin+'px'});
		}).periodical(3000);

		for(p=0;p<pages;p++) {
			nav[p].inject('slider_nav');
			nav[p].addEvent('click',function(){
				sliderMorph.start({'margin-left':slideto[p]+'px'});
				return false;
			});
		}
	});

	var viewbox = (function(el) {
		var preloadimg = new Asset.image(el,{onload: function(){
			$('ajax').set('html','');
			var msgol = new Element('div',{'class':'image_overlay','styles':{'opacity':'0','cursor':'pointer','display':'block','height':getScrollHeight()+'px'}}).inject($('ajax'));
			var ib_container = new Element('div',{'class':'ib_container'}).inject($('ajax'));
			var ib_lefttc = new Element('div',{'class':'ib_lefttc'}).inject(ib_container);
			var ib_righttc = new Element('div',{'class':'ib_righttc'}).inject(ib_lefttc);
			var ib_leftbc = new Element('div',{'class':'ib_leftbc'}).inject(ib_righttc);
			var ib_rightbc = new Element('div',{'class':'ib_rightbc'}).inject(ib_leftbc);
			var ib_topb = new Element('div',{'class':'ib_topb'}).inject(ib_rightbc);
			var ib_leftb = new Element('div',{'class':'ib_leftb'}).inject(ib_rightbc);
			var ib_rightb = new Element('div',{'class':'ib_rightb'}).inject(ib_leftb);
			var ib_bottomb = new Element('div',{'class':'ib_bottomb'}).inject(ib_rightbc);
			var border = new Element('div',{'class':'ib_inner'}).inject(ib_rightb);
			var ib_close = new Element('div',{'class':'ib_close'}).inject(border);
			var cl = new Element('div',{'class':'cl','html':'<span></span>'}).inject(border);
			var ib_loader = new Element('div',{'class':'loader'}).inject(border);
			var viewimage = new Element('img',{'src':el,'alt':''}).inject(ib_loader);
			var imagesize = viewimage.getSize();
			viewimage.setStyle('opacity','0');
			var imgmorph = new Fx.Morph(viewimage,{duration: 500, transition: Fx.Transitions.Expo.easeOut});
			var h = window.getHeight(); 
			var w = window.getScrollWidth();
			var elscroll = $(document.body).getScroll();
			var imgwidth = imagesize.x;
			var imgheight = imagesize.y;
			viewimage.setStyle('width',imagesize.x+'px');
			viewimage.setStyle('height',imagesize.y+'px');
			if(window.getScrollWidth() < imagesize.x && window.getHeight() < (imagesize.y + 70)) {
				var top = elscroll.y;
				var left = elscroll.x;
			} else if(window.getHeight() < (imagesize.y + 70) && window.getScrollWidth() > imagesize.x) {
				var top = elscroll.y;
				var left = (elscroll.x + (w / 2) - (imagesize.x / 2) - 10);
			} else {
				var top = (elscroll.y + (h / 2) - (imagesize.y / 2) - 50);
				var left = (elscroll.x + (w / 2) - (imagesize.x / 2) - 20);
			}
			border.set({'styles':{'overflow':'hidden','width':'0px','height':'0px'}});
			ib_container.set({'styles':{'top':(elscroll.y + h + 10)+'px','left':elscroll.x + (w / 2)+'px'}});
			var closem = new Fx.Morph(ib_close,{duration: 300, transition: Fx.Transitions.Expo.easeOut});
			var cmorph = new Fx.Morph(ib_container,{duration: 800, transition: Fx.Transitions.Expo.easeOut});
			var cwmorph = new Fx.Morph(ib_container,{duration: 800, transition: Fx.Transitions.Expo.easeOut});
			var chmorph = new Fx.Morph(ib_container,{duration: 300, transition: Fx.Transitions.Expo.easeOut});
			var wmorph = new Fx.Morph(border,{duration: 800, transition: Fx.Transitions.Expo.easeOut});
			var hmorph = new Fx.Morph(border,{duration: 300, transition: Fx.Transitions.Expo.easeOut});
			var lwmorph = new Fx.Morph(ib_loader,{duration: 800, transition: Fx.Transitions.Expo.easeOut});
			var lhmorph = new Fx.Morph(ib_loader,{duration: 300, transition: Fx.Transitions.Expo.easeOut});
			var d = (function(){
				imgmorph.start({'opacity':[0,1]});
			}).delay(2000);
			var bdelay = (function(){
				cmorph.start({'left':left+'px','top':top+'px'});
				wmorph.start({'width':[0,(imgwidth)]});
				lwmorph.start({'width':[0,(imgwidth)]});
				cwmorph.start({'width':[40,(imgwidth+40)]});
				hdelay = (function(){ hmorph.start({'height':[0,(imgheight)]});lhmorph.start({'height':[0,(imgheight)]});chmorph.start({'height':[40,(imgheight+70)]}); }).delay(850);
				closedelay = (function(){ hmorph.start({'height':[(imgheight),(imgheight+30)]});chmorph.start({'height':[(imgheight),(imgheight+30)]});closem.start({'height':[0,30]}); }).delay(1200);
			}).delay(310);
			var msgmorph = new Fx.Morph(msgol,{duration: 300, transition: Fx.Transitions.Expo.easeOut});
			msgmorph.start({'opacity':'0.75'});
			ib_close.addEvent('click',function() {
				var elscroll = $(document.body).getScroll();
				hmorph.start({'height':[(imgheight),0]});
				chmorph.start({'height':[(imgheight+40),40]});
				hdelay = (function(){ wmorph.start({'width':[(imgwidth),0]});cwmorph.start({'width':[(imgwidth+40),40]});cmorph.start({'top':(elscroll.y + h + 10)+'px','left':elscroll.x + (w / 2)+'px'}); }).delay(300);
				opdelay = (function(){ hmorph.start({'opacity':'0'}); }).delay(1100);
				mdelay = (function(){ msgmorph.start({'opacity':'0'}); }).delay(1400);
				var ajaxdelay = (function(){ $('ajax').set('html','<span></span>'); preloadimg.dispose(); }).delay(1700);
			});
			msgol.addEvent('click',function() {
				var elscroll = $(document.body).getScroll();
				hmorph.start({'height':[(imgheight),0]});
				chmorph.start({'height':[(imgheight+40),40]});
				var hdelay = (function(){ wmorph.start({'width':[(imgwidth),0]});cwmorph.start({'width':[(imgwidth+40),40]});cmorph.start({'top':(elscroll.y + h + 10)+'px','left':elscroll.x + (w / 2)+'px'}); }).delay(300);
				var opdelay = (function(){ hmorph.start({'opacity':'0'}); }).delay(1100);
				var mdelay = (function(){ msgmorph.start({'opacity':'0'}); }).delay(1400);
				var ajaxdelay = (function(){ $('ajax').set('html','<span></span>'); preloadimg.dispose(); }).delay(1700);
			});
		}});
	});