function FTX_loadsub(o) {
	var fid = o.getAttribute('fid');
	if (!fid) {
		return;
	}

	var sid = 'FTSUB' + fid;
	var sel = _obj(sid);
	if (!sel) {
		return;
	}

	var val = o.value;
	if (val == 0) {
		FTX_clearsel(sel);
		return;
	}

	var cfid = sel.getAttribute('fid');
	if (!cfid) {
		return;
	}

	FTX_watisub(sid, true);
	posthttp('/common/featchildenums.php', onFTX_loadsub, 'cf=' + cfid + '&pe=' + val + '&el=' + sid);
}
function FTX_watisub(i, b) {
	var o = _obj(i);
	if (!o) {
		return;
	}
	if (b) {
		o.style.visibility = 'hidden';
		o.parentNode.className = 'itemloading';
	}
	else {
		o.parentNode.className = '';
		o.style.visibility = 'visible';
	}
}
function FTX_clearsel(o) {
	_clearselect(o);
	o.options[0] = new Option('----------', '0');
}
function onFTX_loadsub(o) {
	if (o.readyState != 4) { return; }
	if (o.status != 200) {
		alert('Failed to connect to server.');
		return;
	}

	var inf = o.responseXML.getElementsByTagName('info');
	var sid = inf[0].getAttribute('htmel');
	if (!sid) {
		alert('Failed to connect to server.');
		return;
	}

	var sel = _obj(sid);
	if (!sel) {
		return;
	}

	FTX_clearsel(sel);

	var itm = o.responseXML.getElementsByTagName('item');
	var n = itm.length;
	for (var i = 0; i < n; i++) {
		var iid = itm[i].getAttribute('id');
		var nme = node_text(itm[i]);
		sel.options[i + 1] = new Option(nme, iid);
	}

	sel.selectedIndex = 0;
	FTX_watisub(sid, false);

	if (typeof(sel.onchange) == 'function') {
		if (sel.fireEvent) {
			sel.fireEvent('onchange');
		}
		else if (document.createEvent) {
			var evt = window.document.createEvent("HTMLEvents");
			evt.initEvent("change", false, true);
			sel.dispatchEvent(evt);
		}
	}

	if (n > 0) {
		sel.focus();
	}
}
function FTX_focus(o) {
	var d = o.parentNode.nextSibling;
	if (!d) { return; }
	d = firstTag(d);
	if (!d) { return; }
	if (d.className != 'ftx_desc') { return; }
	d.style.display = 'block';
}
function FTX_blur(o) {
	var d = o.parentNode.nextSibling;
	if (!d) { return; }
	d = firstTag(d);
	if (!d) { return; }
	if (d.className != 'ftx_desc') { return; }
	d.style.display = 'none';
}
