
function setSel(obj) {
	var spanArray = obj.getElementsByTagName('span');
	for (s=0; s < spanArray.length; s++) {
		spanArray[s].onmousedown = getStart;
	}
}

function remSel(obj) {
	var spanArray = obj.getElementsByTagName('span');
	for (s=0; s < spanArray.length; s++) {
		spanArray[s].onmousedown = null;
	}
}

function resetSel(obj) {
	var spanArray = obj.getElementsByTagName('span');
	for (s=0; s < spanArray.length; s++) {
		spanArray[s].style.background = '';
	}
}

var startNode = false;
function getStart() {
	if (this.id) {
		startNode = this.id;
	}
}

function getSel(obj) {
	var txt = '';
	var selected = document.getElementById('selected');
	selected.innerHTML = '';
	if (window.getSelection) {
		txt = window.getSelection();
		
		selected.appendChild(txt.getRangeAt(0).cloneContents());
		window.getSelection().collapse(obj,0);
	} else if (document.selection) {
		document.getElementById('selected').innerHTML = document.selection.createRange().htmlText;
		document.selection.empty();
	} else {
		return;
	}
	getSelId();
}

function getSelId() {
	var selectedArray = new Array();
	var selected = document.getElementById('selected');
	var spans = selected.getElementsByTagName('span');
	document.getElementById('selected_ids').innerHTML = '';
	selectedArray[0] = startNode;
	startNode = false;
	for (i=0; i < spans.length; i++) {
		if (spans[i].id) {
			selectedArray[i] = spans[i].id;
			spans[i].id = null;
		}
	}
	for (i=0; i < selectedArray.length; i++) {
		if (selectedArray[i]) {
			document.getElementById('selected_ids').innerHTML += selectedArray[i] + '<br />';
			document.getElementById(selectedArray[i]).style.background = '#CB9';
		}
	}
}