var tabcolors = new Array();
var tabimages = new Array();

function settabcolors(set, sel, unsel, skin) {
	tabcolors[set] = [ sel, unsel ];
	
	var baseTabImage = "/images/"+skin+"/"+skin+"_Tab_";
	var onImage = baseTabImage+"on.gif";
	var offImage = baseTabImage+"off.gif";

	// Override values are used by electronic communicator!
	var overrideOnImage = document.getElementById("onImage");
	if (overrideOnImage) {
		onImage = baseTabImage+overrideOnImage.value;
	}
	var overrideOffImage = document.getElementById("offImage");
	if (overrideOffImage) {
		offImage = baseTabImage+overrideOffImage.value;
	}

	tabimages[set] = [ "url('"+ onImage +"')", "url('"+ offImage +"')" ];
}

function settab(set, tabn) {
	// Move the given tab into the tabset
	var tabsetid = "tab_" + set;
	var tabid = tabsetid + "_" + tabn;

	var tabset = document.getElementById(tabsetid);
	var tab = document.getElementById(tabid);
	var holder = document.getElementById(tabsetid + "__tabholder");
	var pane = document.getElementById(tabsetid + "__pane");
	
	if (tab == null) {
		tab = holder.firstChild;
		var newtabn = tab.id.substring(tabid.length - tabn.length);
		tabn = newtabn;
	}

	var curtab = pane.firstChild;
	if (curtab == tab) return;
	if (curtab != null) {		
		holder.appendChild(curtab);
	}
	curtab = tab;
	if (curtab != null) {
		pane.appendChild(curtab);
	}

	var samps = tabset.getElementsByTagName("samp");
	var match = tabsetid + "__header_";
	for (var i = 0; i < samps.length; i++) {
		if (samps[i].id.indexOf(match) >= 0) {
			var name = samps[i].id.substring(match.length);
			var td = samps[i].parentNode;
			var div = document.getElementById(tabsetid + '_' + name);
			if (tabn == name) {
				td.className = tabcolors[set][0];
				td.style.backgroundImage = tabimages[set][0];
				td.style.borderBottomWidth = 0;
				div.style.display = 'inline';
			}
			else {
				td.className = tabcolors[set][1];
				td.style.backgroundImage = tabimages[set][1];
				td.style.borderBottomWidth = 1;
				div.style.display = 'none';
			}
		}
	}
	
	// finally, set the cookie
	setCookie(tabsetid, tabn);
}

function settabwithcookie(set, tabn) {
	// Used to check a local cookie to determine whether the currently selected tab is different
	var name = "tab_" + set;
	var value = getCookie(name);
	if (value != null) {
		tabn = value;
	}
	settab(set, tabn);
}

function drawtabtitle(set, tab) {
	var id = "tab_" + set;
	var tabset = document.getElementById(ts);
}

