//********************************************************
// TeamOrb - Calculate Internet Service Rates
// Written by J. Kent Robinson, TeamOrb, LLC
// Please e-mail administrator@teamorb.com with questions or comments
// Version 1.00 - Created 10/05/2000
// Rates effective 10/05/2000
//********************************************************

// **************** CREATE ARRAYS FOR SETUP FEE ****************

var t1 = new createArray (7,  ' ' )
var t2 = new createArray (7,  ' ' )
var t3 = new createArray (7,  ' ' )
var t4 = new createArray (7,  ' ' )

function createArray (n, str) {
	this.size = n
	for (i=1; i<=n; i++) {
		this[i] = str
	}
	return this
}

function initArrays() {

// **************** table for month to month ****************

t1[0] = 256; t1[256] = 900
t1[1] = 512; t1[512] = 850
t1[2] = 768; t1[768] = 800
t1[3] = 1024; t1[1024] = 750
t1[4] = 1540; t1[1540] = 700
t1[5] = 2000; t1[2000] = 650
t1[6] = 3000; t1[3000] = 600

// **************** table for 1 year term ****************

t2[0] = 256; t2[256] = 800
t2[1] = 512; t2[512] = 750
t2[2] = 768; t2[768] = 700
t2[3] = 1024; t2[1024] = 650
t2[4] = 1540; t2[1540] = 600
t2[5] = 2000; t2[2000] = 550
t2[6] = 3000; t2[3000] = 500

// **************** table for 2 year term ****************

t3[0] = 256; t3[256] = 700
t3[1] = 512; t3[512] = 650
t3[2] = 768; t3[768] = 600
t3[3] = 1024; t3[1024] = 550
t3[4] = 1540; t3[1540] = 500
t3[5] = 2000; t3[2000] = 450
t3[6] = 3000; t3[3000] = 400

// **************** table for 3 year term ****************

t4[0] = 256; t4[256] = 600
t4[1] = 512; t4[512] = 550
t4[2] = 768; t4[768] = 500
t4[3] = 1024; t4[1024] = 450
t4[4] = 1540; t4[1540] = 400
t4[5] = 2000; t4[2000] = 350
t4[6] = 3000; t4[3000] = 300
}

// **************** CALCULATE INTERNET SERVICE RATES AND SETUP FEE ****************

function calculate (form) {
	var comps = Math.round(form.comps.options[form.comps.selectedIndex].value)
	form.comps.value = comps
	var term = Math.round(form.term.options[form.term.selectedIndex].value)
	form.term.value = term
	var drate = Math.round(form.drate.options[form.drate.selectedIndex].value)
	form.drate.value = drate
	var mrate = Math.round(form.mrate.value)
	var setup = 0    //Math.round(form.setup.value)

//*********************** rate multiplier ***************************

//** IMPORTANT INFORMATION **
// "brate" is the base rate for service with no contract and is multipled by the data rate
// discounts for contract terms are reflected in rate calculations below

	var brate = .2540

//********************** rate multiplier end ************************

if (term == 1) {
	brate = brate
	setup = t1[drate]
	if (comps == 1) {
		mrate = Math.round(drate*brate)
		setup = Math.round(setup*.5)
	} else if (comps == 2) {
		mrate = Math.round(drate*brate*1.15)
		setup = Math.round(setup*.75)
	} else if (comps == 3) {
		mrate = Math.round(drate*brate*1.30)
		setup = Math.round(setup*1.00)
	} else if (comps == 4) {
		mrate = Math.round(drate*brate*1.40)
		setup = Math.round(setup*1.25)
	} else if (comps == 5) {
		mrate = Math.round(drate*brate*1.50)
		setup = Math.round(setup*1.50)
	}
} else if (term == 2) {
	brate = brate*.92
	setup = t2[drate]
	if (comps == 1) {
		mrate = Math.round(drate*brate)
		setup = Math.round(setup*.5)
	} else if (comps == 2) {
		mrate = Math.round(drate*brate*1.15)
		setup = Math.round(setup*.75)
	} else if (comps == 3) {
		mrate = Math.round(drate*brate*1.30)
		setup = Math.round(setup*1.00)
	} else if (comps == 4) {
		mrate = Math.round(drate*brate*1.40)
		setup = Math.round(setup*1.25)
	} else if (comps == 5) {
		mrate = Math.round(drate*brate*1.50)
		setup = Math.round(setup*1.50)
	}
} else if (term == 3) {
	brate = brate*.84
	setup = t3[drate]
	if (comps == 1) {
		mrate = Math.round(drate*brate)
		setup = Math.round(setup*.5)
	} else if (comps == 2) {
		mrate = Math.round(drate*brate*1.15)
		setup = Math.round(setup*.75)
	} else if (comps == 3) {
		mrate = Math.round(drate*brate*1.30)
		setup = Math.round(setup*1.00)
	} else if (comps == 4) {
		mrate = Math.round(drate*brate*1.40)
		setup = Math.round(setup*1.25)
	} else if (comps == 5) {
		mrate = Math.round(drate*brate*1.50)
		setup = Math.round(setup*1.50)
	}
} else if (term == 4) {
	brate = brate*.76
	setup = t4[drate]
	if (comps == 1) {
		mrate = Math.round(drate*brate)
		setup = Math.round(setup*.5)
	} else if (comps == 2) {
		mrate = Math.round(drate*brate*1.15)
		setup = Math.round(setup*.75)
	} else if (comps == 3) {
		mrate = Math.round(drate*brate*1.30)
		setup = Math.round(setup*1.00)
	} else if (comps == 4) {
		mrate = Math.round(drate*brate*1.40)
		setup = Math.round(setup*1.25)
	} else if (comps == 5) {
		mrate = Math.round(drate*brate*1.50)
		setup = Math.round(setup*1.50)
	}
}

//repopulate screen with data	

if ((comps == 0) || (term == 0) || (drate == 0)) {
		alert("Sorry!  All fields must be completed for proper fee calculations.")
		form.mrate.value = "not calculated"
		form.setup.value = "not calculated"
	} else {
		form.mrate.value = "$" + mrate + " per month"
		form.setup.value = "$" + setup + " setup fee"
	}
		
}

//****************** END CALCULATIONS & SCRIPT ***************************