function getElementIndex(theElement) {
	var coll = this.all;
	for(var i1 = 0; i1 < coll.length; i1++) {
		if(theElement == coll[i1]) return i1;
	}
	return -1;
}

function extractNr(theIdStr) {
	var index = theIdStr.indexOf('_');
	if(index == -1) {
		alert(theIdStr + 'is not a valid id str');
		return -1;
	}
	var id = parseInt(theIdStr.substr(index + 1));
	if(isNaN(id) == true) {
		alert(theIdStr + 'is not a valid id str');
		return -1;
	}
	return id;
}

function getById(idname)
{
	if(document.getElementById) {
		// standards compliant (DOM1)
		return document.getElementById(idname);
	}
	if(document.all) {
		// IE
		return document.all[idname];
	}
	// argh, NS4?
	var elem = null;
	if((elem = document.images[idname]) != null) {
		return elem;
	}
	if((elem = document.applets[idname]) != null) {
		return elem;
	}
	if((elem = document.links[idname]) != null) {
		return elem;
	}
	if((elem = document.forms[idname]) != null) {
		return elem;
	}
	if((elem = document.anchors[idname]) != null) {
		return elem;
	}
	return eval("document."+idname);
}

function insertOption(opt, lst) {
	var newOpt = null;
	if(document.all) {
		// IE
		newOpt = document.createElement("OPTION");
		newOpt.value = opt.value;
		newOpt.text = opt.text;
		lst.options.add(newOpt);
	} else {
		// standards compliant (DOM1)
		newOpt = opt.cloneNode(true);
		lst.add(newOpt,null);
	}
	return newOpt;
}
