function validateForm() {
	var msg = "";
	
	// Check the terms and conditions checkbox
	//var terms = document.getElementById("bAgree");
	//if (!terms.checked) {
		//msg += "You must first agree to the terms and conditions";
	//} else {
			
		// Validate the firstName
		var firstName = document.getElementById("bAdr1");
		if (firstName.value == "" || firstName.value == firstName.defaultValue ) {
			msg += _FirstNameValidationText + "<br>\n";
		}
		
		// Validate the lastName
		var lastName = document.getElementById("bAdr3");
		if (lastName.value == "" || lastName.value == lastName.defaultValue ) {
			msg += _LastNameValidationText + "<br>\n";
		}
		
		// Validate the streetAddress
		var streetAddress = document.getElementById("bAdr5");
		if (streetAddress.value == "" || streetAddress.value == streetAddress.defaultValue ) {
			msg += _StreetAddressValidationText + "<br>\n";
		}
			
		// Validate the city
		var city = document.getElementById("bAdr7");
		if (city.value == "" || city.value == city.defaultValue ) {
			msg += _SuburbValidationText + "<br>\n";
		}
	
		// Validate the email
		var email = document.getElementById("bEmail").value;
		if (email != "") {
			var emailRegExp = "^[\\w-]+(?:\\.[\\w-]+)*@(?:[\\w-]+\\.)+[a-zA-Z]{2,7}$";
			var regExp = new RegExp(emailRegExp);
			if (!regExp.test(email) && email.length == 0) {
				msg += _EmailValidationText + "<br>\n";
			}
		}
		
		// Validate the telephone
		var telObj = document.getElementById("bTelephone");
		telObj.value = removeNonNumericCharacters(telObj.value);
		if (telObj.value.length != 0 && telObj.value.length != 10) {
			msg += _TelephoneValidationText + "<br>\n";
		}
		
		// Validate the zip code
		var zipObj = document.getElementById("bZip");
		zipObj.value = removeNonNumericCharacters(zipObj.value);
		if ((zipObj.value.length < 4) || (zipObj.value.length > 6)) {
			msg += _ZipCodeValidationText + "<br>\n";
		}
	

	if (msg != "") {
		document.getElementById("errorMessageText").innerHTML = "<b>" + _ErrorMessageText + "</b><br><br>" + msg;
		document.getElementById("errorMessage").style.visibility = "visible";
		return false;
	}

	return true;
}

function validateStep2() {
	var msg = "";
	
	var cc_hn = document.getElementById("cc_holder_name");
	var cc_no = document.getElementById("cc_no");
	
	if (cc_hn.value == "" || cc_hn.value == cc_hn.defaultValue)
		msg += _CreditCardHolderNameValidationText;

	if (cc_no.value.length != 16 || !validModule10(cc_no.value))
		msg += _CreditCardNumberValidationText + "<br>\n";

	var monthform = document.getElementsByName("cc_expire_month").value;
	var yearform = document.getElementsByName("cc_expire_year").value;
	if (!validateDate(monthform, yearform))
		msg += _ExpirationDateValidationText+ "<br>\n";
       
	if (msg != "") {
		document.getElementById("errorMessageText").innerHTML = "<b>" + _ErrorMessageText + "</b><br><br>" + msg;
		document.getElementById("errorMessage").style.visibility = "visible";
		return false;
	}

	return true;
}

function validateDate(objMonth, objYear) {
	var todayDate = new Date();
	var year = todayDate.getFullYear();
	var month = todayDate.getMonth() + 1;
	
	var strSelectedDate = objYear + objMonth;
	var strTodayDate = year + (month < 10 ? "0" + month : month);
	
	if (parseInt(strSelectedDate, 10) < parseInt(strTodayDate, 10))
		return false;

	return true;
}

function removeNonNumericCharacters(inputText) {
	var tempText = "";
	for (i = 0; i <= inputText.length; i++) {
		var tempCharacter = inputText.charAt(i);
		if ((!isNaN(tempCharacter)) && (tempCharacter != " ")) {
			tempText += tempCharacter;
		}
	}
	return tempText;
}

function validModule10(ccNumber) {
	ccNumber = ccNumber + "";
	sum = 0;
	var paren = 0;
	try {
		for (i = ccNumber.length; i > 0; i--) {
			broj = parseInt(ccNumber.charAt(i - 1), 10);
			if (paren) {
				broj = broj * 2;
				sum += parseInt(broj / 10);
				sum += broj % 10;
			} else {
				sum += broj;
			}
			paren = paren ^ 1;
		}
		if ((sum % 10) == 0) {
			return true;
		} else {
			return false;
		}
	}
	catch (e) {
		return false;
	}
}
