/***********************************************************************
 * Globale functies die weg zouden moeten (mits aanpassing HTML)
 **********************************************************************/

// Deze functie wordt aanroepen in:
// Corelio.Paper.UserControls/Region/RegionArticleBoxDSO.ascx
// ToDo: zet alle JS hier en niet in de .ascx
// => performance++, onderhoudbaarheid++, minder globale variabelen
function initializeRegioTeaser() {

	var zIndexNumber = 100,
	    $tooltipsLi = $('ul.tooltips li');
	$tooltipsLi.each(function() {
		this.style.zIndex = zIndexNumber;
		zIndexNumber -= 10;
	});

	$('span', $tooltipsLi).hover(function() {
		$(this).next().toggle();
	});

	$('.top-articles h5 a').click(function(event) {
		$('.regio-teaser .toolbar').toggle('slow');
		event.preventDefault();
	});

}

// Wordt gebruikt bij 'reactie offline' op bvb. /meningen/forum/index.aspx?pagename=detail&forumid=2802480
function ConfirmMe() {
	return confirm('Ben je zeker?');
}

// Dit kan weg als de print CSS gebruikt wordt i.p.v. de popup
function openWindow(URL, winName, width, height, center, showMenu, showScrollbars) {
	var xposition = 0,
	    yposition = 0,
	    args;
	if (center) {
		xposition = (screen.width - width) / 2;
		yposition = (screen.height - height) / 2;
	}
	args = [
		'width=' + width,
		'height=' + height,
		'location=0',
		'menubar=' + (showMenu || '0'),
		'resizable=1',
		'scrollbars=' + (showScrollbars || '1'),
		'status=0',
		'titlebar=0',
		'toolbar=0',
		'hotkeys=0',
		'left=' + xposition,
		'top=' + yposition
	].join(',');
	window.open(URL, winName, args);
}

// Dit stond in search.js en zou eigenlijk ook niet globaal mogen zijn
var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

function encode64(input) {
	var output = "";
	var chr1, chr2, chr3;
	var enc1, enc2, enc3, enc4;
	var i = 0;

	do {
		chr1 = input.charCodeAt(i++);
		chr2 = input.charCodeAt(i++);
		chr3 = input.charCodeAt(i++);

		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;

		if (isNaN(chr2)) {
			enc3 = enc4 = 64;
		} else if (isNaN(chr3)) {
			enc4 = 64;
		}

		output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + 
			keyStr.charAt(enc3) + keyStr.charAt(enc4);
	} while (i < input.length);
	
	return output;
}

function toggleSearchIntros() {
	var isVisible = true;
	var list = document.getElementsByTagName( "p" );
	
	for ( i = 0; i < list.length; i++ ) {
		var search = list[i].getAttribute( 'search' );
		
		if ( search == 'intro' ) {
			if ( list[i].style.display == 'none' ) {
				isVisible = true;
				list[i].style.display = 'block';
			} else {
				isVisible = false;
				list[i].style.display = 'none';
			}
		}	
	}
	
	var pagers = document.getElementById( 'searchPagers' );
	
	if ( pagers != null ) {
		for ( i = 0; i < pagers.childNodes.length; i++ ) {
			if ( pagers.childNodes[i].tagName == 'A' ) {
				if ( isVisible )
					pagers.childNodes[i].href = pagers.childNodes[i].href.replace( /intro=0/, "intro=1" );
				else
					pagers.childNodes[i].href = pagers.childNodes[i].href.replace( /intro=1/, "intro=0" );
			}
		}
	}
}


function toggleSearchOptions() {
	toggle( document.getElementById( 'searchOptions' ) );
	toggle( document.getElementById( 'searchOptionsQuick' ) );
	
	var lnk = document.getElementById( 'searchOptionsLink' );
	
	if ( lnk.innerText == 'uitgebreid zoeken' )
		lnk.innerHTML = 'verberg opties';
	else
		lnk.innerHTML = 'uitgebreid zoeken';
}


/***********************************************************************
 * Custom jQuery plugins & methods
 **********************************************************************/

// Search forms
$.fn.search = function($el) {
	var $this = this; // submit button

	// ToDo: verwijder de attributen uit de HTML en dan kan deze regel ook weg
	($this[0] || {}).onclick = ($this[0] || {}).onkeydown = ($el[0] || {}).onkeydown = null;
	$el.keydown(function(event) {
		if (event.keyCode == 13) { // Enter
			$this.click();
			event.preventDefault();
		}
	});
	return $this.click(function(event) {
		var value = $el.val(),
		    $exact = $('#ctl00_CtPH1_searchBox_chkFindExact'),
		    isAdvanced = $exact.length;
		if (value) {
			value = '/Archief/Zoek/Index.aspx?trefwoord=' + encodeURIComponent(value);
			if (isAdvanced) {
				value += [
					$exact[0].checked ? '&zoekExact=1' : '',
					'&waar=' + $('input[name$="waar"]:checked').val(),
					'&wat=' + $('input[name="ctl00$CtPH1$searchBox$contentType"]:checked').val(),
					'&wanneer=' + $('input[name$="wanneer"]:checked').val(),
					'&sektie=' + $('#ctl00_CtPH1_searchBox_ddlSection').val(),
					'&datumVan=' + $('#ctl00_CtPH1_searchBox_txtVan').val(),
					'&datumTot=' + $('#ctl00_CtPH1_searchBox_txtTot').val(),
				].join('');
			}
			location.href = value;
		} else {
			alert('Trefwoord is niet gespecifieerd');
		}
		event.preventDefault();
	});
};


/* Justify height of columns */
$.fn.vjustify = function() {
	var heights = this.map(function() {
		return this.offsetHeight;
	}).get();
	return this.height(Math.max.apply(Math, heights));
};

/* Character counter */
$.fn.counter = function() {
	return this.each(function() {
		var $this = $(this),
		    maxLength = this.maxLength || this.maxlength || this.getAttribute('maxlength'),
		    $counter = $('<div class=counter>Nog <strong>' + maxLength + '</strong> tekens over</div>').insertAfter($this),
		    $strong = $('strong', $counter);
		if ($.browser.msie) {
			// IE doesn't support textarea/@maxlength and has buggy `oninput`
			$this.bind('keypress', function(event) {
				var chars = maxLength - this.value.length;
				if (chars < 1) {
					event.preventDefault();
					chars = 0;
				}
				$strong.text(chars);
			});
		} else {
			// All other browsers support textarea/@maxlength and `oninput`
			$this.bind('input', function() {
				$strong.text(maxLength - this.value.length);
			});
		}
	});
};

// Load scripts asynchronously
$.loadAsync = function(url, callback) {
	// Don't use $.getScript since it disables caching
	$.ajax({
		'url': url,
		'dataType': 'script',
		'cache': true,
		'success': callback || $.noop
	});
};

// Get URL parameters (Adhese)
$.urlParam = function(name) {
	var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
	return results && results[1];
};

/***********************************************************************
 * Document ready
 **********************************************************************/

$(function() {

	/* Search form */
	var $searchForm = $('#search'),
	    $searchInput = $('#search-field', $searchForm),
	    $keywordInput = $('input.trefwoord'),
	    $searchSubmit = $('input[type=submit]', $searchForm),
	    $contentSearchSubmit = $('#content input[name=Verzenden]');

	$searchSubmit.search($searchInput);
	$contentSearchSubmit.search($keywordInput);

	$searchInput.keydown(function(event) {
		if (event.keyCode == 13) { // Enter
			$searchSubmit.click();
			event.preventDefault();
		}
	});

	/* Article actions */
	// ToDo: HTML aanpassen (onclick-attributen verwijderen)
	// articleId is momenteel een global => kan eventueel ook in een custom data-attribuut
	// => performance++, onderhoudbaarheid++, minder globale variabelen

	$('.print a').each(function() {
		// ToDo: Dit kan weg eens het onclick-attribuut uit de HTML verwijderd is
		this.onclick = null;
	}).click(function(event) {
		openWindow('/Artikel/PrintArtikel.aspx?artikelId=' + window.articleId, 'print', 640, 500, 1, 1);
		event.preventDefault();
	});

	$('.bewaar a, .later a').each(function() {
		// ToDo: Dit kan weg eens het onclick-attribuut uit de HTML verwijderd is
		this.onclick = null;
	}).click(function(event) {
		openWindow('/Registratie/MijnArchiefPopup.aspx?artikelId=' + window.articleId, 'archief', 350, 220, 1, 0, 0);
		event.preventDefault();
	});

	/* */

	/* VERKEER */
	var locationHref = window.location.href,
	    indexObj,
	    key;

	indexObj = {
		// key: value
		// indien `key` wordt gevonden in de URL, krijgt `window.adhese_extra`  als waarde `value`
		'extra/weer': 'dso_weer',
		'RfOOOPp7hqNOAgj6Xw2exvUKxtO5LgdhkDrttv': 'dso_batibouw', // TYPEPAD - DSO
		'typepad': 'dso_typepad', // WESTTOER - DSO
		'canon': 'dso_canon', // CANON - DSO
		'actu24': 'actu_canon', // CANON - ACTU
		'extra/biz/chi-x': 'beurs_chix', // BEURS CHI-X
		'20100427_088': 'beurs_chix', // BEURS CHI-X
		'kanaalid=1513': 'dso_blindenzorg', // DOSSIER BLINDENZORG
		'kanaalid=1527': 'dso_bnpparibas', // DOSSIER BNP PARIBAS
		'kanaalId=434': 'dso_festivals', // DOSSIER FESTIVALS 2010
		'artikelid=DMF20100526_038': 'dso_westhoek', // WEDSTRIJD WESTHOEK
		'kanaalid=1866': 'dso_ing_beursdossier', // ING DOSSIER BEURS - 201010
		'standaard.typepad.com/cafefoto/': 'dso_cafefoto_', // DSO CAFE FOTO TAGGING
		'extra/fondsendossier': 1504 // FONDSENDOSSIER
	};

	for (key in indexObj) {
		if (indexObj.hasOwnProperty(key) && ~locationHref.indexOf(key)) {
			window.adhese_extra = indexObj[key];
		}
	}

	// Speciallekes

	if ($.urlParam('kanaalid') == 808 || ~locationHref.indexOf('extra/verkeer')) {
		window.adhese_extra = 'dso_verkeer';
	}

	// ENERGIEGIDS - CREATIVE LAB - 201006
	if (~locationHref.indexOf('kanaalid=1594') || ~locationHref.indexOf('kanaalid=1593') || ~locationHref.indexOf('kanaalid=1595') || ~locationHref.indexOf('kanaalid=1591')) {
		window.adhese_extra = 'dso_energiegids';
	}

	// BEURS INDEXEN
	if ((~locationHref.indexOf('beurskoersen.aspx') && locationHref.indexOf('?') == -1) || ~locationHref.indexOf('artikelid=DMF20101006_081')) {
		window.adhese_extra = 'beurs_indexen';
	}

	/* FONDSENDOSSIER */
	if (~locationHref.indexOf('extra/fondsendossier')) {
		window.kanaal = 1504;
	}

	/* PACO WALL COUNT */

	// Dit zou idealiter slechts 1 global object zijn i.p.v. meerdere,
	// of de data zou elders in de DOM moeten zitten
	user_abo || (user_abo = 0);
	user_id || (user_id = 0);

	if (user_id > 0 && user_abo == 0) {
		if (!$.cookie('paco_wall_count')) {
			var visitCount,
			    future = new Date;
			future.setYear(future.getFullYear() + 1);
			future = Number(future);
			visitCount = escape('0;' + future + ';' + user_id);
			$.cookie('paco_wall_count', visitCount, {
				'expires': future,
				'path': '/'
			});
		}
	}

	// Optimized async GA snippet based on http://mths.be/aab
	window._gaq = [
		['_setAccount', 'UA-1978395-3'],
		['_setDomainName', '.standaard.be'],
		['_addIgnoredRef', 'standaard.be'],
		['_addIgnoredRef', 'www.destandaard.be'],
		['_addIgnoredRef', 'destandaard.be'],
		['_addIgnoredRef', 'standaard.typepad.com'],
		['_addIgnoredRef', 'interactief.standaard.be'],
		['_setAllowHash', false],
		['_setCampaignCookieTimeout', 3600000],
		['_trackPageview'],
		['_trackPageLoadTime']
	];

	// Load scripts asynchronously
	$.each(
		[
			'//www.google-analytics.com/ga.js',
			'https://apis.google.com/js/plusone.js'
		],
		function(index, url) {
			$.loadAsync(url);
		}
	);

	$.loadAsync('//platform.twitter.com/widgets.js', _ga.trackTwitter);

	// Facebook Like
	(function(w, d, t) {
		var g = d.createElement(t),
		    s = d.getElementsByTagName(t)[0];
		g.src = '//connect.facebook.net/en_US/all.js#appId=148342091913263&xfbml=1';
		if (document.getElementById('fb-root')) {
			s.parentNode.insertBefore(g, s);
		}
		w.fbAsyncInit = _ga.trackFacebook;
	}(window, document, 'script'));
	
	
/***********************************************************************
 * Deel twee van document ready
 * Dit bevat code die nog verder geoptimaliseerd moet worden, maar die
 * wijzigingen in de HTML/CSS vraagt
 **********************************************************************/

	// Dit kan weg zodra de overbodige cookie-stuff (zie hierboven) in de back-end gebeurt
	displayLogonState();

	// Dropdown menu moet met CSS, niet JS
	/* SERVICE-NAVIGATION */
	var $servicenav = 'close';
	$('#service-nav li > a').bind('click',function() {
		var $this = $(this);
		$this.parent().parent().find('li > ul').hide('fast');
		$this.parent().find('ul').toggle('fast');
		if ($this.css('display') == 'block') {
			$servicenav = 'open';
		}
		else {
			$servicenav = 'close';
		}
	});
	$('ul#service-nav li > a').bind('mouseenter', function() {
		if ($servicenav == 'open') {
			$(this).parent().parent().find('li > ul').hide('fast');
			$(this).parent().find('ul').toggle('fast');
		}
	});
	$('ul#service-nav li > ul').bind('mouseleave',function() {
		$(this).toggle('fast');
		$servicenav = 'close';
	})

	/* Tab widgets initialiseren */
	$('.tabs-widget > ul').tabs({
		'fx': {
			'opacity': 'toggle',
			'duration': 'fast'
		}
	});

	/* Add character counter to textarea */
	$('#your-comment textarea').counter();

	/* Add comma's to footer links for IE */
	$('.ie #footer .links li:not(:last-child)').append(', ');

	/* Profile - show/hide info */
	$('h6.label').click(function() {
		var $this = $(this);
		$this.next('div').slideToggle('slow').siblings('div:visible').slideUp('slow');
		$this.toggleClass('active').siblings('h6').removeClass('active');
	});


	var $submitReactionButtons = $('input[name$=btnSubmitArticleReaction]');

	$('input[name$=chkAccept]').click(function() {
		$submitReactionButtons[this.checked ? 'show' : 'hide']();
	});

	/* Pictures */
	var $gpp = $('.article-detail .gpp'),
	    $gppAds = $('#gpp_ads', $gpp),
	    $imageRotator = $('.image-rotator', $gpp),
	    $photos = $('ul.photos li'),
	    countImages = 	$photos.length,
	    $firstPhoto = $photos.eq(0),
	    $baseImage = $('img', $firstPhoto),
	    baseImage = $baseImage[0] || {},
	    $otherImages = $photos.slice(1).find('img'),
	    imageCount = $photos.length,
	    $prev = $('ul.controls li.prev', $gpp),
	    $next = $('ul.controls li.next', $gpp),
	    $caption = $('p.caption', $gpp),
	    $copyright = $('p.copyright', $gpp),
	    $info,
	    $hoverControls = $('.hovercontrols', $gpp),
	    $toPhotobox = $('.toPhotobox', $hoverControls),
	    nextImage = 0,
	    loopImages = false,
	    baseImageProperties = {
	    	'src': baseImage.src,
	    	'alt': baseImage.alt,
	    	'title': baseImage.title
	    };

	// Dit kan met CSS (:first-child):
	$firstPhoto.show();
	// De JS-fallback is dan enkel nog nodig voor IE (geen :first-child)


	if (imageCount == 1) {
		$gpp.addClass('single');
	}

	/* Show if loaded */
	// Dit kan ook met CSSâ€¦
	$imageRotator.show();

	/* Fix things */
	$info = $('<li class=info>1 van ' + imageCount + '</li>');
	$prev.after($info).addClass('dimmed');

	/* Set initial caption */
	$caption.text(baseImage.alt);
	$copyright.text(baseImage.title);

	/* Bind onClick handler to Next and Previous links */
	$('ul.controls li a', $imageRotator).click(function(event) {
		var $this = $(this),
		    $thisParent = $this.parent('li'),
		    $nextImage,
		/* Has the Next or the Previous been clicked? */
		    next = $thisParent.hasClass('next'),
		    prev;

		/* Disable dimmed Previous and Next buttons if needed */
		if (!loopImages && $thisParent.hasClass('dimmed')) {
			return false;
		}
		/* Determine position of next or previous image */
		if (nextImage == 0)
		if (next) nextImage = nextImage + 1;
		else nextImage = countImages - 1;
		else if ( (nextImage > 0) && (nextImage < (countImages - 1)) )
		if (next) nextImage = nextImage + 1;
		else nextImage = nextImage - 1;
		else if ( nextImage == (countImages - 1))
		if (next) nextImage = 0;
		else nextImage = nextImage -1;
		/* Change button states */
		$('ul.controls li', $imageRotator).removeClass('dimmed');
		next = false;
		prev = false;
		if (nextImage == 0)
		prev = true;
		else if (nextImage == (countImages - 1) )
		next = true;
		if (next)
		$next.toggleClass('dimmed');
		else if (prev)
		$prev.toggleClass('dimmed');
		/* Create object for required <li> */
		$nextImage = $photos.eq(nextImage).find('img');
		/* Replace image */
		if (nextImage) {
				baseImage.src = $nextImage.attr('src');
				baseImage.alt = $nextImage.attr('alt');
				baseImage.title = $nextImage.attr('title');
		} else {
			baseImage.src = baseImageProperties.src;
		}
		/* Replace caption and copyright message */
		$caption.text(nextImage ? $nextImage.attr('alt') : baseImageProperties.alt);
		$copyright.text(nextImage ? $nextImage.attr('title') : baseImageProperties.title);

		/* Update status */
		$info.text((nextImage + 1) + ' van ' + countImages);
		/* Ignore anchor */
		event.preventDefault();
	});


	/* GPP */

	$gppAds.hover(
		function() {
			$hoverControls.css('visibility','hidden');
		},
		function() {
			$hoverControls.css('visibility','visible');
		}
	);

	$('#po #slideshow').hover(function() {
		$hoverControls.toggle();
	});

	$('a.hidebar', $gpp).click(function() {
		$('.gpp .bar').hide('slow');
		$('.gpp a.showbar').show('slow');
	});

	$('a.showbar', $gpp).click(function() {
		$('.gpp .bar').show('slow');
		$('.gpp a.hidebar').show('slow');
		$('.gpp a.showbar').hide('fast');
	});


	$('li.startPhoto a', $gpp).bind('click', function(event) {
		$gppAds.hide();
		$hoverControls.show();
		$('#photoslider', $gpp).cycle(0);
		event.preventDefault();
	});


	var popupSource = '';

	if ($toPhotobox.attr('href')) {
		popupSource = $toPhotobox.attr('href');
		popupSrc = popupSource.substring(0, popupSource.indexOf('start=') + 6);
		$toPhotobox.attr('href', popupSrc +'1');
		$('.nextPhoto', $gpp).attr('href', popupSrc + '1').attr('title', '');
		$('.nextPhoto', $hoverControls).attr('rel', 'photobox1');
		$('ul.controls a.nextPhoto', $gpp).attr('rel', 'photobox2');
	}

	var startslide = $.urlParam('start');
	if (countImages == 1) {
		$('a[rel=photobox], a[rel=photobox1], a[rel=photobox2]', $gpp).remove();
		$('.pausePhoto', $gpp).remove();
	} else {
		$('a[rel=photobox], a[rel=photobox1], a[rel=photobox2]', $gpp).colorbox({
			'innerWidth': '795',
			'innerHeight': '768',
			'scrolling': false,
			'iframe': true,
			'onLoad': function() {
				start = startslide;
				startingSlide = start - 1;
			}
		});
	}

	$('li a', $hoverControls).click(function() {
		this.blur();
	});

	$('.gpp.full-width #photocontainer, .gpp.photobox #photocontainer').hover(
		function() {
			if ($gppAds.css('display') == 'block') {
				$toPhotobox.hide();
			} else {
				$toPhotobox.show();
			}
		}
	);

	$('.gpp.full-width.single #photocontainer').hover(
		function() {
			$hoverControls.show();
		},
		function() {
			$hoverControls.hide();
		}
	);

});



/***********************************************************************
 * Social tracking: zie social.js
 **********************************************************************/


/***********************************************************************
 * Dit zijn allemaal zaken die in de back-end zouden moeten gebeuren!
 * Zodra dit gebeurt, kan deze code dan ook weg.
 * Als bepaalde userdata toch in JS beschikbaar dient te zijn,
 * plaats die dan in de HTML mbv. data-* attributen o.i.d.
 **********************************************************************/

/* User/login stuff */
var user = null;

function UserCookie() {
	this.email = '';
	this.pairs = [];
	this.name = '';
	this.isLoggedIn	= false;
	this.level = '0';

	var dc = document.cookie;
	var prefix = 'DsoPriv=';
	var begin = dc.indexOf( '; ' + prefix );

	if (begin == -1) {
		begin = dc.indexOf(prefix);
		if (begin != 0) return;
	} else {
		begin += 2;
	}
	var end = document.cookie.indexOf(';', begin);
	if (end == -1)
	end = dc.length;

	var vl = unescape(dc.substring(begin + prefix.length, end));

	this.pairs = vl.split( '&' );
	this.email = this.getValue( 'eml' );
	this.name = this.getValue( 'name' );

	if ( this.getValue( 'sek' ) != null && this.getValue( 'sek' ) != '' )
	this.expires = new Date( this.getValue('sek') );
	else
	this.expires = new Date( '1950/01/01 00:00:00' );

	var statStr		= this.getValue( 'stat' );

	if ( statStr != null ) {
		this.isLoggedIn	= ( statStr.charAt(0) == '1' );
		this.level		= statStr.charAt(1);
	}
	else {
		this.isLoggedIn = false;
		this.level		= '0';
	}

	this.leeftijd = this.getValue( 'lt' );
	this.postcode = this.getValue( 'zip' );
	this.geslacht = this.getValue( 'sex' );
	this.userid = this.getValue('section');
}

UserCookie.prototype.getValue = function( name ) {
	var nameEq = name + '=';

	for ( var i = 0; i < this.pairs.length; i++ ) {
		var c = this.pairs[ i ];
		if ( c.indexOf( nameEq ) == 0 )
		return c.substring( nameEq.length, c.length );
	}

	return '';
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = '; expires='+date.toGMTString();
	}
	else var expires = '';
	document.cookie = name+'='+value+expires+'; path=/';
}

function readCookie(name) {
	var start = document.cookie.indexOf(name+'=');
	var len = start+name.length+1;
	if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
	if (start == -1) return null;
	var end = document.cookie.indexOf(';',len);
	if (end == -1) end = document.cookie.length;
	return unescape(document.cookie.substring(len,end));
};

function loginUser( suffix ) {
	var email = document.getElementById('logonEmail' + suffix).value;
	var pwd = document.getElementById('logonPassword' + suffix).value;
	var from = $.urlParam('from') || encodeURIComponent(location.href);

	createCookie('leml', email, 1);
	createCookie('lpwd', pwd, 1);

	location.href = '/Registratie/Aanmelden.aspx?autoLogin=1&pad=' + from;
}

function logoutUser(suffix) {
	var from = $.urlParam('from') || encodeURIComponent(location.href);

	location.href = '/Registratie/Aanmelden.aspx?logout=1&pad=' + from;
}

function checkLogin(suffix) {
	user || (user = new UserCookie('DsoUser'));
	
	if (user.isLoggedIn) {
		document.getElementById( 'loginTbl' + suffix ).style.display	= 'none';
		document.getElementById( 'userEmail' + suffix ).innerHTML = user.email;
		document.getElementById( 'logoutTbl' + suffix ).style.display	= 'block';
	} else {
		document.getElementById( 'logonEmail' + suffix ).value = user.email;
	}
}

function displayLogonState() {
	user || (user = new UserCookie('DsoUser'));

	var userName	= document.getElementById( 'stateLinkName' );

	if ( user.isLoggedIn ) {
		$('#stateLinkName').html('Welkom, ' + user.name + ' &raquo;').attr('title', 'Aangemeld als \'' + user.name + '\'');
		$('#stateLinkReg').hide();
		if (user.level == 2 || user.level == 3) {
			// heeft abo
			$('#aboLink').hide();
			$('#regLink').hide();
			$('#liPacoAbo').hide;
		} else {
			// heeft geen abo
			$('#regLink').hide();
			$('#beheerAbo').hide();
		}
	} else {
		$('#stateLinkName').html('Meld u aan &raquo;');
		$('#stateLinkName').attr('title', 'Klik voor meer informatie');
		$('#lnkLogOut').hide();
		$('#beheerAbo').hide();
		$('#beheerReg').hide();
		$('#liPacoAfmelden').hide();
		$('#liPacoGegevens').hide();
	}

}

//Set user variables for Adhese
var user_postcode,
    user_leeftijd,
    user_geslacht,
    user_abo,
    user_id;

user || (user = new UserCookie('DsoUser'));

if (user.isLoggedIn) {
	user_abo = user.level;
	user_geslacht = user.geslacht;
	user_leeftijd = user.leeftijd;
	user_postcode = user.postcode;
	user_id = user.userid;
} else {
	if ($.cookie('DsoPriv')) {
		var v = $.cookie('DsoPriv').split('&');;
		user_abo = v[0];
		user_geslacht = v[1];
		user_leeftijd = v[2];
		user_postcode = v[3];
		user_id = v[4];
	}
}

/* End user/login stuff */


