$('.content_inner_betaalwijze').children('.winkelwagen_top').first().prepend('<input type="submit" value="Rond bestelling af" id="cartsub" class="afronden">');

$('div.afleveradres').css('display','none');
$('div.factuuradres').css('display','none');



$('#cartsub').click(function(event) {
	event.stopPropagation();
	event.preventDefault();
	$('#order_form').submit();
});
$('.cartitemcount').change(function(e) {
	e.stopPropagation();
        e.preventDefault();
        $('#cartupdateform').submit();
});
$('.cartitem').click(function(e) {
	e.stopPropagation();
        e.preventDefault();
        $('#cartupdateform').submit();
});

$("select[name='shipopt']").change(function(e) {
        e.stopPropagation();
        e.preventDefault();
        $('#cartupdateform').submit();
});
$('input.afronden').click( function (e) {
	e.preventDefault();
	e.stopPropagation();
	$("input[name='command']").attr('value','create_order');
	$('#cartupdateform').submit();
});

cartitem_remove = function (id) {
	$('#cartitem_count_'+id).val('0');	
	$('#cartupdateform').submit();
}

$('#order_same_addresses').click(function(event) { 
	if($('#order_same_addresses:checked').val()) {
		$('div.afleveradres').css('display','none');
		$('div.factuuradres').css('display','none');
	} else {
		$('div.afleveradres').css('display','block');
		$('div.factuuradres').css('display','block');
	}
})

$('#order_form').submit(function(event) {

	var valid = true;
	$("#gb_gegevens input.req").each(function () {
		$(this).removeClass('error');
		var val = $(this).val();
		val = $.trim(val);

		if(val.length == 0) {
			valid = false;
			$(this).addClass('error');
		} else if($(this).hasClass('emailaddress')) {
			var emailPattern = /^([A-Za-z0-9_\+\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if(!emailPattern.test($(this).val())) {
				$(this).addClass('error');
				event.preventDefault();
				event.stopPropagation();
				alert("Het ingevulde emailadres is incorrect.");
				valid = false;
				return false;
			}
		} else if($(this).hasClass('phone')) {
                        var phonePattern = /^[0-9 -_]+$/;
                        if(!phonePattern.test($(this).val()) || phonePattern.length < 10) {
                                $(this).addClass('error');
                                event.preventDefault();
                                event.stopPropagation();
                                alert("Het telefoonnummer moet uit minstens 10 tekens bestaan.");
                                valid = false;
                                return false;
                        }
                } else if($(this).hasClass('name')) {
			var namePattern = /^[a-zA-Z -]+$/;
			if(!namePattern.test($(this).val())) {
				$(this).addClass('error');
                                event.preventDefault();
                                event.stopPropagation();
                                alert("Een naam mag alleen uit letters en spaties bestaan");
                                valid = false;
                                return false;
			}
		} else if($(this).hasClass('street')) {
                        var namePattern = /[a-zA-Z]+/;
                        if(!namePattern.test($(this).val())) {
                                $(this).addClass('error');
                                event.preventDefault();
                                event.stopPropagation();
                                alert("Een straatnaam moet in ieder geval een aantal letters bevatten");
                                valid = false;
                                return false;
                        }
                } else if($(this).hasClass('city')) {
                        var namePattern = /[a-zA-Z]+/;
                        if(!namePattern.test($(this).val())) {
                                $(this).addClass('error');
                                event.preventDefault();
                                event.stopPropagation();
                                alert("Een plaatsnaam moet in ieder geval een aantal letters bevatten");
                                valid = false;
                                return false;
                        }
                } 
	});
	if (!$("input[name='paymentmethod']:checked").val()) {
		event.preventDefault();
		event.stopPropagation();
		alert("U heeft geen betaalwijze gekozen");
		valid = false;
	}
	if(!valid) {
		alert("U heeft niet alle verplichte (*) velden ingevuld");
		event.preventDefault();
		event.stopPropagation();
		return false;
	}

	if(valid && !$('#order_same_addresses:checked').val()) { // afleveradres
		$("input.reqa").each(function () {
			if($(this).val().length == 0) {
				alert("U heeft niet alle verplichte (*) velden ingevuld");
				event.preventDefault();
				event.stopPropagation();
				valid = false;
				return false; // de each-loop stoppen
			}
		});
	}
	if(valid && ($("input[name='buyer_password1']").length != 0) && ($("input[name='buyer_password2']").length != 0)) {
		if($("input[name='buyer_password1']").val() != $("input[name='buyer_password2']").val()) {
			alert("De ingevulde wachtwoorden zijn niet gelijk");
			event.preventDefault();
                        event.stopPropagation();
			valid = false;
		}
	} 

	if(valid && $('#order_accept:checked').length == 0) {
		event.preventDefault();
	        event.stopPropagation();
                alert("Om te kunnen bestellen moet u onze algemene voorwaarden accepteren");
	}
});

$('input.datepicker').live('focusin', function(ev) {
        $(this).datepicker({'dateFormat':'yy-mm-dd'});
});


