// Assumptions for Power Consumption and Carbon Footprint Calculator
co2_per_kwh = 0.43;
annual_kwh_price_increase = 1.05;

// Object definitions
function equipmentConsumption (name,watts) {
	this.name = name;
	this.watts = watts;
}

function elecRate (state,rate,currency) {
	this.state = state;
	this.rate = rate;
	this.currency = currency;
}

function companyConsumption (company_name,bs,ms,ps,ce) {
	this.cname = company_name;
	this.bs = bs;
	this.ms = ms;
	this.ps = ps;
	this.ce = ce;
}

// List of field used in the form and their validation
var fields = [
	{'name':'setMix5201','r':true,'i':true,'p':true},
	{'name':'setMix5304','r':true,'i':true,'p':true},
	{'name':'setMix5312','r':true,'i':true,'p':true},
	{'name':'setMix5324','r':true,'i':true,'p':true},
	{'name':'setMix5330','r':true,'i':true,'p':true},
	{'name':'setMix5340','r':true,'i':true,'p':true},
	{'name':'setMix3300Mxe','r':true,'i':true,'p':false},
	{'name':'setMix3300CX','r':true,'i':true,'p':false}
];

// Mitel equipment typical consumption database
consumption = new Array();
consumption['setMix5201'] = 1;
consumption['setMix5304'] = 2;
consumption['setMix5312'] = 2.4;
consumption['setMix5324'] = 2.4;
consumption['setMix5330'] = 3.2;
consumption['setMix5340'] = 3.2;
consumption['setMix3300Mxe'] = 52;
consumption['setMix3300CX'] = 38.6;

// Phone sets
var sets = new Array('5201','5304','5312','5324','5330','5340');

// Average equipment consumption by company database
phonesByCompany = new Array();
phonesByCompany.push({
	'name':'mitel',
	'5201':1,
	'5304':2,
	'5312':2.4,
	'5324':2.4,
	'5330':3.2,
	'5340':3.2
});
phonesByCompany.push({
	'name':'shoretel',
	'5201':3,
	'5304':2.8,
	'5312':3.5,
	'5324':3.5,
	'5330':4.8,
	'5340':4.8
});
phonesByCompany.push({
	'name':'cisco',
	'5201':3.2,
	'5304':2.3,
	'5312':5,
	'5324':5,
	'5330':3.8,
	'5340':3.8
});
phonesByCompany.push({
	'name':'avaya',
	'5201':3.8,
	'5304':3.8,
	'5312':3.8,
	'5324':3.8,
	'5330':4.6,
	'5340':4.6
});
phonesByCompany.push({
	'name':'nortel',
	'5201':2.8,
	'5304':2.8,
	'5312':6,
	'5324':6,
	'5330':6,
	'5340':6
});

// Average equipment consumption by company database
companies = new Array();
companies.push(new companyConsumption('mitel', 1, 2.4, 3.2, 100));
companies.push(new companyConsumption('shoretel', 3, 3.1, 3.4, 272));
companies.push(new companyConsumption('cisco', 2.3, 5, 3.8, 1300));
companies.push(new companyConsumption('avaya', 3.8, 3.8, 4.6, 710));
companies.push(new companyConsumption('nortel', 2.8, 6, 6, 784));

// Electricity rates by state or province database
var rates = new Array();
rates.push(new elecRate('U.S. National Average',10.33,'$'));
rates.push(new elecRate('Alabama',9.1,'$'));
rates.push(new elecRate('Alaska',14.52,'$'));
rates.push(new elecRate('Arizona',9.89,'$'));
rates.push(new elecRate('Arkansas',8.44,'$'));
rates.push(new elecRate('California',14.17,'$'));
rates.push(new elecRate('Colorado',8.91,'$'));
rates.push(new elecRate('Connecticut',16.9,'$'));
rates.push(new elecRate('Delaware',13.13,'$'));
rates.push(new elecRate('District of Columbia',13.6,'$'));
rates.push(new elecRate('Florida',10.65,'$'));
rates.push(new elecRate('Georgia',9.95,'$'));
rates.push(new elecRate('Hawaii',29.96,'$'));
rates.push(new elecRate('Idaho',6.04,'$'));
rates.push(new elecRate('Illinois',9.61,'$'));
rates.push(new elecRate('Indiana',7.02,'$'));
rates.push(new elecRate('Iowa',7.35,'$'));
rates.push(new elecRate('Kansas',8.36,'$'));
rates.push(new elecRate('Kentucky',6.7,'$'));
rates.push(new elecRate('Louisiana',9.61,'$'));
rates.push(new elecRate('Maine',13.38,'$'));
rates.push(new elecRate('Maryland',13.38,'$'));
rates.push(new elecRate('Massachusetts',16.92,'$'));
rates.push(new elecRate('Michigan',9.37,'$'));
rates.push(new elecRate('Minnesota',8.22,'$'));
rates.push(new elecRate('Mississippi',8.9,'$'));
rates.push(new elecRate('Missouri',7.92,'$'));
rates.push(new elecRate('Montana',7.83,'$'));
rates.push(new elecRate('Nebraska',7.09,'$'));
rates.push(new elecRate('Nevada',10.3,'$'));
rates.push(new elecRate('New Hampshire',14.76,'$'));
rates.push(new elecRate('New Jersey',16.82,'$'));
rates.push(new elecRate('New Mexico',8.95,'$'));
rates.push(new elecRate('New York',17.82,'$'));
rates.push(new elecRate('North Carolina',8.02,'$'));
rates.push(new elecRate('North Dakota',6.92,'$'));
rates.push(new elecRate('Ohio',8.72,'$'));
rates.push(new elecRate('Oklahoma',8.83,'$'));
rates.push(new elecRate('Oregon',7.12,'$'));
rates.push(new elecRate('Pennsylvania',9.7,'$'));
rates.push(new elecRate('Rhode Island',15.06,'$'));
rates.push(new elecRate('South Carolina',8.27,'$'));
rates.push(new elecRate('South Dakota',7.28,'$'));
rates.push(new elecRate('Tennessee',8.07,'$'));
rates.push(new elecRate('Texas',11.94,'$'));
rates.push(new elecRate('Utah',7.08,'$'));
rates.push(new elecRate('Vermont',12.43,'$'));
rates.push(new elecRate('Virginia',7.65,'$'));
rates.push(new elecRate('Washington',6.43,'$'));
rates.push(new elecRate('West Virginia',5.4,'$'));
rates.push(new elecRate('Wisconsin',9.2,'$'));
rates.push(new elecRate('Wyoming',5.8,'$'));
rates.push(new elecRate('Canadian National Average',9.79,'$'));
rates.push(new elecRate('Alberta',8.00,'$'));
rates.push(new elecRate('British Columbia',7.36,'$'));
rates.push(new elecRate('Manitoba',6.13,'$'));
rates.push(new elecRate('New Brunswick',8.07,'$'));
rates.push(new elecRate('Newfoundland',0.9,'$'));
rates.push(new elecRate('Nova Scotia',8.78,'$'));
rates.push(new elecRate('Nunavut',37.57,'$'));
rates.push(new elecRate('Ontario',6.04,'$'));
rates.push(new elecRate('Prince Edward Island',13.58,'$'));
rates.push(new elecRate('Quebec',4.48,'$'));
rates.push(new elecRate('Saskatchewan',8.31,'$'));
rates.push(new elecRate('Yukon',8.31,'$'));
rates.push(new elecRate('UK National Average',13.95,'&pound;'));

