(function($) {

	/*////////////////////////////////////////////////////////////////////////
	* AUDIO / VIDEO tabs
	////////////////////////////////////////////////////////////////////////*/



$(function () {
    var tabContainers = $('div.tabs > div');
    
    $('div.tabs ul.tabNavigation a').click(function () {
        tabContainers.hide().filter(this.hash).show();
        $('div.tabs ul.tabNavigation a').removeClass('selected');
        $(this).addClass('selected');
        return false;
    }).filter(':first').click();
});


	/*////////////////////////////////////////////////////////////////////////
	* FULL SCREEN BACKGROUND IMAGE
	////////////////////////////////////////////////////////////////////////*/
	/*
	$.fn.supersized.options = {  
		startwidth: 640,  
		startheight: 480,
		vertical_center: 1,
		slideshow: 1,
		navigation: 0,
		transition: 1, //0-None, 1-Fade, 2-slide top, 3-slide right, 4-slide bottom, 5-slide left
		pause_hover: 0,
		slide_counter: 1,
		slide_captions: 1,
		slide_interval: 3000  
	};
	$('#supersize').supersized(); 
*/
	//$("#subnav:first").css("padding-left", $("#nav li a.active").attr("offsetLeft") + 18);
	
	
	/*////////////////////////////////////////////////////////////////////////
	* HOMEPAGE SLIDESHOW
	////////////////////////////////////////////////////////////////////////*/
	
    $.fn.wait = function(option, options) {
        milli = 1000; 
        if (option && (typeof option == 'function' || isNaN(option)) ) { 
            options = option;
        } else if (option) { 
            milli = option;
        }
        // set defaults
        var defaults = {
            msec: milli,
            onEnd: options
        },
        settings = $.extend({},defaults, options);

        if(typeof settings.onEnd == 'function') {
            this.each(function() {
                setTimeout(settings.onEnd, settings.msec);
            });
            return this;
        } else {
            return this.queue('fx',
            function() {
                var self = this;
                setTimeout(function() { $.dequeue(self); },settings.msec);
            });
        }

    }
	
	var slideshows;
	
	$.fn.slideshow = function (options) 
	{

		var opts = $.extend({}, $.fn.slideshow.defaults, options);
		
		slideshows = {};
		slideshows.divs = [];
		
		return this.each(function () 
		{
			var me = $(this);
			
			// scan ul for info
			var slides = $("li", me);
			me.hide();
						
			if (slides.size()>0) 
			{
				var div = $('<div></div>').insertBefore(me);
				div.css('width', opts.width).css('height', opts.height).css('overflow', 'hidden').css('background-color', '#000000');
						
				slideshows.divs.push(div);
				
				var index=0;
				
				slides.each(function () 
				{								
					var that = $(this);
					
					var slideImage = $('img', that).attr('src');
					var slideTextArgs = $('h2', that).html().split("|");
					var href = $('a', that);
					
					var slide = $('<div></div>').appendTo(div);
					slide.data('data', {slideImage: slideImage, hasMouse: false})
					slide.addClass('slideshow');
					slide.attr('id', 'slideshow-'+index);
					slide.css('width', opts.width - (2 * opts.padding));
					slide.css('height', opts.height - (2 * opts.padding));
					slide.css('padding', opts.padding);
					slide.css('background-image', 'url(' + slideImage + ')');
				
					slide.bind('mouseover', function () 
					{ 
						// bewaren background image
						$(this).css('background-image', 'none');
						$(this).queue("fx", []);
						$(this).stop();
					});
					slide.bind('mouseout', function () 
					{
						var data = $(this).data('data');
						$(this).css('background-image', 'url(' + data.slideImage + ')');
						$(this).fadeIn(750);
						$(this).wait(5000);
						$(this).fadeOut(500, obj.next);
					});
				
					if (href.size() > 0)
					{
						var a = $('<a></a>');
						a.attr('href', href.eq(0).attr('href'));
						slide.wrap(a);
					}
					
					//var date = $('<p></p>').appendTo(slide);
					//date.addClass('slideshowDate');
					//date.text(slideTextArgs[0].toUpperCase());
					
					var title = $('<p></p>').appendTo(slide);
					title.addClass('slideshowTitle');
					var bandName = slideTextArgs[1];
					bandName = bandName.split("\n").join("<br />");
					title.html(bandName.toUpperCase());
					
					slide.hide();
										
					index++;
				});

				if (slides.size() > 1) {
					var obj = {};
					obj.me = div;
					obj.count = 0;
					obj.func = function () {
						var el = $("div", this.me).eq(this.count);
						if (el.size()==0) {
							this.count=0;
							el = $("div", this.me).eq(this.count);
						}
						el.fadeIn(750);
						el.wait(4000);
						el.fadeOut(500, obj.next);
						this.count++;
					}
					obj.next = function () {
						//var el = $("div", this.me).eq(this.count);
						//var data = el.data('data');
						//if ( ! data.hasMouse)
						//{
							obj.func();
						//} else {
						//	setTimeout(obj.next, 1000);
						//}
					}
					obj.func();
				} else {
					var el = $("div", div).eq(0);
					el.fadeIn(750);
				}

			}
			
			Cufon.refresh();
		});	
	}
	
	$.fn.slideshow.defaults = {
		width: 570,
		height: 270,
		datesize: 50,
		namesize: 60,
		padding: 6
	}
	
	$.fn.extend({
		langify: function() 
		{
			
			return this.each(function() 
			{
				
				var obj = $(this);
				
				var headings = $('h2[type=lang]', obj);
				var tabContent = headings.next();
				
				headings.hide();
				tabContent.hide();
				tabContent.eq(0).show();
				
				tabContent.css('clear', 'both');
				
				obj.prepend('<ul class="langtabs"></ul><br style="clear:both;" />');
				
				headings.each(function()
				{
					var label = $(this).text();
					$("ul.langtabs", obj).append("<li>" + label + "</li>");
				});
				var tabs = $("ul.langtabs li", obj);
				
				tabs.eq(0).addClass("sel");
				
				var tabs = $("ul.langtabs li", obj);
				tabs.click(function() 
				{
					tabs.removeClass("sel");
					tabContent.hide();
					$(this).addClass("sel");
					
					var current = tabs.index($(this));
					tabContent.eq(current).show();
				});
			});
		}
	});
}
)(jQuery);

$(function() {
	$('#newsletterform').submit(function() {
		$('label').labelOver('over');
		return false;
	})
	$('label.pre').labelOver('over');
})



function initEventImagesSlideshow()
{
  var currentPosition = 0;
  var slideWidth = 520;
  var numberOfSlides = $(".slide").size();
 
  if (numberOfSlides>1)
  {
	  var slides = $('.slide');
	  
	  // Remove scrollbar in JS
	  $('#slideshowContainer').css('overflow', 'hidden');
	
	  // Wrap all .slides with #slideInner div
	  slides
		.wrapAll('<div id="slideInner"></div>')
		// Float left to display horizontally, readjust .slides width
		.css({
		  'float' : 'left',
		  'width' : slideWidth
		});
	
	  // Set #slideInner width equal to total width of all slides
	  $('#slideInner').css('width', slideWidth * numberOfSlides);
	
	  // Insert controls in the DOM
	 // $('#slideshow')
		//.prepend('<span class="control" id="leftControl">Clicking moves left</span>')
		//.append('<span class="control" id="rightControl">Clicking moves right</span>');
	
	  // Hide left arrow control on first load
	  manageControls(currentPosition);
	
	  // Create event listeners for .controls clicks
	  $('.control')
		.bind('click', function(){
		// Determine new position
		currentPosition = ($(this).attr('id')=='rightControl') ? currentPosition+1 : currentPosition-1;
		
		// Hide / show controls
		manageControls(currentPosition);
		// Move slideInner using margin-left
		$('#slideInner').animate({
		  'marginLeft' : slideWidth*(-currentPosition)
		});
	  });
	
	  $('.control')
		.bind('mouseover',function(){
			var img = $("img", $(this));
			var imgname = img.attr('src');
			imgname = imgname.replace('_f.gif', '_o.gif');
			img.attr('src', imgname);
		})
		.bind('mouseout',function(){
			var img = $("img", $(this));
			var imgname = img.attr('src');
			imgname = imgname.replace('_o.gif', '_f.gif');
			img.attr('src', imgname);
		});
  
  }
  // manageControls: Hides and Shows controls depending on currentPosition
  function manageControls(position){
	// Hide left arrow if position is first slide
	if(position==0){ $('#leftControl').hide() } else{ $('#leftControl').show() }
	// Hide right arrow if position is last slide
	if(position==numberOfSlides-1){ $('#rightControl').hide() } else{ $('#rightControl').show() }
  }
}

/*////////////////////////////////////////////////////////////////////////
* EVENT CALENDAR DAY TOOLTIPS
////////////////////////////////////////////////////////////////////////*/
function showEventsTooltip(id, events)
{
	// aanmaken html
	var day = $('#'+id);
	var content = $("#content");
	
	var tt = $('<div class="tooltip-wrapper" id="tooltip-' + id + '"><ul class="tooltip"></ul></div>');
	var ttul = $('ul', tt);

	for (var i=0, ilen=events.length; i<ilen; i++)
	{
		$('<li>' + events[i] + '</li>').appendTo(ttul);
	}
	
	var caldiv = $("#calendar");
	
	// toevoegen aan content div
	content.append(tt);

	
	/*******************************************************************************************
	** Nieuw test-script -> bereken positie td op basis van hoogtes & breedtes andere cellen  **
	*******************************************************************************************/
	
	var row = day.parents('tr');
	var table = row.parents('table');
	
	var theight = 0, twidth = 0;
	var index = $('td', row).index(day);
	var h,w;
	var msg = '';
	$('td', row).each(function (n)
	{
		w = $(this).css('width');
		if (n<=index) 
		{
			w = $(this).css('width');
			twidth += Math.round(Number(w.substr(0, (w.length-2)))) + 20; // 20 = 2 x padding 10px;
			
			if ($.browser.msie) {
				twidth = $(this).attr('offsetLeft') + 26;
			}
		}
	});
	index = $('tr', table).index(row);
	$('tr', table).each(function (n)
	{
		if (n<=index) {
			h = $(this).css('height');
			theight += Number(h.substr(0, (h.length-2)));
			
			if ($.browser.msie) {
				theight = $(this).attr('offsetTop') + 36;
			}
		}
	});
	
	// positioneren
	tt.css('position', 'absolute');
	tt.css('z-index', '999999');	
	tt.css('left', twidth + 5);
	tt.css('top',theight);
	
	tt.css('display', 'none');
	
	// tonen
	tt.fadeIn(500);	
}

function removeEventsTooltip(id)
{
	$('#tooltip-'+id).fadeOut(350, function () { $('#tooltip-'+id).remove(); });
}

/*////////////////////////////////////////////////////////////////////////
* EVENT BIO - inkorten tekst + overlay voor full text
////////////////////////////////////////////////////////////////////////*/
function initEventBio()
{
	var extensions = ['-nl', '-fr'];
	var maxchars = 250;
		
	for (var i=0, ilen = extensions.length; i<ilen; i++) 
	{
		
		if ($("#bio-more" + extensions[i]).size() > 0)
		{
			var p = $("#bio-more" + extensions[i]);
	
			//if (console) console.log(p);
			
			if (p.text().length >= maxchars)
			{
				var maxtext = p.text().substr(0, maxchars);
				
				// inkorten tekst
				//		zoeken naar laatste punt binnen de maxchars (eind zin)
				var lastpoint = maxtext.lastIndexOf(".");
				var croppedtext = maxtext.substr(0, (lastpoint+1));
	
				// toevoegen link naar overlay (indien nodig)
				if (extensions[i].indexOf('nl') >= 0)
				{
					croppedtext += '<br /><strong><a href="#">Lees meer</a></strong>';
				} 
				else if (extensions[i].indexOf('fr') >= 0) 
				{
					croppedtext += '<br /><strong><a href="#">Lisez plus</a></strong>';;
				}
		
				p.html(croppedtext);
				
				$("a", p).bind('click', { ext: extensions[i] }, function(e) { 
						e.preventDefault();
						var top, height, screenheight;
						if ($.browser.msie) {
							screenheight = document.documentElement.clientHeight;
						} else {
							screenheight = $(window).height();
						}
						top = Math.round(0.05*screenheight);
						height = Math.round(0.85*screenheight);
						
						$.blockUI({message: $("#bio-overlay" + e.data.ext).html(), css: { padding: '20px', fontSize: '1.2em', border: '0', left: '50%', margin:'0 0 0 -220px', top: top+'px', width:'440px', opacity: '1', lineHeight: '1.2em', height:height+'px', overflow: 'auto' }});
						$('.blockUI').click($.unblockUI);
					});
			}
		}
	}
	
}

function preventEventCalendarDayClick() 
{
	$("td[id^='day'] a").bind('click', function (e) { e.preventDefault(); e.stopPropagation(); });
}




$(document).ready(function () 
{
	$("ul.slideshow").slideshow();
	//$('label').labelOver('over');
	//$("#subnav:first").css("padding-left", $("#nav li a.active").attr("offsetLeft"));
	//preventEventCalendarDayClick() 
	if (isAdmin)
	{
		//alert('active sub: ' + $("#nav li a.active").attr("offsetLeft"));
		//alert($.browser.msie);
	}
	
	if ($.browser.msie) {
		//$("#subnav:first").css("left", $("#nav li a.active").attr("offsetLeft"));
	} else {
		$("#subnav:first").css("padding-left", $("#nav li a.active").attr("offsetLeft"));
		//alert($("#nav li a.active").attr("offsetLeft"));
		//66, 117, 181, 427, 503
	
	}





$('.search-header').each(function() {
    var default_value = this.value;
    $(this).focus(function() {
        if(this.value == default_value) {
            this.value = '';
        }
    });
    $(this).blur(function() {
        if(this.value == '') {
            this.value = default_value;
        }
    });
});


	
	$("#page").langify();




    $('input[type="text"]').addClass("idleField");
	$('input[type="text"]').focus(function() {
	
	
		$(this).removeClass("idleField").addClass("focusField");
        if (this.value == this.defaultValue){
        	this.value = '';
    	}
        if(this.value != this.defaultValue){
	    	this.select();
        }
    });
    $('input[type="text"]').blur(function() {
    	$(this).removeClass("focusField").addClass("idleField");

        if ($.trim(this.value == '')){

        	this.value = (this.defaultValue ? this.defaultValue : '');
    	}
    });

});




