/*
 *	Banner Views
 */
function ToggleMapEnlarge()
{
	var BannerFx = new Fx.Morph( $('banner'), {'duration': 750, 'link': 'cancel', 'transition': Fx.Transitions.Quart.easeInOut});

	var mapViewHeight;
	var bannerHeight;
	
	if (document.getElementById('mapView').height == 300)
	{
		mapViewHeight = 500;
		bannerHeight = 514;
	}
	else
	{
		mapViewHeight = 300;
		bannerHeight = 314;
	}
	
	BannerFx.start({
		height: bannerHeight
	});
	
	(function() {
		document.getElementById('mapView').height = mapViewHeight;
	}).delay(750);
}

function MapInject(points, town)
{

	var flashVars = Object();
	flashVars.lang = lang;
	flashVars.site = site;
	
	if (points)
	{
		flashVars.points = points;
	}
	if (town) {
		flashVars.town = town;
	}
	
	(function(){
		swfobject.embedSWF("http://visiticeland.com/map/VisitMap.swf", "mapView", "770", "300", "9.0.0", "http://visiticeland.com/map/expressInstall.swf", flashVars, {wmode: 'transparent', AllowScriptAccess: 'always'});
		
		if ($$('#mapView .noflash')[0]) {
			$$('#mapView .noflash')[0].setStyle('display', 'block');
		}
	}).delay(500);
}

function ChangeView( view )
{
	$$('ul.views li').removeClass('selected');
	$$('ul.views li.'+view).addClass('selected');
	
	$$('#banner .view').fade('0');
	
	$$('#banner .view.'+view).fade('in');
}

function $get(key,url){
	if(arguments.length < 2) url =location.href;
	if(arguments.length > 0 && key != ""){
		if(key == "#"){
			var regex = new RegExp("[#]([^$]*)");
		} else if(key == "?"){
			var regex = new RegExp("[?]([^#$]*)");
		} else {
			var regex = new RegExp("[?&]"+key+"=([^&#]*)");
		}
		var results = regex.exec(url);
		return (results == null )? "" : results[1];
	} else {
		url = url.split("?");
		var results = {};
			if(url.length > 1){
				url = url[1].split("#");
				if(url.length > 1) results["hash"] = url[1];
				url[0].split("&").each(function(item,index){
					item = item.split("=");
					results[item[0]] = item[1];
				});
			}
		return results;
	}
}

var videoLib;

window.addEvent('domready', function(){
	
	$$('#banner ul.views').each(function(element){
		var Views = element.getChildren('li');
		
		Views.each(function(view){
			$$('#banner .view').setStyle('opacity','0');
			$$('#banner .view:first-child').setStyle('opacity','1');
			
			view.addEvent('click', function(){
				var selected = this.get('rel');
				var target = $$('#banner .view.'+selected);
				
				Views.removeClass('selected');
				this.addClass('selected');
				
				if ((selected == 'map') && ( target[0].getChildren('object').length == 0))
				{
					MapInject();
				}
				else if ((selected == 'videos') && (videoLib == null))
				{
					videoLib = new VideoLibrary({container: $$('.video-library')[0]});
				}
				else if (document.getElementById('mapView').height == 500)
				{
					ToggleMapEnlarge();
				}
				
				var views = $$('#banner .view');
				views.fade('0');
				
				(function() {
					views.addClass('hidden');
					target.removeClass('hidden');
					var hiddenViews = $$('#banner .view.hidden');
					views.setStyle('z-index', '200');
					hiddenViews.setStyle('z-index', '190');
					target.fade('in');
				}).delay(500);
			});
			
		});
		
		var mapSwfFile = Asset.image('http://visiticeland.com/map/VisitMap.swf');
		
	});
	
	
	/*
	 *	Language Switch
	 */
	
	$$('.head-language').each(function(element){
		var Dropdown = element.getChildren('.dropdown');
		
		
		Dropdown.dispose();
		Dropdown.inject($(document.body));
		
		
		var DropdownEffect = new Fx.Morph( Dropdown[0], { duration: 350, link: 'cancel', transition: Fx.Transitions.Sine.easeInOut } );
		
		Dropdown.setStyles({
			'opacity': 0
		});
		
		$$(element,Dropdown).addEvents({
			'click': function(){
				var pos = element.getPosition();
				var eleSize = element.getSize();
				var dropSize = Dropdown[0].getSize();
				
				DropdownEffect.start({
					opacity: 1
				});
				
				Dropdown.setStyles({
					'top': pos.y+40,
					'left': pos.x-dropSize.x+eleSize.x+5
				});
			},
			'mouseleave': function(){
				
				DropdownEffect.start({
					opacity: 0
				});
				
			}
		});
		
		Dropdown.addEvent('mouseenter', function(){
			DropdownEffect.start({
				opacity: 1
			});
		});
		
		
		
		
	});
	
	/*
	 *	SubNav Dropdown
	 */
	
	$$('#sub-nav > ul > li').each(function(li){
		var sub = [];
		var sub = li.getChildren('ul');
		
		if( sub.length != 0 )
		{
			var sub = sub[0];
			var subSize = sub.getSize();
			var subStartFX = new Fx.Morph(sub, { 'duration': 250, 'link': 'cancel' });
			
			sub.setStyles({
				'position': 'absolute',
				'width': subSize.x,
				'height': 0,
				'opacity': 0
			});
			
			sub.dispose();
			
			
			li.addEvents({
				'mouseenter': function(){
					
					sub.inject( li );
					
					subStartFX.start({
						'height': subSize.y,
						'opacity': 1
					});
					
				},
				'mouseleave': function(){
					
					subStartFX.start({
						'height': 0,
						'opacity': 0
					});
					
				}
			});
		}
		
	});
	
	/*
	 *	Banner Tabs
	 */
	
	$$('#banner ul.tabs').each(function(element){
		var tabs = element.getChildren('li');
		var tabareas = $$('#banner .tab-area');
		
		
		var tabselected = element.getChildren('li.selected')[0];
		
		$$('#banner .tab-area').setStyle('opacity', 0);
		$( tabselected.get('rel') ).setStyle('opacity', 1);
		
		tabs.addEvent('click', function(){
			var self = this;
			tabs.removeClass('selected');
			this.addClass('selected');
			
			tabareas.fade('out');
			(function(){
				$(self.get('rel')).fade('in');
			}).delay(250);
		});
		
	});
	
	
	/*
	 *	Banner Collapse
	 */
	
	if( $('collapse-banner') )
	{
		var banner = $('banner');
		var BannerFx = new Fx.Morph( $('banner'), {'duration': 750, 'link': 'cancel', 'transition': Fx.Transitions.Quart.easeInOut});
		
		$('collapse-banner').addEvent('click', function(){
			
			if( banner.hasClass('false') )
			{
				banner.removeClass('false');
				
				banner.setStyles({
					opacity: 0,
					height: 0,
					'border-width': 0
				});
				
				$('collapse-banner').addClass('closed');
			}
			
			
			if( this.hasClass('closed') )
			{
				BannerFx.start({
					opacity: 1,
					height: 314,
					'border-width': 1
				});
				
				this.removeClass('closed');
			}
			else
			{
				BannerFx.start({
					opacity: 0,
					height: 0,
					'border-width': 0
				});
				
				this.addClass('closed');
			}
			
		});
		
	}
	
	/*
	 *	Faq
	 */
	
	var Faq = new Fx.Accordion($$('.question'), $$('.answer'), {
		duration: 250,
		display: 0,
		alwaysHide: true,
		onActive: function(toggler, element){
			toggler.addClass('selected');
		},
		onBackground: function(toggler, element){
			toggler.removeClass('selected');
		}
	});
	
	
	/*
	 *	Landshluta Kort
	 */
	
	$$('#close-site-map').addEvent('click', function(){
		
		if( Browser.Engine.trident === true )
			$('site-map').setStyle('opacity', 0);
		else
			$('site-map').fade('out');
		
	});
	
	$$('.head-map').addEvent('click', function(){
		
		$('site-map').setStyles({
			'display': 'block',
			'opacity': 0,
			'left': (window.getSize().x/2) - 300
		});
		
		if( Browser.Engine.trident === true )
			$('site-map').setStyle('opacity', 1);
		else
			$('site-map').fade('in');
		
	});
	
});