var bNext = true;
var bPrev = true;

var nVisible = 1; // Aantal zichtbare items
var nDefaultSlides = 1; // Aantal items per keer sliden
var obj; // Naam van de items 
var nSlides;
var nWidth;
var nTotal;
var nActive;

function projectenSlider() {
	
	obj = $('.slide'); // Naam van de items 
	nSlides = nDefaultSlides;
	nWidth = 920;
	nTotal = parseInt(obj.size());
	nActive = nVisible;
	
	if(nTotal < nVisible) {
		$('#btn_slider_prev').hide();
		$('#btn_slider_next').hide();
	}
	
	$('#btn_slider_next').click(function(){
		speed = 300;
		clearTimeout(timeout);
		moveForward();										 
	});
	
	$('#btn_slider_prev').click(function(){
		speed = 300;
		clearTimeout(timeout);
		moveBack();										 
	});

}

function moveForward() {
	if(bNext == true) {
		var nRemaining = nTotal - nActive;
		if(nRemaining < nSlides) {
			nSlides = nRemaining;
		} else {
			nSlides = nDefaultSlides;	
		}
		if(nActive == 1) {
			nActive = nDefaultSlides;	
		}
		var nLeft = parseInt($('#slider_container').css('left')) - (nWidth * nSlides);
		nActive = nActive + nSlides;
		if(nTotal == nActive) {
			$('#btn_slider_next').hide();
		} else {
			$('#btn_slider_next').show();
		}
		bNext = false;		
		$('#slider_container').animate({
			'left':nLeft
		},
		speed,
		"swing", 
		function(){ 
			bNext = true;
		});
	}
	$('#btn_slider_prev').css('display','block');
	if(nRemaining == 1) {
		sDirection = 'moveBack';
	}
	autoSlide();
}

function moveBack() {
	if(bPrev == true) {
		var nRemaining = nActive - nVisible;
		if(nRemaining < nSlides) {
			nSlides = nRemaining;
		} else {
			nSlides = nDefaultSlides;	
		}
		var nLeft = parseInt($('#slider_container').css('left')) + (nWidth * nSlides);
		if(nLeft == 0) {
			$('#btn_slider_prev').css('display','none');
		}
		bPrev = false;			
		$('#slider_container').animate({
			'left':nLeft
		},
		speed,
		"swing", 
		function(){ 
			bPrev = true;
		});
		nActive = nActive - nSlides;
		if(nTotal > nActive) {
			$('#btn_slider_next').show();
		} else {
			$('#btn_slider_next').hide();
		}
		if(nRemaining == 1) {
			sDirection = 'moveForward';
		}
		autoSlide();
	}
}

var sDirection = 'moveForward';
var timeout = '';
function autoSlide() {
	speed = 600;
	if(sDirection == 'moveForward') {
		timeout = setTimeout('moveForward()',6000);
	} else if(sDirection == 'moveBack') {
		timeout = setTimeout('moveBack()',6000);
	}
}

function radiobuttons() {
	$('.radio').click(function(){
		$(this).parent('.radios').find('.radio').removeClass('active');
		$(this).children('.radio_input').attr('checked','checked');
		$(this).addClass('active');
	});
}

function validateForm(p_sForm) {
	var iconOK = {
		'background-position' : '-29px 0'
	}
	var iconError = {
		'background-position' : '0 0'
	};

	var aMessage = new Array();
	aMessage[0] = 'Vul uw naam in.';
	aMessage[1] = 'Vul uw telefoonnummer in.';
	aMessage[2] = 'Vul een geldig telefoonnummer in.';
	aMessage[3] = 'Vul uw e-mailadres in.';
	aMessage[4] = 'Vul een geldig e-mailadres in.';
	aMessage[5] = 'Vul het onderwerp in.';
	
	$.validator.addMethod("telefoon", function(phone_number, element) {
    	phone_number = phone_number.replace(/\s+/g, ""); 
		return this.optional(element) || phone_number.length > 9 &&
			phone_number.match(/^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$/);
	}, "Vul een geldig telefoonnummer in.");
	
	$.validator.addMethod("geennummers", function(geennummers, element) {
		   var reg = /[0-9]/;
		   return this.optional(element) || !geennummers.match(reg);
	}, "Getallen zijn niet toegestaan.");

	$('#'+p_sForm).validate({
		rules: {
			sContactpersoon: {
				required: true,
				geennummers: true
			},
			sTelefoon: {
				required: true,
				telefoon: true
			},
			sEmail: {
				required: true,
				email: true
			},
			sOnderwerp: {
				required: true
			}
		},
		messages: {
			sContactpersoon: {
				required: aMessage[0]
			},
			sTelefoon: {
				required: aMessage[1],
				email: aMessage[2]
			},
			sEmail: {
				required: aMessage[3],
				email: aMessage[4]
			},
			sOnderwerp: {
				required: aMessage[5]
			}
		},
		errorPlacement: function(error, element) {
			error.insertAfter(element.parent().next());
			element.parent().next('div.controle').css(iconError);
		},
		success: function(label) {
			label.prev('div.controle').css(iconOK);
			label.remove();
		},
		submitHandler: function(form) {
			switch(p_sForm){
				case 'contactformulier':
					var sUrl = 'includes/contactform.php';
				break;
			}	
			var sDiv = '';
			
			var options = {
				url: sUrl,
				type: 'POST',
				success: function(sData) {
					var aResponse = sData.split('|');
					if(aResponse[0] == 'ok'){
						
						$('#'+p_sForm).fadeOut(500, function(){
							$(this).remove();									 
						});
						
						sDiv += '<div class="succes">';
						sDiv += aResponse[1];
						sDiv += '</div>';
						
						
						
					} else if(aResponse[0] == 'error'){
						
						sDiv += '<div class="succes">';
						sDiv += 'Er is iets mis gegaan tijdens het versturen<br/><br/>';
						sDiv += 'Gebruik het volgende email adres om contact op te nemen:<br/>';
						sDiv += '<a href="mailto:info@molendijkservice.nl">info@molendijkservice.nl</a><br/><br/>';
						sDiv += 'Vermeld alstublieft dat u deze foutmelding kreeg.';
						sDiv += '</div>';
					}
				
					$('div.melding').html(sDiv);
		
					setTimeout("$('.melding').fadeIn(700)", 500)
					
				}
			}
			$(form).ajaxSubmit(options);
			return false;
		}
	});	
}

