function calculateTotals(){
	
	var ticketCost = document.getElementById("costOfTickets") ;
	var numbTickets = document.getElementById("numTickets");
	var panelCost = document.getElementById("costOfPanels");
	var numbPanels = document.getElementById("numPanels"); 

	if(IsNumeric(numbTickets.value)){
		ticketCost.value = 425 * numbTickets.value;
		createNameBadges(numbTickets.value);
	}else{
		ticketCost.value = 0;
	}
	if(IsNumeric(numbPanels.value)){
		panelCost.value = 75 * numbPanels.value;	
	}else{
		panelCost.value = 0;
	}
	calculateSub();
}


function calculateSub(){
	
	var panelCost = document.getElementById("costOfPanels");
	var ticketCost = document.getElementById("costOfTickets");
	var subTotal = document.getElementById("subCost");
	
	subTotal.value = parseInt(panelCost.value) + parseInt(ticketCost.value);
	calculateTax();
	addDecimals(subTotal);
}
function calculateTax(){
	
	var subTotal = document.getElementById("subCost").value;
	var taxTotal = document.getElementById("taxes");
	var zipcode = document.getElementById("bill_postal_code");
	
	if(IsNumeric(zipcode.value)){
		taxTotal.value = 0; 
	}else{
		taxTotal.value = Number(subTotal) * .13;
	}
	addDecimals(taxTotal);
	calculateTotal();
}

function calculateTotal(){
	var subTotal = Number(document.getElementById("subCost").value);
	var taxTotal = Number(document.getElementById("taxes").value);
	var total = document.getElementById("charge_total");
	total.value = subTotal + taxTotal
	addDecimals(total);
	
}

function addDecimals(inputBox){
//Do to the fact that visa refuses to take amounts without two digit decimals ---yah i know----
    if(inputBox.value.indexOf(".")>-1){
		var x=inputBox.value.substring(inputBox.value.indexOf("."), inputBox.value.length);
		if(x.length < 3){
			inputBox.value += "0"
		}
	}else{
		inputBox.value = inputBox.value + ".00";
	}
}
function IsNumeric(sText)
{
	//receives a number and checks to see if it is numeric

   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         	IsNumber = false;
         }
      }
   return IsNumber;
   
}

function createNameBadges(numbBadges){
	clearBadges();
	var headerContainer = document.createElement("div");
	
	var container = document.getElementById("nameBadges");
	var headerTag = document.createElement("h4");
	var headerText = document.createTextNode("Name Badges");
    var clearUl = document.createElement("ul");
	clearUl.setAttribute('style','clear:both;');
	headerTag.appendChild(headerText);
	
	var leftCol = document.createElement("ul");
	leftCol.setAttribute('class','leftList');
	var headerElem = document.createElement("li");

	var txt1 = document.createElement('span');
	var txt2 = document.createElement('span');
	
	var txtHeader1 = document.createTextNode("Full Name");
	var txtHeader2 = document.createTextNode("Company Name");
	
	txt1.appendChild(txtHeader1);
	txt2.appendChild(txtHeader2);
	
	headerElem.appendChild(txt1);
	headerElem.appendChild(txt2);
	
    leftCol.appendChild(headerElem);
	
	var rightCol = document.createElement("ul");
	rightCol.setAttribute('class','rightList');
	var headerElem2 = document.createElement("li");
	var txtHeader2 = document.createTextNode("Company");
	headerElem2.appendChild(txtHeader2);
    rightCol.appendChild(headerElem2);
	
	container.appendChild(headerTag);

	for(var x = 0; x < numbBadges; x++){
		leftCol.appendChild(createNameBadge(x));
		leftCol.appendChild(createOptionHeader());
		leftCol.appendChild(createHopewellCheck(x));
		leftCol.appendChild(createCityHighlight(x));
	}
	container.appendChild(leftCol);
	
	
	createSubmitButton();
}
function clearBadges(){
	var badgeFields = document.getElementById("nameBadges");
	

	if ( badgeFields.hasChildNodes() )
	{
    	while ( badgeFields.childNodes.length >= 1 )
    	{
        	badgeFields.removeChild( badgeFields.firstChild );       
    	} 

	}
}
function createNameBadge(x){
	
	
	var currBadge = document.createTextNode(Number(x)+Number(1)+")");
	var badgeLabel = document.createElement("label");
	var nameInput = document.createElement("input");
	var listItem= document.createElement("li");
	
	badgeLabel.setAttribute('for', 'badgeInput'+x);
	badgeLabel.appendChild(currBadge);
	
	nameInput.setAttribute('id','badgeInput'+x);
	nameInput.setAttribute('type', 'text');
	nameInput.setAttribute('name', 'rvar_BadgeName'+x);
	
	var compName = document.createElement("input");
	
	compName.setAttribute('id', 'rvar_CompanyName'+x);
	compName.setAttribute('type', 'text');
	compName.setAttribute('name', 'rvar_CompanyName'+x);
	
	listItem.appendChild(badgeLabel);
	listItem.appendChild(nameInput);
	listItem.appendChild(compName);
	
	return listItem;
}

function makeBadge(x){
	

	
	
	if(x % 2 != 0){
		highlightDiv.appendChild(spacer);
		highlightDiv.appendChild(nameInput);
		highlightDiv.appendChild(badgeLabel);
		highlightDiv.appendChild(compName);
		container.appendChild(highlightDiv);
	}else{
		container.appendChild(spacer);
		container.appendChild(nameInput);
		container.appendChild(badgeLabel);
		container.appendChild(compName);
	}
}

function createSubmitButton(){
	var submitButton = document.createElement("input");
	var container = document.getElementById("nameBadges");
		
	submitButton.setAttribute('type','submit');
	submitButton.setAttribute('value', 'submit');
	submitButton.setAttribute('class', 'submit');
	
	container.appendChild(submitButton);
	
}
function checkForm(){
	var errorCheck = true;
	var errorString = "";
	if(document.getElementById("bill_first_name").value.length < 2){
		errorString += "Please Enter your First Name\n";
	}
	if(document.getElementById("bill_last_name").value.length < 2){
		errorString += "Please Enter your Last Name\n";
	}
	if(document.getElementById("bill_company_name").value.length <2){
		errorString += "Please Enter your Company Name\n";
	}
	if(document.getElementById("bill_address_one").value.length < 2){
		errorString += "Please Enter your Address\n";
	}
	if(document.getElementById("bill_city").value.length < 2){
		errorString += "Please Enter your City\n";
	}
	if(document.getElementById("bill_postal_code").value.length < 2){
		errorString += "Please Enter your Postal Code\n";
	}
	if(document.getElementById("bill_province_state").value.length < 2){
		errorString += "Please enter your Province or State\n";
	}
    if(document.getElementById("bill_country").value.length < 2){
		errorString += "Please enter your Country\n";
	}
	if(document.getElementById("bill_phone").value.length< 2){
		errorString += "Please enter your Phone Number\n";
	}
	if(document.getElementById("email").value.length < 2){
		errorString += "Please enter your Email Address\n";
	}
    if(errorString.length > 5){
		errorCheck = false;
		alert(errorString);
	}else{
		errorCheck = true;
	}
	
	return errorCheck;
}


function checkCheckBoxes(checkbox){
	//getting the element id number to determine appropriate checkbox to be unchecked
	var chkNumber = checkbox.id.substring(checkbox.id.length-1, checkbox.id.length);
	//this is the check to uncheck appropriate checkboxes
	if(checkbox.id == "rvar_hopewellrocks"+chkNumber+"" && checkbox.checked == true){
		document.getElementById('rvar_cityhighlights'+chkNumber+'').checked = false;
	}else if(checkbox.id == "rvar_cityhighlights"+chkNumber+"" && checkbox.checked == true){
		document.getElementById('rvar_hopewellrocks'+chkNumber+'').checked = false;
	}
}
function clearTickets(){
	var ticketInput = document.getElementById("numTickets");
	ticketInput.value = "";
	
}
function clearPanels(){
	var panelsInput = document.getElementById("numPanels");
	panelsInput.value = "";
}

function createOptionHeader(){
	var listItem = document.createElement("li");
	var listText = document.createTextNode("Please check an option for Bay of Fundy Experience");
	
	listItem.appendChild(listText);
	return listItem;
}

function createHopewellCheck(x){
	var listItem = document.createElement("li");
	var checkbox = document.createElement("input");
	var text = document.createTextNode("Hopewell Rocks");
	
	checkbox.setAttribute('type','checkbox');
	checkbox.setAttribute('class', 'checkbox');
	checkbox.setAttribute('id', 'rvar_hopewellrocks'+x);
	checkbox.setAttribute('name','rvar_hopewellrocks'+x);
	checkbox.setAttribute('onclick', 'checkCheckBoxes(this);');
	
	listItem.appendChild(checkbox);
	listItem.appendChild(text);
	
	return listItem;
}
function createCityHighlight(x){
	var checkbox = document.createElement("input");
	var text = document.createTextNode("City Higlights/Jetboat");
	var listItem = document.createElement("li")
	
	checkbox.setAttribute('type','checkbox');
	checkbox.setAttribute('class', 'checkbox');
	checkbox.setAttribute('id', 'rvar_cityhighlights'+x);
	checkbox.setAttribute('name','rvar_cityhighlights'+x);
	checkbox.setAttribute('onclick', 'checkCheckBoxes(this);');
	listItem.appendChild(checkbox);
	listItem.appendChild(text);
	return listItem;

}
                       
     