// cookie handling
function getCookie(check_name)
{
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

function setCookie( name, value, expires, path, domain, secure )
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );

	/*
	if the expires variable is set, make the correct
	expires time, the current script below will set
	it for x number of days, to make it for hours,
	delete * 24, for minutes, delete * 60 * 24
	*/
	if ( expires )
	{
	expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : "" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

function setActiveCategorie(link)
{
	$('div#regelingZoeken div.categorieTab a').each(function()
	{
		if(this == link)
		{
			if(!$(this).hasClass('active'))
			{
				$(this).addClass('active');
				setCookie('is_active',this.hash,false,'/');
			}else{
				$(this).removeClass('active');
				setCookie('is_active','',false,'/');
			}
			$(this.realDataContainer).slideToggle(250);
		}else{
			if($(this).hasClass('active'))
			{
				$(this).removeClass('active');
				$(this.realDataContainer).slideToggle(250);
			}
		}
	});
}

// de categoriekopjes in- en uit-klapbaar maken
$(function () {
  
  var tabContainers = $('div.categorieContainer').each(function(i) 
  { 
			$(this).toggle();
  }); 

	$('div#regelingZoeken div.categorieTab a').each(function()
	{
			// link the 2 elements we don't have a lot of lookup to do
			this.realDataContainer = $(this.hash)[0];
			$(this.hash)[0].toggleLink = this;
	});
	
	$('div#regelingZoeken div.categorieTab a').click(function () {
			setActiveCategorie(this);
			return false;
  });
	
	var active = getCookie('is_active');
	if(active != null && active != 'false' && active != '')
	{
		setActiveCategorie(($(active)[0]).toggleLink);
	}

});

//het overzicht van regelingen kunnen tonen en verbergen.
function toggleRegelingen()
{
  //alert('click');
  $('#regelingenContainer').slideToggle(250);
  $('#regelingenLink').toggleClass('active');
	var isActive = $('#regelingenLink').hasClass('active');
  //alert('display: '+$('#regelingenContainer:visible').attr('style').display);
  //alert('visible: '+ $('#regelingenContainer').is(':visible'));
  
  //if ( $('#regelingenContainer').is(':visible') )
  if ( isActive )
  {
    $('#regelingenLink').text('Verberg regelingen');
		setCookie('toonRegelingen','true',false,'/');
  }
  else
  {
    $('#regelingenLink').text('Toon regelingen');
		setCookie('toonRegelingen','false',false,'/');
  }

}


/* Tooltips voor de criteriumhelp kunnen weergeven: */
/*
$(function(){	
		//config
		xOffset = 10;
		yOffset = 20;		
		// these 2 variable determine popup's distance from the cursor
		// you might want to adjust to get the right result
	$("a.helpTekst").hover(
		function(e){											  
			this.t = this.title;
			this.title = "";									  
			$("body").append("<div id='tooltip'>"+ this.t +"</div>");
			$("#tooltip")
				.css("top",(e.pageY - xOffset) + "px")
				.css("left",(e.pageX + yOffset) + "px")
				.css("position","absolute")
				.fadeIn("fast");		
    }, 
		function(){
			this.title = this.t;		
			$("#tooltip").remove();
    });	
	
	$("a.helpTekst").mousemove(function(e){
		$("#tooltip")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px");
	});
	
});
*/
/* tooltips per categorie registreren */

var tooltipxOffset = 10;
var tooltipyOffset = 20;

function registerTooltip(tooltipObjectId, tooltipContentIdPostfix)
{
	$('#'+tooltipObjectId).hover(
		function(e){					
				//save title in a variable to prevent double titles of browsers
				this.t = this.title;
				this.title = "";
				//if ( $('#tooltip') )
				//	$('#tooltip').html($('#'+tooltipObjectId+tooltipContentIdPostfix).html());
				//else
				var exists = $('#tooltip').length > 0;
				if ( !exists ){
					var value = $('#'+tooltipObjectId+tooltipContentIdPostfix).html();
					if(value == null)
						value = 'Geen selectie opgegeven';
					$('#'+this.id).append('<div id="tooltip" style="display:none;">'+ value +'</div>');
				}
				$('#tooltip')
					.css('position','absolute')
					.css('top',(e.pageY + tooltipyOffset) + 'px')
					.css('left',(e.pageX + tooltipxOffset) + 'px');
				//.fadeIn('fast');
    }, 
		function(){
			this.title = this.t;		
			$('#tooltip').remove();
    });	
	
	$('#'+tooltipObjectId).mousemove(function(e){
		if ( !$(this).hasClass('active') )
		{
			$('#tooltip')
				.css('display','block')
				.css('top',(e.pageY + tooltipyOffset) + 'px')
				.css('left',(e.pageX + tooltipxOffset) + 'px');
		}
		else
		{
			$('#tooltip')
				.css('display','none')
		}
	});
	
	$('#'+tooltipObjectId).click(function(e){
			$('#'+tooltipObjectId).mouseout();
	});
}

$(function() {
	if(jQuery.browser.msie){
    $("select option").each(function(){
			$(this).attr("title",$(this).text());
		});
	}
});
