
// init loader
var loader = new Loader();
loader.setScriptPath("/static/source/js/");
loader.addFile("lib/prototype.js");
loader.addFile("src/scriptaculous.js");
loader.addFile("lib/animator.js");
loader.addFile("lib/swfobject.js");
loader.addFile("lib/trimpath-template.js");

loader.addFile("src/effects.js");
loader.addFile("lightbox.js");

loader.addFile("at/held/watchlist/addRemove.js");

loader.addClass("at.elements.calendar.init");

if(language == "de") {
	loader.addClass("at.elements.calendar.de");
}
else {
	loader.addClass("at.elements.calendar.en");
}

//loader.addClass("at.held.bgimages");
loader.addClass("at.held.languageSelection");
loader.addClass("at.held.watchlist.init");
loader.addClass("at.held.animBackground");
loader.addClass("at.held.quicksearch");
loader.addClass("at.held.teaser.verticalSlider");
loader.addClass("at.held.packages");


//loader.addClass("at.sfl.main_navigation.hover");


loader.load();

function onDocumentLoad () {
	
	new at.held.animBackground();
	
	
	// language selection:
	try {
		if($('languageselection') != null) {
			new at.held.languageSelection($('languageselection'), $$("#languageselection .options")[0]);
		}
	}
	catch (e) {}
	
	// watchlist:
	try {
		if($('watchList') != null) {
			new at.held.watchlist.init($('watchList'));
			$('watchList').style.display = 'block';
		}
	}
	catch (e) {}
	
	
	// packages slider
	try {
		var packageItems = $$("#content .packages .package");
		if (packageItems.length > 0) {
			var packages = new at.held.packages(packageItems);
		}
	}
	catch (e) {}
	
	try {
		if( $('quicksearch') != null ) {
			items = $('quicksearch').getElementsByClassName('qs_up');
			new at.held.quicksearch(items, 0, 117);
			
			new at.elements.calendar.init({
				button : 'duration_from',
				output : "input",
				dayInput: 'fromDay',
				monthInput: 'fromMonth',
				yearInput: 'fromYear',
				updateFieldOnStartup : true
			});
			new at.elements.calendar.init({
				button : 'duration_to',
				output : "input",
				dayInput: 'toDay',
				monthInput: 'toMonth',
				yearInput: 'toYear',
				updateFieldOnStartup : false
			});
		}
	}
	catch (e) {}
	
	try {
		if( $('gallery_form') != null ) {
			new at.elements.calendar.init({
				button : 'gf_duration_from',
				output : "input",
				dayInput: 'gf_fromDay',
				monthInput: 'gf_fromMonth',
				yearInput: 'gf_fromYear',
				range: [2009, 2999],
				updateFieldOnStartup : false
			});
			new at.elements.calendar.init({
				button : 'gf_duration_to',
				output : "input",
				dayInput: 'gf_toDay',
				monthInput: 'gf_toMonth',
				yearInput: 'gf_toYear',
				range: [2009, 2999],
				updateFieldOnStartup : false
			});
		}
	}
	catch (e) {}
	
	try {
		if( $('arrivalbox') != null ) {
			new at.elements.calendar.init({
				button : 'calenderClick',
				output : "input",
				dayInput: 'beginDay',
				monthInput: 'beginMonth',
				yearInput: 'beginYear',
				updateFieldOnStartup : true
			});
		}
	}
	catch (e) {}
	
	try {
		if( $('slidingteaser') != null ) {
			items = $('slidingteaser').getElementsByClassName('teaser');
			new at.held.teaser.verticalSlider(items,27);
		}
	}
	catch (e) {}
	
	initLightbox();
}

window.onload = onDocumentLoad;

function gotoLink (htmlElement) {
	
	var destinationURL = "";
	var target = "";
	
	if(htmlElement.href) {
		destinationURL = htmlElement.href;
		target = htmlElement.getAttribute("target");
	}
	else {
		if(htmlElement.childNodes) {
			if(htmlElement.getElementsByTagName("a")) {
				destinationURL = htmlElement.getElementsByTagName("a")[0].href;
				target = htmlElement.getElementsByTagName("a")[0].getAttribute("target");
			}
		}
	}
	
	if(destinationURL.length > 0) {
		if(target == "_blank") {
			window.open(destinationURL);
		}
		else {
			location.href = destinationURL;
		}
	}
	return false;
}



