// JavaScript Document

$().ready(function()	{
		
		validateContact();
		
		//Folder & Abonnement popup
		showOverlay();
		
		$('.closer').click(hideOverlay);
		$('#overlayInner').click(hideOverlay);
});


function showOverlay()
{
	if(readCookie('popup') !== 'true' || readCookie('popup') == undefined)
	{	
		//setOverlay
		var docW = $(document).width();
		var docH = $(document).height();
		
		$('#overlay').css({width: docW+'px', height: docH+'px'});
		
		$('#overlay').append('<span id="overlayInner">'+
							 		'<img src="images/close.png" class="closer" />'+
							 '</span>');
		
		
		
		
		var img = new Image();
		img.src = "images/brochurepopup.jpg";
		img.id = 'brochure';
		
		img.onload = function()
		{
			//Set inside overlay
			$('#overlayInner').append(img);
			
			var img2 = new Image();
			img2.src = "images/weblogpopup.jpg";
			img2.id = 'weblog';
			
			img2.onload = function()
			{
				//Set inside overlay
				$('#overlayInner').append(img2);
			
				var winW = $(window).width();
				var winH = $(window).height();
				
				$('#overlayInner').css({ top: (winH/6)+'px'});
				
				$('#overlay').fadeIn(500);
				
				$('#overlayInner').children('img').click(openPopupURL);
			}
		}
		
		
		//show popup;
		createCookie('popup', 'true', 175);
	}
}

function hideOverlay()
{
	$('#overlay').fadeOut(500);
	$('#overlay').html('');
}

function openPopupURL()
{
	switch($(this).attr('id'))
	{
		case 'brochure':
			window.location = 'brochure.php';
		break;
		
		case 'weblog':
			window.location = 'weblog.php';
		break;
	}
	
}


function validatePerPost() {
	$("#post").validate({
		rules:  {
			naam: {
				required : true,
				minlength: 3
			},
			adres: {
				required : true,
				minlength: 3
			},
			postcode:  {
				required : true,
				minlength: 6
			},
			plaats:  {
				required : true,
				minlength: 3
			},
			mailadres:  {
				required : false,
				email: true
			}
		},
		messages: {
			naam: {
				required : "Verplicht",
				minlength: "Minimaal 3 karakters"
			},
			adres: {
				required : "Verplicht",
				minlength: "Minimaal 3 karakters"
			},
			postcode:  {
				required : "Verplicht",
				minlength: "Minimaal 6 karakters"
			},
			plaats:  {
				required : "Verplicht",
				minlength: "Minimaal 3 karakters"
			},
			mailadres:  {
				required : "Verplicht",
				email: "Geldig e-mailadres vereist"
			}
		}
	});
};

function validatePerEmail() {
	$("#email").validate({
		rules:  {
			naam: {
				required : true,
				minlength: 3
			},
			email: {
				required : true,
				email: true
			}
		},
		messages: {
			naam: {
				required : "Verplicht",
				minlength: "Minimaal 3 karakters"
			},
			email: {
				required : "Verplicht",
				email: "Geldig emailadres benodigd"
			}
		}
	});
};


currTop=0;
function weblogArchiefUp(){
	stappen = 10;
	marge=0;
	
	weblog=document.getElementById('weblog_archief_wrapper');
	weblogInner=document.getElementById('weblog_archief_inner');
	
	weblogH=weblog.offsetHeight-(parseInt(document.getElementById('weblog_archief_arrow_up').offsetHeight)+parseInt(document.getElementById('weblog_archief_arrow_down').offsetHeight));
	weblogInnerH=weblogInner.offsetHeight;
	scrollUp=(weblogInnerH - weblogH)*-1;

	if(currTop > scrollUp && (currTop-stappen) > scrollUp){
		currTop=currTop-stappen;
		weblogInner.style.top = currTop+'px';
		archiefInnerTimer = setTimeout(weblogArchiefUp, 50);
		
	}else if(currTop > scrollUp && (currTop-stappen-marge) <= scrollUp){
		weblogInner.style.top = (scrollUp-marge)+'px';
	}
	
}


function validateContact()
{
	$('#contact').validate({
			rules:  {
				naam: {
					required : true,
					minlength: 3
				},
				email: {
					required : true,
					email: true
				},
				onderwerp: {
					required : true
				},
				bericht: {
					required : true
				}
			},
			messages: {
				naam: {
					required : "Verplicht",
					minlength: "Minimaal 3 karakters"
				},
				email: {
					required : "Verplicht",
					email: "Geldig emailadres benodigd"
				},
				onderwerp:	{
					required: "Verplicht"
				},
				bericht: {
					required: "Verplicht"
				}
			}
		});
}


function weblogArchiefDown(){
	stappen = 10;
	marge=0;
	
	weblog=document.getElementById('weblog_archief_wrapper');
	weblogInner=document.getElementById('weblog_archief_inner');
	
	weblogH=weblog.offsetHeight-(parseInt(document.getElementById('weblog_archief_arrow_up').offsetHeight)+parseInt(document.getElementById('weblog_archief_arrow_down').offsetHeight));
	weblogInnerH=weblogInner.offsetHeight;
	scrollUp=weblogInnerH - weblogH;

	if(parseInt(weblogInner.style.top) < 0 && (parseInt(weblogInner.style.top)+stappen) < 0){
		currTop=currTop+stappen;
		weblogInner.style.top = currTop+'px';
		archiefInnerTimer = setTimeout(weblogArchiefDown, 50);
		
	}else if(parseInt(weblogInner.style.top) < 0 &&  ((parseInt(weblogInner.style.top)+stappen+marge) >= 0)){
		weblogInner.style.top ='-10px';
	}
	
}

function weblogArchiefUpDownReset(){
	try{
		clearTimeout(archiefInnerTimer);
	}catch(err){
	}
}


function scrollToWeblogTitle(weblogTitleId)	{
	weblogtitle = document.getElementById(weblogTitleId);
	weblogInner = document.getElementById('weblog_archief_inner');
	weblogtitleTop = weblogtitle.offsetTop;
	archiefInnerHeight=weblogInner.offsetHeight;
	archiefHeight=document.getElementById('weblog_archief_wrapper').offsetHeight;
	maxOffsetTop = archiefInnerHeight - (archiefHeight / 2);
	maxOffsetTopRest = archiefInnerHeight - weblogtitleTop;
	
	marge = 75;
	
	//weblogtitleTopRest mag niet groter zijn dan de hleft van Archiefheight;
	//Anders helemaal naar onder scrollen
	if((maxOffsetTopRest > (archiefHeight / 2)) && (weblogtitleTop > (archiefHeight / 2)) ){
		weblogInner.style.top = ((weblogtitleTop * -1)+(archiefHeight /3))+'px';
	}else if(maxOffsetTopRest < (archiefHeight / 2)){
		weblogInner.style.top = ((archiefInnerHeight * -1)+(archiefHeight-marge))+'px';
	}else if(weblogtitleTop < (archiefHeight / 2)){
		weblogInner.style.top ='-10px';
	}
	
		currTop = parseInt(weblogInner.style.top);
		weblogtitle.style.backgroundColor = '#5f4c68';
	
}

function makeImageBig(image)	{
	document.getElementById('weblog_photo_big').src = 'CMS/files/stacks/'+image.alt;
}

function closePopup(divid)	{
	ele = document.getElementById(divid);
	
	//indien geen style.height
	if(ele.style.height == ''){
		width = ele.offsetWidth;
		height = ele.offsetHeight;
	}else{
		width = parseInt(ele.style.width);
		height = parseInt(ele.style.height);
	}
	
	if(width > 0 && height > 0){
		ele.style.width = (width - 10)+'px';
		ele.style.height = (height - 10)+'px';
		setTimeout("closePopup('"+divid+"')", 7)
	}else{
		ele.style.display='none';
	}
}

function openPopup(divid, end_width, end_height)	{
	ele = document.getElementById(divid);
		ele.style.display='block';
		
		verh=end_width/end_height;
		step=10;
		
		if(ele.style.height == ''){
			width = 0;
			height = 0;
		}else{
			width = parseInt(ele.style.width);
			height = parseInt(ele.style.height);
		}
		
	
	if(width < (end_width+10) && height < (end_height+10)){
		ele.style.width = (width + step)+'px';
		ele.style.height = (height + (step/verh))+'px';
		setTimeout("openPopup('"+divid+"', "+end_width+", "+end_height+")", 7)
	}else{
		ele.style.width = end_width +'px';
		ele.style.height = end_height +'px';
	}
}

function leegVeld()	{
	if(this.value.toLowerCase() == this.name){
			this.value='';
	}
}

function resetVeld()	{
	if(this.value === ''){
		this.value=this.name.toUpperCase();
	}
}

function viewPortfolioImage(imageSrc, thumb){
	portfolioImage = new Image;
	portfolioImage.src = 'CMS/files/stacks/' + imageSrc;

	document.getElementById('portfolio').src = portfolioImage.src
}


function checkFormFieldFocus(){
	if(this.txt != undefined){
		this.value = this.txt;
			this.txt = undefined;
		}
		this.style.textAlign = 'left';
		this.style.backgroundColor = '#FFFFFF';
		this.style.color = '#000000';
}

function checkFormFieldBlur(event, element){
	if(element === undefined){
		element = this;
	}
	
switch (element.name){
	case 'naam':
	case 'onderwerp':
	case 'bericht':
			if((element.value.length < 3) || (element.txt !== undefined) || (element.value.toLowerCase() === element.id.toLowerCase())){
				//Naam minder dan 3 letters
				element.txt = element.value;	
				element.value='Minimaal drie letters';
				element.style.textAlign = 'right';
				element.style.backgroundColor = '#FFDDDD';
				element.style.color = '#888888';
				error="yes";
			}
		break;

	case 'captcha':
			if((element.value.length != 4) || (element.txt !== undefined) || (element.value.toLowerCase() === element.id.toLowerCase())){
				//Minder of meer dan 4 letter
				element.txt = element.value;	
				element.value='4 tekens benodigd';
				element.style.textAlign = 'left';
				element.style.backgroundColor = '#FFDDDD';
				element.style.color = '#888888';
				error="yes";
			}
		break;
		
	case 'emailadres':	
	case 'e-mailadres':
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		if((reg.test(element.value) == false) || (element.txt !== undefined) || (element.value.toLowerCase() === element.id.toLowerCase())){
			//emailadres foutief
			element.txt = element.value;	
			element.value='Foutief E-mailadres';
			element.style.textAlign = 'right';
			element.style.backgroundColor = '#FFDDDD';
			element.style.color = '#888888';
			error="yes";
		}
	break;
	
	case 'emailadres_herhaling':
			var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if((reg.test(element.value) == false) || (element.txt !== undefined) || (element.value.toLowerCase() === element.id.toLowerCase())){
				//emailadres foutief
				element.txt = element.value;	
				element.value='Foutief E-mailadres';
				element.style.textAlign = 'right';
				element.style.backgroundColor = '#FFDDDD';
				element.style.color = '#888888';
				error="yes";
			}
			if(document.getElementsByName('emailadres_herhaling')[0].value!=document.getElementsByName('emailadres')[0].value){
				//beide emailadressen niet gelijk
				element.txt = this.value;	
				element.value='E-mailadressen zijn verschillend';
				element.style.textAlign = 'right';
				element.style.backgroundColor = '#FFDDDD';
				element.style.color = '#888888';
				error="yes";
			}
			
		break;
	}
}

function checkForm(form){
	
	error="no";
	for(i=0; i<form.elements.length; i++){
		switch (form.elements[i].type) {
			case 'text':
			case 'textarea':
				checkFormFieldBlur(event, document.getElementById(form.elements[i].id));
			break;
		}
	}
	if(error == "yes"){
		return false;
	}
}

function showOudergeschenkGroot(filename, publicatienr)	{
	groteAfbeelding = document.getElementById('fotoGrootOudergeschenk'+publicatienr);
	groteAfbeelding.src = 'CMS/files/stacks/'+filename;
	groteAfbeelding.style.display = 'block';
}


function hideOudergeschenkGroot(filename, publicatienr)	{
	groteAfbeelding = document.getElementById('fotoGrootOudergeschenk'+publicatienr);
	groteAfbeelding.style.display = 'none';
}





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 nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}
