var logStatus = function(mesg){
	$('#status').html($('#status').html()+"<br />"+mesg);
};


$.fn.fetchdSrc = new Array();

$.fn.fetchSrc = function(callBack){
	var imgc = $.fn.fetchdSrc.length;
	//alert(imgc);
	this.each(function(){
		var thisSrc = $(this).attr('src');
		var thisId = $(this).attr('id');
		logStatus("Fetch: "+ thisSrc +" with id "+ thisId +" fetched img tag... ");
		if(thisId == 'stream'){
			
			}
		else{
			///alert($.fn.fetchdSrc.join("\n"));
			if($.fn.fetchdSrc.join("|").indexOf("|"+thisSrc+"|") == -1){
				$.fn.fetchdSrc[imgc] = thisSrc;
				$('<img/>')[0].src = thisSrc;
				logStatus("Load: "+ thisSrc +" loaded. ");
				imgc++;
				}
			else{
				logStatus("was loaded already..  "+ $.fn.fetchdSrc.join("|").indexOf("|"+thisSrc+"|"));
				}
			}
		});
	if(callBack){
			callBack();
		}
}

$.fn.preloadImages = function() {
	this.each(function(){
		$('<img/>')[0].src = this;
		logStatus("Load: "+ this +" loaded. ");
	});
}


$.fn.ImagePreloader = function(callBack){
		var preloaderDiv = this;
		$('img').css("display", "none");
		preloaderDiv.fadeIn(50, function(){
			logStatus("ImagePreloader: fadeIn");
			$('img').fetchSrc(function(){
			//	refs.preloadImages();
				preloaderDiv.fadeOut(500, function(){
					$('img').fadeIn(1000, function(){
						logStatus("ImagePreloader: fadeIn: "+ $(this).attr('src') +" faded In... ");
						});								
					if(callBack){
						callBack();
						}
					});
				});
				
			});
			
		//	$(hrefs).preloadImages();

	}

$.fn.fillContent = function(ajaxReqPath, callBack){
	var contentDiv = this;
	$.get(ajaxReqPath, {}, function(data){
		contentDiv.html(data);
		
	//	alert(contentDiv);
		logStatus("fillContent: GET: loaded "+ ajaxReqPath);
		if(callBack){
			callBack();
			}
		});
	}

$(function(){
	
	var headerState = true;
	var menuCachePath = false;
	var contentCachePath = false;
	
	$("a.headereffekt").mouseenter(function(){
		src = $("img.headereffekt2").attr('src');
		if(src == 'img/index/header1.png'){
			headerState = false;
			logStatus("Changing Header to KW");
			$("img.headereffekt2").fadeOut(500, function () {
				$(this).attr({
					src: "http://www.himmel.at/new/index.php/img/index/header2.png"
				}).fadeIn(500);
			});
		}
	});
	$("a.headereffekt3").mouseenter(function(){
		src = $("img.headereffekt2").attr('src');
		if(src == 'img/index/header2.png'){
			headerState = true;
			logStatus("Changing Header to Am Himmel");
			$("img.headereffekt2").fadeOut(500, function () {
				$(this).attr({
					src: "http://www.himmel.at/new/index.php/img/index/header1.png"
				}).fadeIn(500);
			});
		}
	});

	$("a.nav").click(function(eve){
		eve.preventDefault();
		
		/*alert($(this).attr('href'));*/
		logStatus("<b>Click: "+$(this).attr("href")+"</b>");
		var re = /(.*\/)$/;
		var href = $(this).attr('href');
		var ajaxReqPath = href.replace(/(index\.php\/)/, 'index.php/ajax/');
		var menuReqPath = ajaxReqPath.replace(/(.*)\/(.*)$/, '$1/Menu');
		var startReqPath = ajaxReqPath.replace(/(.*)\/(.*)$/, '$1/Start');
		var isStart = re.test(ajaxReqPath);
		if(isStart == true){
			if(menuCachePath != menuReqPath){
				$("#contentli").fillContent(menuReqPath, function(){
					menuCachePath = menuReqPath;
					});
				}
			$("#contentre").fillContent(startReqPath, function(){
				});
			}
		else{
			if(menuCachePath != menuReqPath){
				$("#contentli").fillContent(menuReqPath, function(){
					menuCachePath = menuReqPath;
					});
				}
			$("#contentre").fillContent(ajaxReqPath, function(){

				});
			}

		//$("#preloader").ImagePreloader();
		});

});

$(document).ready(function(){
	$("#webcam").fancybox({
				'width'				: '75%',
				'height'			: '75%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe'
			});
	$("#webcam2").fancybox({
				'width'				: '75%',
				'height'			: '75%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe'
			});

	/*$("#contentli").hide();
	$("#contentre").hide();*/
	/*$("#preloader").ImagePreloader();*/
	});
