function textToStub(text) {
    return(text.toLowerCase().replace(new RegExp(' ', 'img'), '-').replace(new RegExp('[^a-z\-]', 'img'), ''));
}
function createIndex(container, cssSelector) {
    container = $(container);
    var ul = document.createElement('ul');
    $A($$(cssSelector)).each(function(item) {
	    var anchorName = textToStub(item.innerHTML);
	    var link = document.createElement('a');
	    link.setAttribute('name', anchorName);
	    item.parentNode.insertBefore(link, item);

	    var li = document.createElement('li');
	    var a = document.createElement('a');
	    a.setAttribute('href', '#'+anchorName);
	    a.innerHTML = item.innerHTML;
	    li.appendChild(a);
	    ul.appendChild(li);
	});
    container.appendChild(ul);
}