/*****************************************************************

	blueCart E-Commerce 2007 - (c) 2007 Bergan Blue, Australia
	THIS IS COMMERCIAL SOFTWARE. DO NOT COPY/USE/SELL.
	
	Filename			: form-checkers.js (JavaScript)
	File Version		: 1.00.00
	File Summary		: JavaScript Library to handle all form checking
	
	Developed by		: Jon Bergan <jbergan@berganblue.com.au>
	Creation Date		: 25 Sep 2007
	
	Modifications		: None
	
*****************************************************************/

function checkAdminCustomFieldForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('customFieldName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Custom Field Name\n";
	}

	if (document.getElementById('customFieldText').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Field Caption Text\n";
	}

	if (document.getElementById('customFieldOptionTotal').disabled != true)
	{
		if (document.getElementById('customFieldOptionTotal').value == "") {
			err = 1;
			alertmsg = alertmsg+"- Total Number of Answers\n";
		}

		if (document.getElementById('customFieldOptionTotal').value <= 0) {
			err = 1;
			alertmsg = alertmsg+"- Total Number of Answers must be greater than zero\n";
		}
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminShippingValueForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('shippingValueName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Shipping Value Name\n";
	}

	enableFactorFields();

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminShippingMethodForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('shippingMethodName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Shipping Method Name\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminBlacklistForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('blacklistData').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Blacklist Ban Mask\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminPaymentOptionsForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('paymentName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Payment Option Name\n";
	}

	if (document.getElementById('paymentType').value <= 0)	{
		err = 1;
		alertmsg = alertmsg+"- Payment Option Type\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminGiftVouchersForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('voucherName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Voucher Name\n";
	}

	if (document.getElementById('voucherAmount').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Voucher Total Amount\n";
	}

	if (document.getElementById('voucherCouponCode').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Voucher Coupon Code\n";
	}

	if (document.getElementById('voucherNeverExpires').checked != true)
	{
		if (document.getElementById('voucherExpiryDate').value == "")
		{
			err = 1;
			alertmsg = alertmsg+"- Voucher Expiry Date must be specified\n";
		}
	}
	
	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminDiscountsForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('discountName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Discount Name\n";
	}

	if (document.getElementById('discountNeverExpires').checked != true)
	{
		if (document.getElementById('discountExpiryDate').value == "")
		{
			err = 1;
			alertmsg = alertmsg+"- Discount Expiry Date must be specified\n";
		}
	}
	
	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminOwnerDetailsForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('configOwnerName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Owner's Full Name\n";
	}

	if (document.getElementById('configBusinessName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Business Name\n";
	}

	if (document.getElementById('configBusinessABN').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Business ABN\n";
	}

	if (document.getElementById('configOwnerPhone1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Primary Phone/Contact Number\n";
	}

	if (document.getElementById('configOwnerMobile').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Store Owner's Mobile Number\n";
	}

	if (document.getElementById('configOwnerEmailAddress').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Store Owner's Direct Email Address\n";
	}

	if (document.getElementById('configOwnerWebsite').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Store Owner's Website Address\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminMasterConfigForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('configStoreName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Online Store Name/Business Name\n";
	}

	if (document.getElementById('configStoreURL').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Online Store URL/Website Address\n";
	}

	if (document.getElementById('configDefaultPageTitle').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Default Page Title\n";
	}

	if (document.getElementById('configDefaultPageTitlePrefix').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Default Page Title Prefix\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}


function checkAdminAddProductOptionsForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('optionText').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Option Text / Name\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminAddProductOptionGroupForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('groupName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Group/Template Name\n";
	}
	
	if (document.getElementById('groupDescription').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Group/Template Description\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminGroupForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('groupName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Group Name\n";
	}

	if (document.getElementById('groupDescription').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Group Description\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminCategoryForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('categoryName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Category Name\n";
	}

	if (document.getElementById('categorySlug').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Category URL Slug\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminProductForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('productName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product Name\n";
	}

	if (document.getElementById('productNumber').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product Number\n";
	}

	if (document.getElementById('productSlug').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product URL Slug\n";
	}

	if (document.getElementById('productShortDescription').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product Short Description\n";
	}

	if (document.getElementById('productPrice').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product Price\n";
	}

	if (document.getElementById('productCategories').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Product Categories\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAdminUserForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('username').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Username\n";
	}

	if (document.getElementById('firstName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- First Name\n";
	}

	if (document.getElementById('lastName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Last Name\n";
	}

	if (document.getElementById('emailAddress').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Email Address\n";
	}

	if (document.getElementById('phoneNumber1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Contact Phone Number\n";
	}

	if (document.getElementById('postalAddressLine1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Address Line 1\n";
	}

	if (document.getElementById('postalCity').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - City\n";
	}

	if (document.getElementById('postalState').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - State\n";
	}

	if (document.getElementById('postalPostcode').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Postcode\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkNewUserForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;
	
	var cfCount = 1;
	var cfCount2 = 1;
	var cfError = 0;
	var cfError2 = 0;
	var cfErrorArrayCount = 0;
	var cfErrorArray = new Array();

	if (document.getElementById('username').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Username\n";
	}

	if (document.getElementById('username').value.indexOf(" ") != -1) {
		err = 1;
		alertmsg = alertmsg+"- Your username cannot contain spaces\n";
	}

	if (document.getElementById('username').value.indexOf("!") != -1 
		|| document.getElementById('username').value.indexOf("@") != -1 
		|| document.getElementById('username').value.indexOf("#") != -1 
		|| document.getElementById('username').value.indexOf("$") != -1 
		|| document.getElementById('username').value.indexOf("\\") != -1 
		|| document.getElementById('username').value.indexOf("/") != -1 
		|| document.getElementById('username').value.indexOf("?") != -1 
		|| document.getElementById('username').value.indexOf("%") != -1 
		|| document.getElementById('username').value.indexOf("^") != -1 
		|| document.getElementById('username').value.indexOf("&") != -1 
		|| document.getElementById('username').value.indexOf("*") != -1 
		|| document.getElementById('username').value.indexOf("(") != -1 
		|| document.getElementById('username').value.indexOf(")") != -1 
		|| document.getElementById('username').value.indexOf("+") != -1 
		|| document.getElementById('username').value.indexOf("=") != -1 
		|| document.getElementById('username').value.indexOf(";") != -1 
		|| document.getElementById('username').value.indexOf(";") != -1 
		|| document.getElementById('username').value.indexOf("\"") != -1 
		|| document.getElementById('username').value.indexOf("'") != -1 
		|| document.getElementById('username').value.indexOf(",") != -1 
		|| document.getElementById('username').value.indexOf("<") != -1 
		|| document.getElementById('username').value.indexOf(">") != -1 
		|| document.getElementById('username').value.indexOf(":") != -1) {
		err = 1;
		alertmsg = alertmsg+"- Your username cannot contain odd characters\n";
	}

	if (document.getElementById('password').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Password\n";
	}

	if (document.getElementById('password').value.length < 6) {
		err = 1;
		alertmsg = alertmsg+"- Password must be atleast six characters\n";
	}

	if (document.getElementById('password').value != document.getElementById('passwordConfirm').value) {
		err = 1;
		alertmsg = alertmsg+"- Password and Confirmation Password do not match\n";
	}

	if (document.getElementById('firstName').value == "") {
		err = 1;
		alertmsg = alertmsg+"- First Name\n";
	}

	if (document.getElementById('lastName').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Last Name\n";
	}

	if (document.getElementById('emailAddress').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Email Address\n";
	}
	
	if (document.getElementById('emailAddress').value != document.getElementById('confirmEmailAddress').value) {
		err = 1;
		alertmsg = alertmsg+"- Email Address and Confirm Email Address must be the same\n";
	}

	if (document.getElementById('phoneNumber1').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Contact Phone Number\n";
	}

	if (document.getElementById('postalAddressLine1').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Address Line 1\n";
	}

	if (document.getElementById('postalCity').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Postal Address - City\n";
	}

	if (document.getElementById('postalState').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Postal Address - State\n";
	}

	if (document.getElementById('postalPostcode').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Postcode\n";
	}

	// Check Custom Fields if they exist
	while (document.getElementById('customFieldId'+cfCount))
	{
		cfCount2 = 1;
		cfError2 = 0;

		if (document.getElementById('customFieldRequired'+cfCount).value == true)
		{
			if (document.getElementById('customFieldType'+cfCount).value == "FIELD")
			{
				// Check standard text field
				if (document.getElementById('customField'+cfCount).value == "")
				{
					cfError = 1;

					cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;		
					cfErrorArrayCount++;
				}
			}
			else if (document.getElementById('customFieldType'+cfCount).value == "TEXTAREA")
			{

				// Check TEXTAREA text field
				if (document.getElementById('customField'+cfCount).value == "")
				{
					cfError = 1;

					cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
					cfErrorArrayCount++;
				}

			} else {
			
				// Check checkboxes and radios
				if (document.getElementById('customField'+cfCount+'-'+cfCount2))
				{
					cfError2 = 1;
				
					while (document.getElementById('customField'+cfCount+'-'+cfCount2))
					{
						if (document.getElementById('customField'+cfCount+'-'+cfCount2).checked)
							cfError2 = 0;

						cfCount2++;
					}
				
					if (cfError2 == 1)
					{
						cfError = 1;
					
						cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
						cfErrorArrayCount++;
					}

				} else {

					// check select dropdowns
					if (document.getElementById('customField'+cfCount).value == "-1")
					{
						cfError = 1;

						cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
						cfErrorArrayCount++;
					}
				}
			}
		}
		
		cfCount++;
	}

	if (cfError == 1)
	{
		err = 1;
		
		for (i=0; i<cfErrorArray.length; i++)
			alertmsg = alertmsg+"- "+cfErrorArray[i]+"\n";
	}
	
	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkUserDetailsForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('password').value != "")
	{
		if (document.getElementById('password').value.length < 6) {
			err = 1;
			alertmsg = alertmsg+"- Your new password must be atleast six characters\n";
		}
	}
	
	if (document.getElementById('password').value != document.getElementById('passwordConfirm').value)	{
		err = 1;
		alertmsg = alertmsg+"- Password and Confirmation Password do not match\n";
	}

	if (document.getElementById('firstName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- First Name\n";
	}

	if (document.getElementById('lastName').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Last Name\n";
	}

	if (document.getElementById('emailAddress').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Email Address\n";
	}

	if (document.getElementById('phoneNumber1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Contact Phone Number\n";
	}

	if (document.getElementById('postalAddressLine1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Address Line 1\n";
	}

	if (document.getElementById('postalCity').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - City\n";
	}

	if (document.getElementById('postalState').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - State\n";
	}

	if (document.getElementById('postalPostcode').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postal Address - Postcode\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkAddressBookForm()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	if (document.getElementById('addressDescription').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Address Description\n";
	}

	if (document.getElementById('addressLine1').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Address Line 1\n";
	}

	if (document.getElementById('addressCity').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- City\n";
	}

	if (document.getElementById('addressState').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- State\n";
	}

	if (document.getElementById('addressPostcode').value == "")	{
		err = 1;
		alertmsg = alertmsg+"- Postcode\n";
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkFormCheckoutStep1()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;
	
	var cfCount = 1;
	var cfCount2 = 1;
	var cfError = 0;
	var cfError2 = 0;
	var cfErrorArrayCount = 0;
	var cfErrorArray = new Array();

	if (document.getElementById('orderFirstName').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Recipient's First Name\n";
	}

	if (document.getElementById('orderLastName').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Recipient's Last Name\n";
	}

	if (document.getElementById('orderShippingAddressLine1').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Shipping Address - Address Line 1\n";
	}

	if (document.getElementById('orderShippingCity').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Shipping Address - City\n";
	}

	if (document.getElementById('orderShippingState').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Shipping Address - State\n";
	}

	if (document.getElementById('orderShippingPostcode').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Shipping Address - Postcode\n";
	}

	if (document.getElementById('orderShippingCountry').value == "") {
		err = 1;
		alertmsg = alertmsg+"- Shipping Address - Country\n";
	}

	if (document.getElementById('orderRequestedDeliveryDate'))
	{
		if (document.getElementById('orderRequestedDeliveryDate').value == "") {
			err = 1;
			alertmsg = alertmsg+"- Requested Delivery Date\n";
		}
	}
	
	// Check Custom Fields if they exist
	while (document.getElementById('customFieldId'+cfCount))
	{
		cfCount2 = 1;
		cfError2 = 0;

		if (document.getElementById('customFieldRequired'+cfCount).value == true)
		{
			if (document.getElementById('customFieldType'+cfCount).value == "FIELD")
			{
				// Check standard text field
				if (document.getElementById('customField'+cfCount).value == "")
				{
					cfError = 1;
	
					cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
					cfErrorArrayCount++;
				}

			}
			else if (document.getElementById('customFieldType'+cfCount).value == "TEXTAREA")
			{
				// Check TEXTAREA text field
				if (document.getElementById('customField'+cfCount).value == "")
				{
					cfError = 1;

					cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;	
					cfErrorArrayCount++;
				}

			} else {
			
				// Check checkboxes and radios
				if (document.getElementById('customField'+cfCount+'-'+cfCount2))
				{
					cfError2 = 1;
				
					while (document.getElementById('customField'+cfCount+'-'+cfCount2))
					{
						if (document.getElementById('customField'+cfCount+'-'+cfCount2).checked)
							cfError2 = 0;

						cfCount2++;
					}
					
					if (cfError2 == 1)
					{
						cfError = 1;
					
						cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
						cfErrorArrayCount++;
					}

				} else {

					// check select dropdowns
					if (document.getElementById('customField'+cfCount).value == "-1")
					{
						cfError = 1;

						cfErrorArray[cfErrorArrayCount] = document.getElementById('customFieldLabel'+cfCount).value;
						cfErrorArrayCount++;
					}
				}
			}
		}
		cfCount++;
	}

	if (cfError == 1)
	{
		err = 1;
		
		for (i=0; i<cfErrorArray.length; i++)
			alertmsg = alertmsg+"- "+cfErrorArray[i]+"\n";
	}
	
	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkFormCheckoutStep2()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	// Check if Delivery Method Radio buttons have been selected
	var checkDeliveryMethod = 0;

	if (document.forms.deliveryMethods.elements['deliveryMethod'].length)
	{
		for (i=0; i<=document.forms.deliveryMethods.elements['deliveryMethod'].length; i++)
			checkDeliveryMethod = (document.forms.deliveryMethods.elements['deliveryMethod'][i].checked) ? checkDeliveryMethod+1 : checkDeliveryMethod;
	
		if(checkDeliveryMethod == 0)
		{
			err = 1;
			alertmsg = alertmsg+"- Delivery Method\n";
		}	
	} else {
		if (document.getElementById('deliveryMethod').checked == false)
		{
			err = 1;
			alertmsg = alertmsg+"- Delivery Method\n";
		}
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}

function checkFormCheckoutStep3()
{
	var alertmsg = "You must complete all of the required fields before you can submit this form!\n\nPlease complete the following fields:\n\n";
	var err = 0;

	// Check that a payment method has been selected
	var checkPaymentMethod = 0;

	if (document.forms.paymentDetails.elements['paymentMethod'].length)
	{
		for (var i=0; i<document.forms.paymentDetails.elements['paymentMethod'].length; i++)
			checkPaymentMethod = (document.forms.paymentDetails.elements['paymentMethod'][i].checked) ? checkPaymentMethod+1 : checkPaymentMethod;
	
		if(checkPaymentMethod == 0)
		{
			err = 1;
			alertmsg = alertmsg+"- Please choose a Payment Method\n";
		}	
	} else {
		if (document.getElementById('paymentMethod').checked == false)
		{
			err = 1;
			alertmsg = alertmsg+"- Payment Method\n";
		}
	}

	if (document.getElementById('paymentData1'))
	{
		if (document.getElementById('paymentData1').value == -1) 
		{
			err = 1;
			alertmsg = alertmsg+"- Credit Card Type\n";
		}
	}

	if (document.getElementById('paymentData2'))
	{
		if (document.getElementById('paymentData2').value == "") 
		{
			err = 1;
			alertmsg = alertmsg+"- Credit Card Number\n";
		}
	}

	if (document.getElementById('paymentData3'))
	{
		if (document.getElementById('paymentData3').value == "") 
		{
			err = 1;
			alertmsg = alertmsg+"- Name on Credit Card\n";
		}
	}

	if (document.getElementById('paymentData4'))
	{
		if (document.getElementById('paymentData4').value == -1) 
		{
			err = 1;
			alertmsg = alertmsg+"- Card Expiry Date - Month\n";
		}
	}

	if (document.getElementById('paymentData5'))
	{
		if (document.getElementById('paymentData5').value == -1) 
		{
			err = 1;
			alertmsg = alertmsg+"- Card Expiry Date - Year\n";
		}
	}

	if (document.getElementById('paymentData6'))
	{
		if (document.getElementById('paymentData6').value == "") 
		{
			err = 1;
			alertmsg = alertmsg+"- Credit Card Verification (CCV) Number\n";
		}
	}

	if (err == 1)
	{
		alert(alertmsg);
		return false;
	} else {
		return true;
	}
}