var onLoadFuncs = new Array();
var verticalPagers = new Array();
function addOnLoad(func) {
	onLoadFuncs.push(func);
}

function init() {
	if(typeof sIFR == "function"){
		//sIFR.replaceElement("h2", named({sFlashSrc: "/media/hdc3/projekte/Pedro/js/sifr/vandenkeere.swf", sColor: "#000", sCase: "upper", sWmode: "transparent"}));
	}
	while(func = onLoadFuncs.pop()) {
		if (typeof func == 'function'){
	    	func();
	    }
	}
	_initVerticalPagers();
}


/**
* simulates target blank in an accessible way
*
* use links: <a href="http://www.triple-i.de" onclick="return TargetBlank(this.href)">Link</a>
*
* @param	string		url
* @return	boolean		always false
*/
function TargetBlank (url) {
	var newwindow	= window.open(url, "newwindow"+Math.random(),"menubar=yes,location=yes,status=yes,scrollbars=yes,toolbar=yes,resizable=yes");
	newwindow.focus();
	return false;
}

/* Music Carousel */
function initCarousel_html_carousel_music() {
	carousel = new Carousel('music-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandler,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 1,
						scrollInc: 1
					})
};


function initCarousel_Festival() {
	carousel = new Carousel('festival-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandler,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 1,
						scrollInc: 1
					})
};

function initCarousel_workshops() {
	carouselGigs = new Carousel('gigs-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandlerGigs,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 1,
						scrollInc: 1
					});
	carouselWorkshops = new Carousel('workshop-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandlerWorkshop,
						nextElementID:'workshop-next-arrow',
						prevElementID:'workshop-prev-arrow',
						numVisible: 1,
						scrollInc: 1
					});
};
function initCarousel_bio() {
	carousel = new Carousel('bio-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandler,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 1,
						scrollInc: 1
					});
};
function initCarousel_image() {
	carousel = new Carousel('image-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandler,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 5,
						scrollInc: 5
					});
};
function initCarousel_video() {
	carousel = new Carousel('video-carousel', {
						animHandler:animHandler,
						animParameters:{duration:0.5},
						buttonStateHandler:buttonStateHandler,
						nextElementID:'next-arrow',
						prevElementID:'prev-arrow',
						numVisible: 1,
						scrollInc: 1
					});
}
function initPager_gallery() {
	initVerticalPager('gallery-pager');
};
function initPager_gallery_images() {
	initVerticalPager('gallery_images');
};
function initVerticalPager(id) {
	verticalPagers.push(id);
};
function _initVerticalPagers() {
	while(id = verticalPagers.pop()) {
		pager = new VerticalPager(id, {
							animParameters:{duration:0.5},
							buttonStateHandler:pagerButtonStateHandler,
							nextElementID:id+'-pager-next',
							prevElementID:id+'-pager-prev'
						});
	}
}
function initPager(id) {
	pager = new VerticalPager(id, {
						animParameters:{duration:0.5},
						buttonStateHandler:pagerButtonStateHandler,
						nextElementID:id+'-pager-next',
						prevElementID:id+'-pager-prev'
					});
};
function pagerButtonStateHandler(button, enabled) {
   	$(button).style.visibility = enabled ? "" : "hidden"
}

function buttonStateHandler(button, enabled) {
	if (button == "prev-arrow")
   		$('prev-arrow').style.visibility = enabled ? "" : "hidden"
 	else
   		$('next-arrow').style.visibility = enabled ? "" : "hidden"
}


function animHandler(carouselID, status, direction) {
	// Disable Fading

	var region = $(carouselID).down(".carousel-clip-region")
	if (status == "before") {
		Effect.Fade(region, {to: 0.3, queue: { position:'end', scope: "carousel" }, duration: 0.2})
	}
	if (status == "after") {
		Effect.Fade(region, {to: 1, queue: { position:'end', scope: "carousel" }, duration: 0.2})
	}
}


function buttonStateHandlerWorkshop(button, enabled) {
	if (button == "workshop-prev-arrow")
   		$('workshop-prev-arrow').style.visibility = enabled ? "" : "hidden";
 	else
   		$('workshop-next-arrow').style.visibility = enabled ? "" : "hidden";
}
function buttonStateHandlerGigs(button, enabled) {
	if (button == "prev-arrow")
   		$('prev-arrow').style.visibility = enabled ? "" : "hidden";
 	else
   		$('next-arrow').style.visibility = enabled ? "" : "hidden";
}
function toggleSubMenu(Id) {
	submenu = $(Id);
	if(typeof(submenu) != "undefined") {
		if(submenu.style.visibility == "hidden") {
			// Turn of all menus
			if($('subteaching') != null)	$('subteaching').style.visibility = "hidden";
			if($('subcorporate') != null) $('subcorporate').style.visibility = "hidden";

			if($('subfestival') != null) $('subfestival').style.visibility = "hidden";
			if($('subbiography') != null) $('subbiography').style.visibility = "hidden";
			submenu.style.visibility = "";
		} else {
			submenu.style.visibility = "hidden";
		}
	}
}

