
function measure () {
	var self = this;
	try {
		self.curSystem = parseInt(readCookie("measureSystem")); //0 = metric 1 = english
		if  (self.curSystem == null || isNaN(self.curSystem)) {
			self.curSystem = 1; // default to english
			createCookie ('measureSystem',self.curSystem,3650);
		}
	}
	catch (e) {
		self.curSystem = 1;	// default to english
	}
	self.measureSystems = ["metric","english"];
	self.measures = new Array();
	self.measures["distance"] = [["Km","Mi"],[1,0.621371192]];
	self.measures["speed"] = [["KPH","MPH"],[1,0.621371192]];
	self.measures["elevation"] = [["M","Ft"],[1,3.2808399]];
	self.measures["elevationChange"] = [["M/Km","Ft/Mi"],[1,5.280000011]];
	self.measures["heartRate"] = [["bpm","bpm"],[1,1]];
	self.measures["time"] = [["sec","sec"],[1,1]];
	self.measures["cadence"] = [["rpm","rpm"],[1,1]];
			
	this.getMeasure = function (measureType) {
		try {
			return self.measures[measureType][0][self.curSystem];
		}
		catch (e) {
			return "";
		}
	}

	this.getMetricConversion = function (measureType) {
		try {
			return self.measures[measureType][1][self.curSystem];
		}
		catch (e) {
			return 0;
		}
	}
	
	this.setMeasureSystem = function (measureSystemName) {
		for (var ix=0;ix < self.measureSystems.length;ix++) {
			if (measureSystemName == self.measureSystems[ix]) {
				self.curSystem = ix;
				try {
					createCookie ('measureSystem',ix,3650);
				}
				catch (e) {}
				return true;
			}
		}
		return false;
	}
	
	this.getNextMeasureSystem =  function() {
		return self.measureSystems[(self.curSystem + 1) % self.measureSystems.length];
	}

	this.getMeasureSystem = function () {
		return self.measureSystems[self.curSystem];
	}

	this.changeMeasureSystem = function(callFunc) {
		var x = document.getElementById("changeMeasureSystem");
		var newSys = measureObj.getNextMeasureSystem();
		var oldSys = measureObj.getMeasureSystem();
		measureObj.setMeasureSystem(newSys);
		x.innerHTML = "Use " + oldSys + " system";
		setTimeout(callFunc,1);
	}
	
}
