//Load when the page is ready - Using jQuery to run events
$(document).ready(function(){
		$(".d_bar_tab").toggle(
		function() { $(".destination_bar").animate( { top:"0px" }, 500); $(".d_bar_tab").attr({src: "/img/layout/d_bar_tab_close.gif"}); },
		function() { $(".destination_bar").animate( { top:"-77px" }, 500); $(".d_bar_tab").attr({src: "/img/layout/d_bar_tab_open.gif"}); }
	);				   
					


//////////////////// accordion jquery plugin ////////////////////////////////////////////////////////////////////////////
// js template1
// home accordion handler
$(".ah").click(function() {
	$(this).parent().parent().find(".ah.open").addClass("closed").removeClass("open");
	$(this).parent().parent().find(".ac.open").addClass("closed").removeClass("open");
	$(this).addClass("open").next().removeClass("closed").addClass("open");
});

// js template2
// content accordion handler
$(".ac_info_head").click(function() {
	$(this).parent().children(".ac_info_cont").toggle();
	$(this).children("a").toggleClass("open");
});
					

				

$.tabs('middle_aktuell');

$.tabs('right_angebot');
$.tabs('right_unterkunft');
$.tabs('right_wetter');

$.tabs('tab-1');
$.tabs('tab-2');
$.tabs('tab-3');
$.tabs('tab-4');
$.tabs('tab-5');
$.tabs('tab-6');
$.tabs('tab-7');

$.preloadCssImages();

}
);



//////////////////// tabs jquery plugin ////////////////////////////////////////////////////////////////////////////
$.tabs = function(containerId, start) {
    var ON_CLASS = 'on';
    var id = '#' + containerId;
    var i = (typeof start == "number") ? start - 1 : 0;
    $(id + '>div:eq(' + i + '):not(.noSelect)').css({display:"block"});
//    $(id + '>ul>li:nth-child(' + (i+1) + ')').addClass(ON_CLASS);
    $(id + '>ul>li:nth-child(' + (i+1) + '):not(.noSelect)').addClass(ON_CLASS);

    $(id + '>ul>li>a').click(function() {
        if (!$(this.parentNode).is('.' + ON_CLASS)) {
            var re = /([_\-\w]+$)/i;
            var target = $('#' + re.exec(this.href)[1]);
            if (target.size() > 0) {
                $(id + '>div:visible').css({display:"none"});
                target.css({display:"block"});
                $(id + '>ul>li').removeClass(ON_CLASS);
                $(this.parentNode).addClass(ON_CLASS);
            } else {
				open(this.href, '_top');
            }
        }
        return false;
    });
};






//////////////////// bild preloader ////////////////////////////////////////////////////////////////////////////

/**
 * jQuery-Plugin "preloadCssImages"
 * by Scott Jehl, scott@filamentgroup.com
 * http://www.filamentgroup.com
 * reference article: http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/
 * demo page: http://www.filamentgroup.com/examples/preloadImages/index_v2.php
 * 
 * Copyright (c) 2008 Filament Group, Inc
 * Dual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.
 *
 * Version: 5.0, 10.31.2008
 * Changelog:
 * 	02.20.2008 initial Version 1.0
 *    06.04.2008 Version 2.0 : removed need for any passed arguments. Images load from any and all directories.
 *    06.21.2008 Version 3.0 : Added options for loading status. Fixed IE abs image path bug (thanks Sam Pohlenz).
 *    07.24.2008 Version 4.0 : Added support for @imported CSS (credit: http://marcarea.com/). Fixed support in Opera as well. 
 *    10.31.2008 Version: 5.0 : Many feature and performance enhancements from trixta
 * --------------------------------------------------------------------
 */

;jQuery.preloadCssImages = function(settings){
	settings = jQuery.extend({
		statusTextEl: null,
		statusBarEl: null,
		errorDelay: 999, // handles 404-Errors in IE
		simultaneousCacheLoading: 2
	}, settings);
	var allImgs = [],
		loaded = 0,
		imgUrls = [],
		thisSheetRules,	
		errorTimer;
	
	function onImgComplete(){
		clearTimeout(errorTimer);
		if (imgUrls && imgUrls.length && imgUrls[loaded]) {
			loaded++;
			if (settings.statusTextEl) {
				var nowloading = (imgUrls[loaded]) ? 
					'Now Loading: <span>' + imgUrls[loaded].split('/')[imgUrls[loaded].split('/').length - 1] : 
					'Loading complete'; // wrong status-text bug fixed
				jQuery(settings.statusTextEl).html('<span class="numLoaded">' + loaded + '</span> of <span class="numTotal">' + imgUrls.length + '</span> loaded (<span class="percentLoaded">' + (loaded / imgUrls.length * 100).toFixed(0) + '%</span>) <span class="currentImg">' + nowloading + '</span></span>');
			}
			if (settings.statusBarEl) {
				var barWidth = jQuery(settings.statusBarEl).width();
				jQuery(settings.statusBarEl).css('background-position', -(barWidth - (barWidth * loaded / imgUrls.length).toFixed(0)) + 'px 50%');
			}
			loadImgs();
		}
	}
	
	function loadImgs(){
		//only load 1 image at the same time / most browsers can only handle 2 http requests, 1 should remain for user-interaction (Ajax, other images, normal page requests...)
		// otherwise set simultaneousCacheLoading to a higher number for simultaneous downloads
		if(imgUrls && imgUrls.length && imgUrls[loaded]){
			var img = new Image(); //new img obj
			img.src = imgUrls[loaded];	//set src either absolute or rel to css dir
			if(!img.complete){
				jQuery(img).bind('error load onreadystatechange', onImgComplete);
			} else {
				onImgComplete();
			}
			errorTimer = setTimeout(onImgComplete, settings.errorDelay); // handles 404-Errors in IE
		}
	}
	
	function parseCSS(sheets, urls) {
		var w3cImport = false,
			imported = [],
			importedSrc = [],
			baseURL;
		var sheetIndex = sheets.length;
		while(sheetIndex--){//loop through each stylesheet
			
			var cssPile = '';//create large string of all css rules in sheet
			
			if(urls && urls[sheetIndex]){
				baseURL = urls[sheetIndex];
			} else {
				var csshref = (sheets[sheetIndex].href) ? sheets[sheetIndex].href : 'window.location.href';
				var baseURLarr = csshref.split('/');//split href at / to make array
				baseURLarr.pop();//remove file path from baseURL array
				baseURL = baseURLarr.join('/');//create base url for the images in this sheet (css file's dir)
				if (baseURL) {
					baseURL += '/'; //tack on a / if needed
				}
			}
			if(sheets[sheetIndex].cssRules || sheets[sheetIndex].rules){
				thisSheetRules = (sheets[sheetIndex].cssRules) ? //->>> http://www.quirksmode.org/dom/w3c_css.html
					sheets[sheetIndex].cssRules : //w3
					sheets[sheetIndex].rules; //ie 
				var ruleIndex = thisSheetRules.length;
				while(ruleIndex--){
					if(thisSheetRules[ruleIndex].style && thisSheetRules[ruleIndex].style.cssText){
						var text = thisSheetRules[ruleIndex].style.cssText;
						if(text.toLowerCase().indexOf('url') != -1){ // only add rules to the string if you can assume, to find an image, speed improvement
							cssPile += text; // thisSheetRules[ruleIndex].style.cssText instead of thisSheetRules[ruleIndex].cssText is a huge speed improvement
						}
					} else if(thisSheetRules[ruleIndex].styleSheet) {
						imported.push(thisSheetRules[ruleIndex].styleSheet);
						w3cImport = true;
					}
					
				}
			}
			//parse cssPile for image urls
			var tmpImage = cssPile.match(/[^\("]+\.(gif|jpg|jpeg|png)/g);//reg ex to get a string of between a "(" and a ".filename" / '"' for opera-bugfix
			if(tmpImage){
				var i = tmpImage.length;
				while(i--){ // handle baseUrl here for multiple stylesheets in different folders bug
					var imgSrc = (tmpImage[i].charAt(0) == '/' || tmpImage[i].match('://')) ? // protocol-bug fixed
						tmpImage[i] : 
						baseURL + tmpImage[i];
					
					if(jQuery.inArray(imgSrc, imgUrls) == -1){
						imgUrls.push(imgSrc);
					}
				}
			}
			
			if(!w3cImport && sheets[sheetIndex].imports && sheets[sheetIndex].imports.length) {
				for(var iImport = 0, importLen = sheets[sheetIndex].imports.length; iImport < importLen; iImport++){
					var iHref = sheets[sheetIndex].imports[iImport].href;
					iHref = iHref.split('/');
					iHref.pop();
					iHref = iHref.join('/');
					if (iHref) {
						iHref += '/'; //tack on a / if needed
					}
					var iSrc = (iHref.charAt(0) == '/' || iHref.match('://')) ? // protocol-bug fixed
						iHref : 
						baseURL + iHref;
					
					importedSrc.push(iSrc);
					imported.push(sheets[sheetIndex].imports[iImport]);
				}
				
				
			}
		}//loop
		if(imported.length){
			parseCSS(imported, importedSrc);
			return false;
		}
		var downloads = settings.simultaneousCacheLoading;
		while( downloads--){
			setTimeout(loadImgs, downloads);
		}
	}
	parseCSS(document.styleSheets);
	return imgUrls;
};


 function openWin (URL,Wid,Hei) {
	aWindow = window.open(URL,"OpenWin",
        'toolbar=no,status=no,scrollbars=yes,resizable=yes,menubar=no,width=' + openWin.arguments[1] +
        ',height=' + openWin.arguments[2]);
}

function openWinToolbar (URL,Wid,Hei) {
     aWindow = window.open(URL,"_blank",
        'toolbar=yes,status=no,scrollbars=yes,resizable=yes,menubar=no,width=' + openWinToolbar.arguments[1] +
        ',height=' + openWinToolbar.arguments[2]);
}

function openWinTravelfrom (URL,Wid,Hei) {
     aWindow = window.open(URL,"OpenWin",
        'toolbar=no,status=no,scrollbars=no,resizable=no,menubar=no,width=300,height=200');
}

function changeImage (imagePath, ImageUrl) {
	document.getElementById('_bigImg').src = imagePath;
}

//////////////////// thickbox - Finder /////////////////////////////////

// Textfeld mit dem Checkbox-Title füllen

function setRegionText() {
	var titleAll="";
	for (var i = 0; i < document.getElementsByName("region").length; i++) {
		
  	if (document.getElementsByName("region")[i].checked) {
			var titleText = document.getElementsByName("region")[i].getAttribute('title');
			if (titleAll == "") {
				titleAll = titleText;
			} else {
				titleAll = titleAll + ", " + titleText;
			}
		}
	}
	
	if (titleAll == "") {
		var titleAll = "Alle";
	}
	$('#regionLink').text(titleAll);
}

// Alle Checkboxen aktivieren
function Aktivieren () {
	for (var i = 0; i < document.getElementsByName("region").length; i++) {
  	document.getElementsByName("region")[i].checked = true;
		$("#selectAll").css('display','none');
		$("#deselectAll").css('display','inline');
	}
}

// Alle Checkboxen deaktivieren
function Deaktivieren () {
	for (var i = 0; i < document.getElementsByName("region").length; i++) {
  	document.getElementsByName("region")[i].checked = false;
		$("#selectAll").css('display','inline');
  	$("#deselectAll").css('display','none');
	}
}