$(document).ready(function(){

	$("#search_but,#butSX").click(function () {
		$('#search_content').slideToggle('fast', function() {
    	$("#sField").focus();
  	});
		
	});
	
	$('.lightbox').lightbox({
		fitToScreen: true, 
		fileLoadingImage: './files/js/images/loading.gif',
		fileBottomNavCloseImage : './files/js/images/closelabel.gif'
	});
	
	//info-slider sichtbar schalten
	$('.info-slider').css('display','block');		
	
	$('img.captify').captify({
		// all of these options are... optional
		// ---
		// speed of the mouseover effect
		speedOver: 'fast',
		// speed of the mouseout effect
		speedOut: 'normal',
		// how long to delay the hiding of the caption after mouseout (ms)
		hideDelay: 500,	
		// 'fade', 'slide', 'always-on'
		animation: 'slide',		
		// text/html to be placed at the beginning of every caption
		prefix: '',		
		// opacity of the caption on mouse over
		opacity: '0.7',					
		// the name of the CSS class to apply to the caption box
		className: 'caption-bottom',	
		// position of the caption (top or bottom)
		position: 'bottom',
		// caption span % of the image
		spanWidth: '90%'
	});
	
	

});



//Blend-Funktions
//set default values for parameters and starting image
function blendImages(id, speed, pause, caption) {
    if(speed == null) {
        speed = 30;
    }
    if(pause == null) {
        pause = 1500;
    }
    var blend = document.getElementById(id);
    var image = firstChildImage(blend);
    startBlending(image, speed, pause, caption);
}
//find next image
function nextImage(o) {
    do o = o.nextSibling;
    while(o && o.tagName != 'IMG');
    return o;
}
//find first image inside an element
function firstChildImage(o) {   
    o = o.firstChild;
    while(o && o.tagName != 'IMG') {
        o = o.nextSibling;
    }
    return o;
}
//set the opacity of an element to a specified value
function setOpacity(obj, o) {
    obj.style.opacity = (o / 100);
    obj.style.MozOpacity = (o / 100);
    obj.style.KhtmlOpacity = (o / 100);
    obj.style.filter = 'alpha(opacity=' + o + ')';
}
//make image invisible and set next one as current image
function getNextImage(image) {
    if (next = nextImage(image)) {
	image.style.display = 'none';
	image.style.zIndex = 0;
	next.style.display = 'block';
	next.style.zIndex = 100;
    } else {
	//if there is not a next image, get the first image again
	next = firstChildImage(image.parentNode);
    }
    return next;
}

//make image a block-element and set the caption
function startBlending(image, speed, pause, caption) {
    image.style.display = 'block';
    if(caption != null) {
	document.getElementById(caption).innerHTML = image.alt;
    }
    continueFadeImage(image, 0, speed, pause, caption);
}
// ASC: copied from http://www.sean.co.uk/a/webdesign/javascriptdelay.shtm
function pausecomp(millis) {
    var date = new Date();
    var curDate = null;
    do { curDate = new Date(); }
    while(curDate-date < millis);
} 
//set an increased opacity and check if the image is done blending
function continueFadeImage(image, opacity, speed, pause, caption) {
    opacity = opacity + 3;
    if (opacity < 103) {
	setTimeout(function() {fadeImage(image, opacity, speed, pause, caption)}, speed);
    } else {
	//if the image is done, set it to the background and make it transparent
	image.parentNode.style.backgroundImage = "url("+image.src+")";
	// ASC: pause 1sec here to prevent MSIE image flash ...
	var paws=pause-1000;
	if (paws < 0 ) {
		paws = 0;
	}
	pausecomp(1000);
	setOpacity(image,0);
	//get the next image and start blending it again
	image = getNextImage(image);
	setTimeout(function() {startBlending(image, speed, pause, caption)}, paws);		
    }
}
//set the opacity to a new value and continue the fading
function fadeImage(image, opacity, speed, pause, caption) {
    setOpacity(image,opacity);
    continueFadeImage(image, opacity, speed, pause, caption);
}
