// JavaScript Document
var headers = function(){
	var totaal = $('#header_foto img').length;
	if( totaal > 1 ){
		var current = parseInt($('#header_foto .active').attr('id').replace('header-',''));
		var newcurrent = (current == totaal) ? 1 : current+1;
		
		$('#header-'+newcurrent).addClass('active').fadeIn(2000);
		$('#header-'+current).removeClass('active').fadeOut(2000);
	}
}

$(document).ready(function(){
	
	// MAIN
	var cal = new Calendar();
	
	var xajaxRequestUri="/xajax.php";
	var xajaxDebug=false;
	var xajaxStatusMessages=false;
	var xajaxWaitCursor=true;
	var xajaxDefinedGet=0;
	var xajaxDefinedPost=1;
	var xajaxLoaded=false;
	
	function xajax_showCalendar(){return xajax.call("showCalendar", arguments, 1);}
	function xajax_navigateCalendar(){return xajax.call("navigateCalendar", arguments, 1);}
	
	var kjblaat = $('a[name=top]').attr('rel');	
			   	
	// HOME
	var requiredMajorVersion = 9;
	var requiredMinorVersion = 0;
	var requiredRevision = 0;
	
	var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
	if(!hasRightVersion) {
		if (confirm('Deze website vereist de nieuwste versie van Adobe Flash, klik op OK om deze te downloaden')) {
			location = 'http://www.macromedia.com/go/getflash/';
		}
	}
	
	$('#header_foto img:last').addClass('active').css({'display':'block'});
	
	setInterval('headers()',4000);
	
	
	
	// LANDEN & NIEUWS & CRUISES
	var url = $('#fotoboek a').attr('href');
	$('#fotoboek').flash({
		src: '/images/flash/fotoalbum/fotoalbum.swf',
		width: 550,
		height: 220, 
		wmode: 'transparent',
		flashvars: { 
			xmldata: url 
		}
	},{ 
		version: 9 
	});

	$("div#flash_kaart_header").click(function() {
		$('div#flash_kaart').hide('slow');
	});

	$('a#vergroot').click(function(){
		if( $('div#flash_kaart_content').html() == '' ){
			$('div#flash_kaart_content').flash({
				src: $(this).attr('href'),
				width: 800,
				height: 514, 
				wmode: 'transparent'
			},{ 
				version: 9 
			});
		}
		
		$('div#flash_kaart').show('slow');

		return false;
	});

	// fix png transparantie
	$.pngfix('/images/common/pixel.gif');
	$('img[@src$=.png], #steunt, #vergroot').pngfix();
	
	$('.bestemming a img').hover(function(){
		src = $(this).pngunfix().attr('src');
		path = src.substr(0,src.indexOf('_'));
		$(this).attr('src',path+'_hover.png').pngfix();;
	},function(){
		$(this).pngunfix().attr('src',src).pngfix();
	});
	
	$('#content_rechts .content p').each(function(){
		if( $(this).html() == '' ||  $(this).html() == '&nbsp;'){
			$(this).remove();	
		}
	});
	

	$('a#do_nothing').click(function(){
		return false;
	});

	$("#menu UL > LI IMG").mouseover(function() {
		$(this).fadeTo("slow", 0.6);
	});

	$("#menu UL > LI IMG").mouseout(function() {
		$(this).fadeTo("slow", 1);
	});
						   
	$("#menu UL > LI:has('UL')").mouseover(function(){
		//$('li#best_sub>a').addClass('active');
		$('#menu UL > LI UL').show();
	});
	
	$("#menu UL > LI:has('UL')").mouseout(function(){
		//$('li#best_sub>a').removeClass('active');
		$('#menu UL > LI UL').hide();
	});

	$("img#select").toggle(function(){
		 $("div#select_box").slideDown('slow');
	},function(){
		 $("div#select_box").slideUp('slow');
	});
	
	$("div#select_bestemming").toggle(function(){
		 $("div#select_box").slideDown('slow');
	},function(){
		 $("div#select_box").slideUp('slow');
	});
	
	$("img#select2").toggle(function(){
		 $("div#select_box2").slideDown('slow');
	},function(){
		 $("div#select_box2").slideUp('slow');
	});
	
	$("div#select_bestemming2").toggle(function(){
		 $("div#select_box2").slideDown('slow');
	},function(){
		 $("div#select_box2").slideUp('slow');
	});
	
	$("div#select_box2 ul li ul li").click(function() {
		 $("div#select_bestemming2").html(this.innerHTML);					
		 $("input#land").attr('value', this.innerHTML);					
		 $("div#select_box2").slideUp('slow');
	});
	
	$("img#sort").toggle(function(){
		 $("div#sort_box").slideDown('slow');
	},function(){
		 $("div#sort_box").slideUp('slow');
	});
	
	var printknop = $('#print_knop').parent().attr('href');
	
	$("a#a_alg_info").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#alg_info").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_alg_info").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$("a#a_pr_info").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#pr_info").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_alg_info").css('background','#3366FF');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_pr_info").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$("a#a_klimaat").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#klimaat").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_klimaat").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});

	$("a#a_sug_reizen").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#sug_reizen").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_sug_reizen").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$("a#a_steden").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#steden").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_steden").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$("a#a_cultuur").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#cultuur").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_cultuur").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$("a#a_natuur").click(function() {
		$("div.info").each(function(i){
			$(this).css('display','none');
		});
		$("div#natuur").css('display','block');
		$("a.a").each(function(i){
			$(this).css('background','transparent');
		});
		$("a#a_natuur").css('background','url(/images/common/active_'+kjblaat+'.gif) no-repeat');
		
		$('#print_knop').parent().attr('href', printknop+'&s='+$(this).attr('id'));
		
		return false;
	});
	
	$('.landkaart').click(function(){
		$(this).find('a').click();
	});
	
	var bgcolor = $("div#site").css('background-color');
	if(bgcolor.indexOf("#") != 0){
		bgcolor = bgcolor.replace("rgb(","").replace(")","");
		var temp = new Array();
		temp = bgcolor.split(', ');	
		bgcolor = '#' + rgbtohex(temp[0],temp[1],temp[2]);
	}
	

	var vars = new Array();
//	vars[0] = new Array('a', 'QTekst', 'goudy_old_style_bold.ttf', '#FFFFFF', '#353231', '9', false);
	vars[0] = new Array('h1', 'QTekst', 'goudy_old_style_bold.ttf', '#333333', bgcolor, '18', false);
	vars[1] = new Array('h1', 'QReplace', 'goudy_old_style_bold.ttf', '#FFFFFF', bgcolor, '18', false);
	vars[2] = new Array('span', 'kaart', 'goudy_old_style_bold.ttf', '#FFFFFF', bgcolor, '13', false);
	QTekst(vars);
	
	$('.content .info img').each(function(){
		if( $(this).height() > $(this).width() ){
			$(this).css('width','auto').css('height','320px');
		}
		
	});
	
	$('a[rel=extern]').attr('target','_blank');
	
	var GACode = $('meta[name=analytics]').attr('content');

	$.gaTracker(GACode, {
		external:	'/external/',
		mailto:		'/mailto/',
		download:	'/downloads/',
		extensions:	[
			'pdf','doc','xls','csv','jpg','gif', 'mp3',
			'swf','txt','ppt','zip','gz','dmg','xml'		
		]
	});
	
	if($.browser.msie && /MSIE\s(5\.5|6\.)/.test(navigator.userAgent)){
		DD_belatedPNG.fix('#menu, #menu ul, #menu a, #menu a:hover');
	}
	
	
	
});

function rgbtohex(num1, num2, num3) {
	return calc10to16(num1) + calc10to16(num2) + calc10to16(num3);
}

function calc10to16(num) {
	if (num < 16) {
		var thenum = replacevalsreverse(num);
		return thenum;
	}
	else {
		var themod=num % 16;
		var thenum=((num-themod) / 16);
		thenum = replacevalsreverse(thenum);
		themod = replacevalsreverse(themod);
		return ""+thenum+themod;
	}
}

function replacevalsreverse(thenum) {
	if (thenum == 10) { thenum = "a"; }
	if (thenum == 11) { thenum = "b"; }
	if (thenum == 12) { thenum = "c"; }
	if (thenum == 13) { thenum = "d"; }
	if (thenum == 14) { thenum = "e"; }
	if (thenum == 15) { thenum = "f"; }
	
	return thenum;
}

function tab_set(tab, classname, div, callback) {
		// sluit de huidige content
		tab_close_content(classname);
		// zet alle tabs op de juiste klasse
		tab_set_normal(classname);
		// zet de juiste tab op de active klasse
		tab.className = classname+'_tab_active';
		// zet de juiste content open
		document.getElementById(div).style.display = 'block';
		// Voer de gewenste callback functie uit.
		if (callback > '') {
			setTimeout(callback, 1);
		}
}

function tab_close_content(classname) {
	var objs = getElementsByClassName(classname+'_content');
	for (var i=0;i<objs.length;i++) {
		objs[i].style.display = 'none';
	}
}

function tab_set_normal(classname) {
	var objs = getElementsByClassName(classname+'_tab_active');
	for (var i=0;i<objs.length;i++) {
		objs[i].className = classname+'_tab';
	}
}
	

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


var curr = 1;

function openWin(url, wi, he) {
  var win = window.open(url,'popup_win','width='+wi+',height='+he+',resizable=yes,status=no,toolbar=no,menubar=no, scrollbars=yes');
 
  var b = screen.width;
  var h = screen.height;
 
  b = (b - wi) / 2;
  h = (h - he) / 2;
 
  win.moveTo(b,h);
  
  return false;
}

function set_class(obj, naam) {
  obj.className = naam;
}



var hovers = [[ [], [] ],[ [], [] ]] , images = [];

function loadHovers (tag) {
  tag_text = (tag == 0)?'img':'input';

  images[tag] = document.getElementsByTagName ( tag_text );
  
  for ( var i = 0; i < images[tag].length; i ++ ) {

    if ( images[tag].item(i).getAttribute ( 'src' ) && images[tag].item(i).getAttribute ( 'hover' ) ) {
         
      // preload it
    
      ( hovers[tag][0][i] = new Image () ).src=images[tag].item(i).getAttribute('src');
      ( hovers[tag][1][i] = new Image () ).src=images[tag].item(i).getAttribute('hover');
         
      if ( images[tag].item(i).attachEvent ) {
 
        images[tag].item(i).attachEvent ( 'onmouseover', new Function ( "hover(" + i + ", true, '"+tag+"');" ) );
        images[tag].item(i).attachEvent ( 'onmouseout', new Function ( "hover(" + i + ", false, '"+tag+"');" ) );

       } 

       else if ( images.item(i).addEventListener ) {
       
         images[tag].item(i).addEventListener ( 'mouseover', new Function ( "hover(" + i + ", true);" ), true );
         images[tag].item(i).addEventListener ( 'mouseout', new Function ( "hover(" + i + ", false);" ), true );
    
       }
     }
   }

   if (tag != 1) {

     loadHovers(1);

   }

}

function hover ( index, mouseover, tag ) {
   images[tag].item( index ).setAttribute ( 'src', hovers[tag][mouseover?1:0][index].src );
}


function markRow(rowobj, nClass) {	
  	var theCells = null;

  	if (rowobj.cells != 'undefined') {
    	theCells = rowobj.cells;	
  	}

 	else if (rowobj.getElementsByTageName('td')) {
    	theCells = rowobj.getElementsByTageName('td');
  	}

  	cntCells = theCells.length;
  
  	if (cntCells > 0) {
    	for (i=0;i<cntCells;i++) {		
      		theCells[i].className = nClass;  
    	}
  	}
}



function checkForm(form) {
  	var aantal = form.elements.length;
  	var returnbool = true;
  
  	var string = 'U heeft de volgende verplichte veld(en) niet ingevuld: \n';
  	string += '_______________________________________________________\n';

	for (var i=0;i<aantal;i++) {
    	if (form.elements[i].type == 'checkbox') {
     		if (form.elements[i].title.length > 0 && !form.elements[i].checked) {

				string += form.elements[i].title+'\n';
				returnbool = false;
      		}

    	}
    	else if (form.elements[i].value.length == 0 && form.elements[i].title.length > 0 && !form.elements[i].disabled && form.elements[i].style.display != 'none') {
			string += form.elements[i].title+'\n';
			returnbool = false;
		}
  	}

  	if (returnbool) {
		return true;
	}
	else {
		string += '______________________________________________________\n';
		string += 'Vul deze velden in om de actie te voltooien';
		alert(string);
		
		return false;
	}
}

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function number_format (number, decimals, dec_point, thousands_sep)
{
  var exponent = "";
  var numberstr = number.toString ();
  var eindex = numberstr.indexOf ("e");
  if (eindex > -1)
  {
    exponent = numberstr.substring (eindex);
    number = parseFloat (numberstr.substring (0, eindex));
  }
  
  if (decimals != null)
  {
    var temp = Math.pow (10, decimals);
    number = Math.round (number * temp) / temp;
  }
  var sign = number < 0 ? "-" : "";
  var integer = (number > 0 ? 
      Math.floor (number) : Math.abs (Math.ceil (number))).toString ();
  
  var fractional = number.toString ().substring (integer.length + sign.length);
  dec_point = dec_point != null ? dec_point : ".";
  fractional = decimals != null && decimals > 0 || fractional.length > 1 ? 
               (dec_point + fractional.substring (1)) : "";
  if (decimals != null && decimals > 0)
  {
    for (i = fractional.length - 1, z = decimals; i < z; ++i)
      fractional += "0";
  }
  
  thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ? 
                  thousands_sep : null;
  if (thousands_sep != null && thousands_sep != "")
  {
	for (i = integer.length - 3; i > 0; i -= 3)
      integer = integer.substring (0 , i) + thousands_sep + integer.substring (i);
  }
  
  return sign + integer + fractional + exponent;
}

function debug(test){
	
}
