// Functions
debug = true

function debugMessage(message) {
	if (debug) {
		console.log(message);
	}
}
function cartAdd(sku) {
	if (sku) {
		$('#cartAdd' + sku).parent().fadeOut(250,function(){
			$.post('/function/add.php', { sku: sku }, function(response){
				if (response) {
					cartAddContainer = $('#cartAdd' + sku).parent();
					$(cartAddContainer).html(response);
					$(cartAddContainer).fadeIn(250);
				} else {
					alert('The system is not responding. Please try again.');
				}
			});
		});
	} else {
		alert('This item cannot be purchased online. Please contact us directly.');
	}
	return false;
}
function cartInitialize() {
	idPrefix = 'cartAdd';
	$('.cartAdd').click(function(){
		return cartAdd($(this).attr('id').substr(idPrefix.length));
	});
}

processing = false;
function verifyOrder() {
	requiredFields = Array('Name', 'Email', 'Telephone', 'Cardholder', 'Card_Number', 'CCV', 'Expiration_Month', 'Expiration_Year', 'Billing_Address_Line_1', 'Billing_Suburb', 'Billing_State', 'Billing_Postcode', 'Shipping_Recipient', 'Shipping_Address_Line_1', 'Shipping_Suburb', 'Shipping_State', 'Shipping_Postcode');
	fieldList = '';
	for (requiredField in requiredFields) {
		requiredFieldName = requiredFields[requiredField];
		requiredFieldValue = $('#'+requiredFields[requiredField]).val();
		if (!requiredFieldValue) {
			//alert('"'+$('#'+requiredFields[requiredField]).val()+'"');
			while (requiredFieldName.indexOf('_') != -1) {
				requiredFieldName = requiredFieldName.replace('_',' ');
			}
			fieldList += '- ' + requiredFieldName + '\n';
		}
	}
	if (fieldList) {
		alert('Please fill out the following fields:\n\n' + fieldList);
		return false;
	}
	//$('#confirm').attr('disabled', 'disabled');
	if (processing) {
		alert('We are processing your order. Please wait.');
		return false;
	} else {
		processing = true;
		$('#confirm').val('Processing Order...');
		return true;
	}
}
function cartEdit() {
	$('#orderForm').unbind('submit');
	$('#part2').slideUp('normal',function(){
		$('#cart-buttons').slideDown('normal');
		$('.cart-quantity-view').hide('normal');
		$('.cart-quantity-edit').show('normal');
	});
}
function cartCancel() {
	$('#cart-buttons').slideUp('normal',function(){
		$('.cart-quantity-edit').hide('normal');
		$('.cart-quantity-view').show('normal');
		$('#part2').slideDown('normal');
	});
}
function evaluateAddresses() {
	relevantFields = Array('Address_Line_1', 'Address_Line_2', 'Suburb', 'State', 'Postcode');
	for (relevantField in relevantFields) {
		if ($('#addressSame').attr('checked')) {
			$('#Shipping_' + relevantFields[relevantField]).val($('#Billing_' + relevantFields[relevantField]).val());
			$('#Shipping_' + relevantFields[relevantField]).attr('disabled','disabled');
		} else {
			$('#Shipping_' + relevantFields[relevantField]).removeAttr('disabled');
		}
	}
}
// Initialization
$(document).ready(function(){
	$('.cart-edit').click(function(){
		cartEdit();
		return false;
	});
	$('#cart-cancel').click(function(){
		cartCancel();
		return false;
	});
	$('.addressCheck').change(evaluateAddresses);
	$('#orderForm').submit(function(){
		return verifyOrder();
	})
	cartInitialize();
});
