$(document).ready(function(){
	var site = $('base').attr('href');

	$(".button").button();
	$(".highlight").addClass('ui-state-highlight');
	
	$(".button-state").addClass('ui-state-button');
	
	$('.editor input[type="text"]').keyup(function() {
		var f = $(this).attr('f');
		var v = $(this).val();
		
		$('#' + f).html(v);
	});
	
	
	jQuery.validator.addMethod(
		"selectNone",
		function(value, element) {
			if (element.value == ""){
				return false;
			}
			else return true;
		},
		"Kies een optie"
	);

	$("form").validate();
	
	$('input[name="transport"]').click(function(){
		var v = $(this).val();
		
		if(v == '1'){
			$('input[name="deli_street"]').removeClass('required');
			$('input[name="deli_streetnr"]').removeClass('required');
			$('input[name="deli_postalcode"]').removeClass('required');
			$('input[name="deli_city"]').removeClass('required');
		}else if(v == '2'){
			$('input[name="deli_street"]').addClass('required');
			$('input[name="deli_streetnr"]').addClass('required');
			$('input[name="deli_postalcode"]').addClass('required');
			$('input[name="deli_city"]').addClass('required');
		}
	});
	
	$('#copyBill').click(function(){
		$('input[name="bill_street"]').val( $('input[name="street"]').val() );
		$('input[name="bill_streetnr"]').val( $('input[name="streetnr"]').val() );
		$('input[name="bill_streetadd"]').val( $('input[name="streetadd"]').val() );
		$('input[name="bill_postalcode"]').val( $('input[name="postalcode"]').val() );
		$('input[name="bill_city"]').val( $('input[name="city"]').val() );
	});


	$('#fastChoice').change(function(){
		var t = $(this).val();
		window.location = 'http://www.flyersonline.nl/'+t+'/';
	});
	
	
	$('#group').change(function(){
		var t = $(this).val();
		window.location = 'http://www.flyersonline.nl/'+t;
	});
	
	
	
	
	$('#leverdata').change(function(){
		process();
	});
	
	
	if( $('input#leverdata').length ){
		process();
	}
	if( $('#doProcess').length ){
		process();
	}
	
	
	
	var lengte = $('#productencarousel li').width() * $('#productencarousel li').length;
	var margin = $('#productencarousel li').length * 20;
	$('#productencarousel ul').css({'width':lengte+margin});	
	
});



function process(){
	var site = $('base').attr('href');
	var edit = false;
	
	if($('#leverdata').val() == '0'){ $('#productdisc .hide').hide(); return false; }
	
	if( $('#edit').length ){ edit = true; }
	
	var params = {
		leverdata : $('#leverdata').val(),
		product_id : $('#product_id').val()
	}
	
	$.ajax({
		type: 'POST',
		cache: false,
		url: site + 'api/leverdata/',
		data: params,
		dataType: 'json',
		success: function(data) {
			$('#productdisc .hide').show();
			
			processFields('quantity','#aantal',data.aantal,edit,false,false);
			processFields('weight','#gewicht',data.gewicht,edit,false,' grams');
			processFields('finish','#lak',data.lak,edit,false,false);
			processFields('size','#formaat',data.formaat,edit,true,false);
			processFields('type','#papiersoort',data.papiersoort,edit,false,false);
			processFields('sides','#bedrukking',data.bedrukking,edit,false,false);
			processFields('pages','#paginas',data.paginas,edit,false,false);
			processFields('sheets','#vellen',data.vellen,edit,false,false);
			
			getAddition('size');
			getPrice();
			
		}
	});	
}





function processFields(name,element,tocheck,edit,addition,default_extra){
	if(tocheck.total >= 2){
		var p = '<select name="'+name+'" id="'+name+'" class="changer" onchange="getAddition(\''+name+'\');getPrice();">';
		
		
		$.each(tocheck.values, function(key, val) {
			p += '<option value="'+val.id+'"';
			if(edit){
				if($(element).attr('v') == val.id){
					p += 'selected="selected"';
				}
			}
			
			p += '>'+val.content+'</option>';
		});
		
		p += '</select>';
		
		if(default_extra){
			p += default_extra;
		}
		
		if(addition){
			p += '<span style="margin-left: 20px;" id="addition_'+name+'"></span>';
		}
		
		$(element+' div').html(p);
	}else{
		var p = '<span class="dark">'+tocheck.values[0].content+'</span><input type="hidden" name="'+name+'" id="'+name+'" value="'+tocheck.values[0].id+'">';

		if(default_extra){
			p += default_extra;
		}
		
		
		if(addition){
			p += '<span style="margin-left: 20px;" id="addition_'+name+'"></span>';
		}
		
		
		$(element+' div').html(p);
	}
	return true;
}









function calPrice(){
	var amount = parseFloat($('#amounttoPayInvis').html());
	var sum = parseInt($('#custom_quantity').val()) * amount;
	
	$('#amounttoPay').html(sum + ',00');
}

function getPrice(custom){
	var params = $('#finish, #quantity, #weight, #size, input[name=product]').serializeArray();
	
	var params = {
		finish : $('#finish').val(),
		quantity : $('#quantity').val(),
		weight : $('#weight').val(),
		size : $('#size').val(),
		type : $('#type').val(),
		sides : $('#sides').val(),
		pages : $('#pages').val(),
		sheets : $('#sheets').val(),
		deliver : $('#leverdata').val(),
		product_id : $('input[name=product]').val()
	}
	
	if(params['quantity'] == '35'){
		if( $('#custom_quantityedit').length ){
			var edit = $('#custom_quantityedit').html();
		}else{
			var edit = '';
		}
		$('<span id="custom_quantityspan">aantal: </span><input id="custom_quantity" name="quantity_custom" onblur="calPrice()" class="number required" value="'+ edit +'" type="text" style="width: 50px; padding: 2px 5px;" /><div class="clear"></div>').insertAfter('select#quantity');
	}else{
		$('#custom_quantity').remove();
		$('#custom_quantityspan').remove();
	}
	
	
	$('input#plaatsinwinkelwagen').attr('disabled', 'disabled').addClass('ui-button-disabled').addClass('ui-state-disabled');
	$('#amounttoPay').html('');
	$('li.prijs').append('<img src="/Content/Themes/flyersonline/images/loader.gif" style="margin-left:10px;" />');
	
	$.ajax({
		url : '/ajax/pricing/',
		data : params,
		type : 'post',
		success : function(data) {
			if(data == '') {
				$('#amounttoPay').html('Combinatie niet gevonden');
				$('#plaatsinwinkelwagen').attr('disabled', 'disabled').addClass('ui-button-disabled').addClass('ui-state-disabled');
			}else{
				$('#amounttoPay').html(data);
				$('#amounttoPayInvis').html(data);
				
				if(custom == true){
					calPrice();
				}
				$('#plaatsinwinkelwagen').removeAttr('disabled').removeClass('ui-button-disabled').removeClass('ui-state-disabled');

			}
			$('li.prijs img').remove();
		}
	});
	
}



function getAddition(id){
	if($('#addition_'+id).length){
		$('#addition_'+id).html('<img src="/Content/Themes/flyersonline/images/loader.gif" style="margin-left:10px;" />');
		
		var params = {
			type : id,
			value : $('#'+id).val()
		}

		$.ajax({
			url : '/ajax/addition/',
			data : params,
			type : 'post',
			success : function(data) {
				if(data !== '') {
					$('#addition_'+id).html(data);
				}else{
					$('#addition_'+id).html('');
				}
			}
		});	
	}
}



