var checkBoxes = new Array();

checkBoxes["SiteAnalysis"] = false;
checkBoxes["KeywordRanking"] = false;
checkBoxes["CompetitorComparison"] = false;
checkBoxes["DevelopmentSupport5"] = false;
checkBoxes["DevelopmentSupport10"] = false;
checkBoxes["DevelopmentSupport15"] = false;
checkBoxes["DevelopmentSupport20"] = false;
checkBoxes["CustomizedTemplate"] = false;

var cmPrices = new Array();
cmPrices["None"] = 0.00;
cmPrices["Essentials"] = 99.00;
cmPrices["Standard"] = 299.00;
cmPrices["Pro"] = 499.00;

var cmSupport = new Array();
cmSupport["None"] = 0.00;
cmSupport["Essentials"] = 19.95;
cmSupport["Standard"] = 29.95;
cmSupport["Pro"] = 39.95;

var defaultOptionSet = new Array();
defaultOptionSet[0] = new Option("-Select One-","No");
defaultOptionSet[1] = new Option("Yes","Yes");
defaultOptionSet[2] = new Option("No thanks","No");


function submitForm()
{
   document.forms[0].submit();
}

function getParameter(queryString,parameterName)
{
	parameterName = parameterName + "=";
	if(queryString.length > 0)
	{
		var begin = queryString.indexOf(parameterName);
		if(begin != -1)
		{
			begin += parameterName.length;
			var end = queryString.indexOf("&",begin);
			if(end == -1)
			{
				end = queryString.length;
			}

			return unescape(queryString.substring(begin,end));
		}

		return "null";
	}

	return "null";
}

function populatePackage(package)
{
	if("Essentials" == package)
	{
		setSelectOption("Package","Essentials");
		setSelectOption("Emails","1");
		setSelectOption("Admins","1");
	}
	else if("Standard" == package)
	{
		setSelectOption("Package","Standard");
		setSelectOption("Emails","10");
		setSelectOption("Admins","5");
	}
	else if("Pro" == package)
	{
		setSelectOption("Package","Pro");
		setSelectOption("Emails","20");
		setSelectOption("Admins","10");
	}
}

function setHiddenValue(fieldName,fieldValue)
{
	var field = document.forms[0].elements[fieldName];
	if(null != field)
	{
		field.value = fieldValue;
	}
}

function setChecked(fieldName,checked)
{
	var field = document.forms[0].elements[fieldName];
	if(null != field)
	{
		field.checked = checked;
	}
}

function setSelectOption(fieldName,fieldValue)
{
	var field = document.forms[0].elements[fieldName];
	if(null != field)
	{
		var options = field.options;

		for(var i = 0; i < options.length; i++)
		{
			if(options[i].value == fieldValue)
			{
				options[i].selected = true;
			}
			else
			{
				options[i].selected = false;
			}
		}
	}
}

function getSelectedOption(fieldName)
{
	var field = document.forms['BuyNow'].elements[fieldName];

	if(null != field)
	{
		var selectedIndex = field.options.selectedIndex;
		var value = field.options[selectedIndex].value;

		return value;
	}

	return "null";
}

function getHiddenValue(fieldName)
{
	var field = document.forms[0].elements[fieldName];

	if(null != field)
	{
		return field.value;
	}

	return "null";
}


function getChecked(fieldName)
{
	var field = document.forms[0].elements[fieldName];

	if(null != field)
	{
		return field.checked;
	}

	return false;
}

function setDisplayValue(fieldName,value)
{
	var field = document.getElementById(fieldName);

	if(null != field)
	{
		field.innerHTML = value;
	}
}

function setUpdateTimer()
{
                setTimeout("updatePrice()",50);
}

function updateCheckBox(fieldName)
{
	checkBoxes[fieldName] = !checkBoxes[fieldName];
	
	
	if(fieldName == "DevelopmentSupport5")
	{
		var devCheckbox = document.getElementById('DevelopmentSupport10');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport15');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport20');
		devCheckbox.checked = false;
		checkBoxes['DevelopmentSupport10'] = false;
		checkBoxes['DevelopmentSupport15'] = false;
		checkBoxes['DevelopmentSupport120'] = false;
	}

	if(fieldName == "DevelopmentSupport10")
	{
		var devCheckbox = document.getElementById('DevelopmentSupport5');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport15');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport20');
		devCheckbox.checked = false;
		checkBoxes['DevelopmentSupport5'] = false;
		checkBoxes['DevelopmentSupport15'] = false;
		checkBoxes['DevelopmentSupport20'] = false;
	}

	if(fieldName == "DevelopmentSupport15")
	{
		var devCheckbox = document.getElementById('DevelopmentSupport5');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport10');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport20');
		devCheckbox.checked = false;
		checkBoxes['DevelopmentSupport5'] = false;
		checkBoxes['DevelopmentSupport10'] = false;
		checkBoxes['DevelopmentSupport20'] = false;
	}

	if(fieldName == "DevelopmentSupport20")
	{
		var devCheckbox = document.getElementById('DevelopmentSupport5');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport10');
		devCheckbox.checked = false;
		var devCheckbox = document.getElementById('DevelopmentSupport15');
		devCheckbox.checked = false;
		checkBoxes['DevelopmentSupport5'] = false;
		checkBoxes['DevelopmentSupport10'] = false;
		checkBoxes['DevelopmentSupport15'] = false;
	}
}

function updateOptions()
{
}

function resetOption(select,index,text,value)
{
	select.options[index] = new Option(text,value);
}

function clearOptions(select)
{
        select.options.length = 0;
}

function buildOptions(select,options,isDecimal)
{
        var index = select.options.length;

        for(var i in options)
        {
                select.options[index] = new Option(''+options[i],''+(i));
                index++;
        }
}

function resetEmail(limit)
{
	var emailSelect = document.getElementById("Emails");
	var selectedIndex = emailSelect.options.selectedIndex;
	var max = 30;
	
	var i = 1;
	for(i = 1; i <= max; i++)
	{
		if(i <= limit)
		{
			resetOption(emailSelect,i,i + " - No Additional Charge",i);
		}
		else
		{
			resetOption(emailSelect,i,i + " - $1 Additional Charge",i);
		}
	}
	
	emailSelect.options[selectedIndex].selected = true;
}

function resetAdmins(limit)
{
	var adminSelect = document.getElementById("Admins");
	var selectedIndex = adminSelect.options.selectedIndex;
	var max = 20;
	
	var i = 1;
	for(i = 1; i <= max; i++)
	{
		if(i <= limit)
		{
			resetOption(adminSelect,i,i + " - No Additional Charge",i);
		}
		else
		{
			resetOption(adminSelect,i,i + " - $5 Additional Charge",i);
		}
	}
	
	adminSelect.options[selectedIndex].selected = true;
}

function hideMBO()
{
	var mboSelect = document.getElementById('MBOLinks');
	mboSelect.style.display="none";
	
	var mboText = document.getElementById('MBOText');
	mboText.innerHTML = "<b>Included</b>";
}

function showMBO()
{
	var mboSelect = document.getElementById('MBOLinks');
	mboSelect.style.display="inline";
	
	var mboText = document.getElementById('MBOText');
	mboText.innerHTML = "";
}

function updatePrice()
{
	var package = getSelectedOption("Package");

	var emails = getSelectedOption("Emails");
	var admins = getSelectedOption("Admins");

	var siteAnalysis = checkBoxes["SiteAnalysis"];
	var keywordRanking = checkBoxes["KeywordRanking"];
	var competitorComparison = checkBoxes["CompetitorComparison"];

	var developmentSupport5 = checkBoxes["DevelopmentSupport5"];
	var developmentSupport10 = checkBoxes["DevelopmentSupport10"];
	var developmentSupport15 = checkBoxes["DevelopmentSupport15"];
	var developmentSupport20 = checkBoxes["DevelopmentSupport20"];

	var customizedTemplate = checkBoxes["CustomizedTemplate"];
	var mboLinks = getSelectedOption("MBOLinks");

	var setupTotal = 0.00;
	var monthlyTotal = 0.00;
	var seoTotal = 0.00;
	var devTotal = 0.00;
	var softwareTotal = 0.00;

	if(package != "Essentials" && package != "Standard" && package != "Pro" && package != "None")
	{
		package = "None";
	}

	if(package == "None")
	{
		showMBO();
	}
	else
	{
		hideMBO();
	}

	//Force Content Manager if any of the other managers are selected

	if(siteAnalysis)
	{
		setupTotal += 20.00;
		monthlyTotal += 5.00;
		seoTotal += 20.00;
	}

	if(keywordRanking)
	{
		setupTotal += 50.00;
		monthlyTotal += 5.00;
		seoTotal += 50.00;
	}

	if(competitorComparison)
	{
		setupTotal += 100.00;
		monthlyTotal += 10.00;
		seoTotal += 100.00;
	}

	if(developmentSupport5)
	{
		setupTotal += 599.00;
		devTotal += 599.00;
	}

	if(developmentSupport10)
	{
		setupTotal += 1125.00;
		devTotal += 1125.00;
	}

	if(developmentSupport15)
	{
		setupTotal += 1599.00;
		devTotal += 1599.00;
	}

	if(developmentSupport20)
	{
		setupTotal += 1999.00;
		devTotal += 1999.00;
	}

	if(customizedTemplate)
	{
		setupTotal += 199.00;
		devTotal += 199.00;
	}


	var cmPrice = cmPrices[package];
	var cmSupportPrice = cmSupport[package]; 
	
	setupTotal += cmPrice;
	softwareTotal += cmPrice;
	monthlyTotal += cmSupportPrice;

	if("Essentials" == package)
	{
		resetEmail(1);
		resetAdmins(1);
	
		if("More" == emails)
		{
			emails = 30;
		}

		emails -= 1;
		if(emails < 0)
			emails = 0;
		
		monthlyTotal += emails;

		if("More" == admins)
		{
			admins = 20;
		}

		admins -= 1;
		if(admins < 0)
			admins = 0;

		monthlyTotal += (admins*5);
	}
	else if("Standard" == package)
	{
		resetEmail(10);
		resetAdmins(5);


		if("More" == emails)
		{
			emails = 30;
		}

		emails -= 10;
		if(emails < 0)
			emails = 0;
		
		monthlyTotal += emails;


		if("More" == admins)
		{
			admins = 20;
		}

		admins -= 5;

		if(admins < 0)
			admins = 0;

		monthlyTotal += (admins*5);
	}
	else if("Pro" == package)
	{
		resetEmail(20);
		resetAdmins(10);
		
		if("More" == emails)
		{
			emails = 30;
		}

		emails -= 20;
		if(emails < 0)
			emails = 0;

		monthlyTotal += emails;
		
		if("More" == admins)
		{
			admins = 20;
		}

		admins -= 10;

		if(admins < 0)
			admins = 0;

		monthlyTotal += (admins*5);
	}

	switch(mboLinks)
	{
		case "None":
			break;
		case "Up to 3":
			monthlyTotal += 4.95;
			break;
		case "Up to 6":
			monthlyTotal += 6.95;
			break;
		case "Up to 10":
			monthlyTotal += 9.95;
			break;
	}

	if(setupTotal < 0.00)
	{
		setupTotal = 0.00;
	}

	setupTotal = setupTotal.toFixed(2);
	monthlyTotal = monthlyTotal.toFixed(2);
	seoTotal = seoTotal.toFixed(2);
	devTotal = devTotal.toFixed(2);
	softwareTotal = softwareTotal.toFixed(2);

	setDisplayValue("OneTimeSetup",setupTotal);
	setDisplayValue("Monthly",monthlyTotal);
	setDisplayValue("SEOTotal",seoTotal);
	setDisplayValue("DevTotal",devTotal);
	setDisplayValue("SoftwareTotal",softwareTotal);
}

var queryString = window.top.location.search.substring(1);
var package = getParameter(queryString,"Package");

if("null" != package)
{
	populatePackage(package);
	updateOptions();
}

updatePrice();
