var ppPrice = 29.95;
var ukDeliveryCost = 5.05;
var euDeliveryCost = 7.05;
var usDeliveryCost = 10.05;
var wwDeliveryCost = 10.05;
var total = 0;
function getDeliveryCostPerItem(alocation)
{
   switch (alocation) {
			case '--':
				return '--';
			break;
			case 'UK':
				return 5.05;
			break;
			case 'EU':
				return 7.05;
			break;
		    case 'US':
				return 10.05;
			break;
			case 'WW':
				return 10.05;
			break;
	}
	return '--';
}

function setOrderValues(alocation)
{
	switch (alocation) {
			case 'UK':
				currentQuantity = parseInt($('#qvalue').text());
				totalForDelivery = currentQuantity * ukDeliveryCost;
				$('#pandp').val(totalForDelivery.toFixed(2).toString());
				$('#totXitem').text('\u00A3' + ' ' + ukDeliveryCost.toString());
				total = (currentQuantity * ppPrice) + totalForDelivery;
			break;
			case 'EU':
				currentQuantity = $('#qvalue').text();
				totalForDelivery = currentQuantity * euDeliveryCost;
				$('#pandp').val(totalForDelivery.toFixed(2).toString());
				$('#totXitem').text('\u00A3' + ' ' + euDeliveryCost.toString());
				total = (currentQuantity * ppPrice) + totalForDelivery;
			break;
		    case 'US':
				currentQuantity = $('#qvalue').text();
				totalForDelivery = currentQuantity * usDeliveryCost;
				$('#pandp').val(totalForDelivery.toFixed(2).toString());
				$('#totXitem').text('\u00A3' + ' ' + usDeliveryCost.toString());
				total = (currentQuantity * ppPrice) + totalForDelivery;
			break;
			case 'WW':
				currentQuantity = $('#qvalue').text();
				totalForDelivery = currentQuantity * wwDeliveryCost;
				$('#pandp').val(totalForDelivery.toFixed(2).toString());
				$('#totXitem').text('\u00A3' + ' ' + wwDeliveryCost.toString());
				total = (currentQuantity * ppPrice) + totalForDelivery;
			break;
		}
		$('#tot4del').text('\u00A3' + ' ' + totalForDelivery.toFixed(2).toString());
		$('#order_total').text('\u00A3' + ' ' + total.toFixed(2).toString());
		$('#ototal').val(total.toFixed(2).toString());
}

// ON DOM READY ONLY
$(function(){
	var checkboxState = $('#dcopy:checked').val();
	var quantity = parseInt($('#qvalue').text());
	$('#bil_location').val('--');
	$('#del_location').val('--');
	$('#quant').val(quantity.toString());
	$('#pandp').val('--');
	$('#ototal').val('--');
	if(checkboxState != "docopy")
	{
		$('#delivery_box').hide();
	}
	$('#dcopy').bind('click', function(){
		var checkboxState = $('#dcopy:checked').val();
		if(checkboxState == "docopy")
		{
			$('#delivery_box').show();
		} else
		{
			$('#delivery_box').hide();
		}
	});
	
	$('#blocation').bind('change', function(){
		//var locationCode = $(event.target).val();
		var locationCode = $(this).val();
		var totalForDelivery = 0;
		var delPricePerItem = 0;
		var checkboxState = $('#dcopy:checked').val();
		switch (locationCode)
		{
			case '--':
				$('#ukselect').hide();
				$('#euselect').hide();
				$('#usaselect').hide();
				$('#wwselect').hide();
				$('#ukcounty_row').hide();
				$('#del_location').val('--');
				$('#dloc').text('--');
				$('#totXitem').text('--');
				$('#tot4del').text('--');
				$('#bil_location').val('--');
				$('#del_location').val('--');
				$('#order_total').text('--');
			break;
			case 'UK':
				$('#ukselect').show();
				$('#euselect').hide();
				$('#usaselect').hide();
				$('#wwselect').hide();
				// add field for county
				$('#ukcounty_row').show();
				$('#bil_location').val('UK');
				if (checkboxState != 'docopy')
				{
					$('#del_location').val('UK');
				}
				$('#dloc').text('United Kingdom');
				setOrderValues(locationCode);
			break;
			case 'EU':
				$('#euselect').show();
				$('#ukselect').hide();
				$('#usaselect').hide();
				$('#wwselect').hide();
				$('#ukcounty_row').hide();
				$('#bil_location').val('EU');
				if (checkboxState != 'docopy')
				{
					$('#del_location').val('EU');
				}
				$('#dloc').text('Europe');
				setOrderValues(locationCode);
			break;
		    case 'US':
				$('#usaselect').show();
				$('#euselect').hide();
				$('#ukselect').hide();
				$('#wwselect').hide();
				$('#ukcounty_row').hide();
				$('#bil_location').val('US');
				if (checkboxState != 'docopy')
				{
					$('#del_location').val('US');
				}
				$('#dloc').text('United States of America');
				setOrderValues(locationCode);
			break;
			case 'WW':
				$('#wwselect').show();
				$('#usaselect').hide();
				$('#euselect').hide();
				$('#ukselect').hide();
				$('#ukcounty_row').hide();
				$('#bil_location').val('WW');
				if (checkboxState != 'docopy')
				{
					$('#del_location').val('WW');
				}
				$('#dloc').text('Rest of the world');
				setOrderValues(locationCode);
			break;
		}
	});
	
	$('#dlocation').bind('change', function(event){
		var locationCode = $(event.target).val()
		switch (locationCode)
		{
			case '--':
				$('#dukselect').hide();
				$('#deuselect').hide();
				$('#dusaselect').hide();
				$('#dwwselect').hide();
				$('#dukcounty_row').hide();
				$('#del_location').val('--');
				$('#dloc').text('--');
				$('#totXitem').text('--');
				$('#tot4del').text('--');
				$('#del_location').val('--');
			break;
			case 'UK':
				$('#dukselect').show();
				$('#deuselect').hide();
				$('#dusaselect').hide();
				$('#dwwselect').hide();
				// add field for county
				$('#dukcounty_row').show();
				$('#del_location').val('UK');
				$('#dloc').text('United Kingdom');
				setOrderValues(locationCode);
			break;
			case 'EU':
				$('#deuselect').show();
				$('#dukselect').hide();
				$('#dusaselect').hide();
				$('#dwwselect').hide();
				$('#dukcounty_row').hide();
				$('#del_location').val('EU');
				$('#dloc').text('Europe');
				setOrderValues(locationCode);
			break;
		    case 'US':
				$('#dusaselect').show();
				$('#deuselect').hide();
				$('#dukselect').hide();
				$('#dwwselect').hide();
				$('#dukcounty_row').hide();
				$('#del_location').val('US');
				$('#dloc').text('United States of America');
				setOrderValues(locationCode);
			break;
			case 'WW':
				$('#dwwselect').show();
				$('#dusaselect').hide();
				$('#deuselect').hide();
				$('#dukselect').hide();
				$('#dukcounty_row').hide();
				$('#del_location').val('WW');
				$('#dloc').text('Rest of the world');
				setOrderValues(locationCode);
			break;
		}
	});
	
	$('#qplus').bind('click', function(event){
		var currentQuantity = parseInt($('#qvalue').text());
		currentQuantity++;
		$('#qvalue').text(currentQuantity.toString());
		var newPrice = ppPrice * currentQuantity;
		$('#total').text(newPrice.toFixed(2).toString());
		$('#quant').val(currentQuantity.toString());
		if ($('#del_location').val() != '--')
		{
			var perItemCost = getDeliveryCostPerItem($('#del_location').val());
			var newDelTotal = currentQuantity * perItemCost;
			$('#tot4del').text('\u00A3' + ' ' + newDelTotal.toFixed(2).toString());
			total = (currentQuantity * ppPrice) + newDelTotal;
			$('#order_total').text('\u00A3' + ' ' + total.toFixed(2).toString());
			$('#pandp').val(newDelTotal.toFixed(2).toString());
			$('#ototal').val(total.toFixed(2).toString());
		}
	});
	
	$('#qminus').bind('click', function(event){
		var currentQuantity = parseInt($('#qvalue').text());
		if (currentQuantity > 1)
		{
			currentQuantity--;
			$('#qvalue').text(currentQuantity.toString());
			var newPrice = ppPrice * currentQuantity;
			$('#total').text(newPrice.toFixed(2).toString());
			$('#quant').val(currentQuantity.toString());
			if ($('#del_location').val() != '--')
			{
				var perItemCost = getDeliveryCostPerItem($('#del_location').val());
				var newDelTotal = currentQuantity * perItemCost;
				$('#tot4del').text('\u00A3' + ' ' + newDelTotal.toFixed(2).toString());
				total = (currentQuantity * ppPrice) + newDelTotal;
				$('#order_total').text('\u00A3' + ' ' + total.toFixed(2).toString());
				$('#pandp').val(newDelTotal.toFixed(2).toString());
				$('#ototal').val(total.toFixed(2).toString());
			}
		} else
		{
			$.prompt('Quantity cannot be less than 1');
			$('#qvalue').text('1');
		}
	});
	
	// prepare Options Object for Ajax Submit
    var options = { 
    	dataType:   'json',
    	success : function(response){
    				if(response.result == 'OK')
    				{
    					$('#content_panel').html(response.ordersummary);
    					$('#qplus').remove();
    					$('#qminus').remove();
    					$('.notes').remove();
    				} 
    				else
    				{
    					$.prompt(response.note);
    				}
    			},
        clearForm: false
    };
    $('#pp_orderform').submit(function(){
     	function mycallbackfunc(v,m,f){
      		if (v) {$('#pp_orderform').ajaxSubmit(options);}
		}
    	$.prompt('Please confirm form data is correct before submitting', { buttons: { Ok: true, Cancel: false }, callback: mycallbackfunc } );
        return false; 
    });
})
