//objects
function colorFP() {
	fptable = document.getElementById("fp");
	for(i=1;i<fptable.rows.length;i++) {
		row=fptable.rows[i];
		colorUser(row.cells[0]);
		colorLag(row.cells[1]);
		colorFreq(row.cells[2]);
		colorFreq(row.cells[3]);
		colorCallsign(row.cells[4]);
		colorAltSpd(row.cells[6], row.cells[7]);
		colorFPf(row.cells[8]);
		colorSqwk(row.cells[9], row.cells[6], row.cells[8]);
		colorLoginCount(row.cells[12]);
		colorAvgFlood(row.cells[14]);
	}
}
function colorCo() {
	fptable = document.getElementById("copilot");
	for(i=1;i<fptable.rows.length;i++) {
		fptable.setAttribute("class", "visible");
		row=fptable.rows[i];
		colorUser(row.cells[0]);
		colorLag(row.cells[1]);
		colorFreq(row.cells[2]);
		colorFreq(row.cells[3]);
		colorCallsign(row.cells[4]);
		colorAltSpd(row.cells[6], row.cells[7]);
		colorLoginCount(row.cells[11]);
		colorAvgFlood(row.cells[13]);
	}
	if(fptable.rows.length == 1) {
		fptable.setAttribute("class", "hidden");
	}
}
function colorControllers() {
	cttable = document.getElementById("controllers");
	for(i=1; i<cttable.rows.length;i++) {
		row=cttable.rows[i];
		colorUser(row.cells[0]);
		colorLag(row.cells[1]);
		colorATC(row.cells[4]);
		colorATC(row.cells[5]);
		colorATC(row.cells[6]);
		colorATC(row.cells[7]);
		if(row.cells[6].innerHTML == row.cells[2].innerHTML) {
			row.cells[2].setAttribute("class", "atcGreen");
		} else if(RegExp(/118.0[0-9]/).test(row.cells[2].innerHTML)) {
			row.cells[2].setAttribute("class", "atcGreenRed");
		} else {
			row.cells[2].setAttribute("class", "atcRed");
		}
		if(RegExp(/118.0[0-9]/).test(row.cells[3].innerHTML)) {
			row.cells[3].setAttribute("class", "atcGreen");
		} else if(row.cells[3].innerHTML == row.cells[6].innerHTML) {
			row.cells[3].setAttribute("class", "atcGreenRed");
		}else{
			row.cells[3].setAttribute("class", "atcRed");
		}
		colorLoginCount(row.cells[10]);
	}
}
function colorObservers() {
	obtable = document.getElementById("observers");
	for(i=1; i<obtable.rows.length;i++) {
		row=obtable.rows[i];
		colorUser(row.cells[0]);
		colorLag(row.cells[1]);
		colorFreq(row.cells[2]);
		colorFreq(row.cells[3]);
		colorATC(row.cells[4])
		colorLoginCount(row.cells[10]);
	}
}
function colorLobby() {
	lotable = document.getElementById("lobby");
	for(i=1; i<lotable.rows.length;i++) {
		row=lotable.rows[i];
		colorUser(row.cells[0]);
		colorLag(row.cells[1]);
		colorLoginCount(row.cells[10]);
	}
}
function colorRecent() {
	retable  = document.getElementById("recent");
	for(i=1;i<retable.rows.length;i++) {
		row=retable.rows[i];
		colorUser(row.cells[0]);
		if(RegExp(/Player QUIT Session Normally/).test(row.cells[6].innerHTML)) {
			row.cells[6].setAttribute("Class", "quitClassGreen");
		} else {
			row.cells[6].setAttribute("Class", "quitClassRed");
		}
		colorLoginCount(row.cells[9]);
		colorAvgFlood(row.cells[11]);
	}
}
//common color feilds
function colorUser(obj) {
	//document.write(obj.attributes.title.);
	if(RegExp(/HOST ADMIN/i).test(obj.title)) {
		obj.setAttribute("Class", "usrHostAdmin juid left");
	} else if(RegExp(/mstrstu/i).test(obj.innerHTML)) {
		obj.setAttribute("Class", "usrSessionAdminMstrstu juid left");
	} else if(RegExp(/Session Admin/i).test(obj.title)) {
		obj.setAttribute("Class", "usrSessionAdmin juid left");
	} else if(RegExp(/Controller Admin/i).test(obj.title)) {
		obj.setAttribute("Class", "usrControllerAdmin juid left");
	} else {
		obj.setAttribute("Class", "juid left");
	}
}
function colorLag(obj) {
	if(obj.innerHTML < 1) {
		obj.setAttribute("class", " lagRed");
	} else if(obj.innerHTML < 100) {
		obj.setAttribute("class", " lagGreen bold");
	} else if(obj.innerHTML < 250) {
		obj.setAttribute("class", " lagYellow bold");
	} else if(obj.innerHTML > 249) {
		obj.setAttribute("class", " lagRed bold");
	}
}
function colorCallsign(obj) {
	if(RegExp(/^[A-Z][0-9]{2,4}[A-Z]{0,2}$|^[A-Z][0-9]{5}$|^[A-Z]{1,2}-[A-Z]{3,4}$|^[A-Z]{2,3}[0-9]{1,4}$/).test(obj.innerHTML)) {
		obj.setAttribute("class", "goodCallSign bold left");
	} else {
		obj.setAttribute("class", "badCallSign bold left");
	}
}
//AIRCRAFT COLOR IS DEFINED IN AJAX SCRIPT DUE TO XML REQUIREMENT
function colorAltSpd(obj, spd) {
	altclass = "jalt";
	if(RegExp(/FL$/i).test(obj.innerHTML)) {
		altclass = altclass + " bold";
		alttemp = obj.innerHTML.replace(/FL/i, "") * 100;
	} else {
		alttemp = obj.innerHTML.replace(/ ft/i, "");
	}
	if(alttemp < 1500 && spd.innerHTML < 40) {
		altclass = altclass + " altSpeedZero";
	} else if(alttemp < 1500) {
		altclass = altclass + " altOneFive";
	} else if(alttemp < 3000) {
		altclass = altclass + " altThreeZero";
	} else if(alttemp < 10000) {
		altclass = altclass + " altTenZero";
	} else if(alttemp < 18000) {
		altclass = altclass + " altOneEight";
	} else {
		altclass = altclass + " altOther";
	}
	spdclass = "jspd";
	if(alttemp < 10000) {
		if(spd.innerHTML < 2) {
			spdclass = spdclass + " spdTwo";
		} else if(spd.innerHTML < 25 ) {
			spdclass = spdclass + " spdTwoFive";
		} else if(spd.innerHTML < 45 ) {
			spdclass = spdclass + " spdFourFive";
		} else if(spd.innerHTML < 260 ) {
			spdclass = spdclass + " spdNineZero";
		} else if(spd.innerHTML > 260 ) {
			spdclass = spdclass + " spdTwoSix";
		}
	}
	if(alttemp > 18000) {
		spdclass = spdclass + "spdOverOneEight";
	}else if(alttemp > 10000) {
		spdclass = spdclass + " spdOverTen";
	}
	spd.setAttribute("Class", spdclass);
	obj.setAttribute("Class", altclass);
}
function colorFPf(obj) {
	if(RegExp(/ifr/i).test(obj.innerHTML)) {
		obj.setAttribute("Class", "fpIFR left");
	} else if(RegExp(/Vfr/i).test(obj.innerHTML)) {
		obj.setAttribute("Class", "fpVFR left");
	} else {
		obj.setAttribute("Class", "");
	}
}
function colorSqwk(obj,alt,ffp) {
	if(RegExp(/^FL/i).test(alt.innerHTML)) {
		alttemp = alt.innerHTML.replace(/^FL/i, "") * 100;
	} else {
		alttemp = alt.innerHTML.replace(/ ft/i, "");
	}
	if(RegExp(/EMG/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqEMG"); }
	if(RegExp(/IDENT/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqIDENT"); }
	if(RegExp(/MILITARY/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqMILIT"); }
	if(RegExp(/AEROBAT/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqAREO"); }
	if(RegExp(/HIJ/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqHIJ"); }
	if(RegExp(/NO COM/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqNOCO"); }
	if(RegExp(/MIL INT/).test(obj.innerHTML)) { return obj.setAttribute("class", "sqMIL"); }

	if(alttemp >= 18000) {
		if(RegExp(/VFR/i).test(ffp.innerHTML)) {
			 return obj.setAttribute("Class", "sqOverOneEightVFR");
		}
	}
	if(obj.innerHTML == 1200) {
		 return obj.setAttribute("class", "sqVFRDefault");
	}
	if(obj.innerHTML == 2200) {
		 return obj.setAttribute("class", "sqIFRDefault");
	}
	return obj.setAttribute("Class", "");
}
function colorLoginCount(obj) {
	if(RegExp(/[12345] NEW/).test(obj.innerHTML)) {
		obj.setAttribute("Class", "lcUnderSmallFive bold");
	} else if(obj.innerHTML < 25)  {
		obj.setAttribute("Class", "lcUnderTwoFive bold");
	} else if(obj.innerHTML < 50)  {
		obj.setAttribute("Class", "lcUnderFifty bold");
	} else if(obj.innerHTML < 100)  {
		obj.setAttribute("Class", "lcUnderOne bold");
	} else if(obj.innerHTML < 200)  {
		obj.setAttribute("Class", "lcUnderTwo bold");
	} else if(obj.innerHTML < 500)  {
		obj.setAttribute("Class", "lcUnderFive bold");
	} else if(obj.innerHTML < 750)  {
		obj.setAttribute("Class", "lcUnderSevenFive bold");
	} else if(obj.innerHTML < 1000)  {
		obj.setAttribute("Class", "lcUnderOneK bold");
	} else if(obj.innerHTML >999 )  {
		obj.setAttribute("Class", "lcOverOneK bold");
	}
}
function colorAvgFlood(obj) {
	if(obj.innerHTML < 20) {
		obj.setAttribute("Class", "flUnderTwo bold");
	} else if(obj.innerHTML < 40) {
		obj.setAttribute("Class", "flUnderFour bold");
	} else if(obj.innerHTML < 60) {
		obj.setAttribute("Class", "flUnderSix bold");
	} else if(obj.innerHTML < 80) {
		obj.setAttribute("Class", "flUnderEight bold");
	} else if(obj.innerHTML < 99) {
		obj.setAttribute("Class", "flUnderNine bold");
	} else if(obj.innerHTML > 98) {
		obj.setAttribute("Class", "flOverNine bold");
	}
}
function colorFreq(obj) {
	if(RegExp(/118.0[0-9]/).test(obj.innerHTML)) {
		obj.setAttribute("Class", "cOneOneEight");
	}
}
function colorATC(obj) {
	obj.setAttribute("Class", "atcFill");
}
//misc
function chatboxsize() {
	
	
	document.getElementById("chat").style.height = (document.getElementById("left").scrollHeight - 36) + 'px';
	var test = 1;
}
//initalizer
function colorize() {
	colorFP();
	colorCo();
	colorControllers();
	colorObservers();
	colorLobby();
	colorRecent();
	chatboxsize();
}
