function Rolodex(target) {
	this.element = document.getElementById(target);
	if (!this.element) return false;
	this.ul = this.element.getElementsByTagName("ul")[0];
	this.tabs = this.ul.getElementsByTagName("li");
	this.contents = this.getContents();
	this.bind();
}

Rolodex.prototype.getContents = function() {
	contents = new Array();
	this.div = this.element.getElementsByTagName("div")[0];
	this.lists = this.div.getElementsByTagName("ol");
	for(var i = 0; i < this.lists.length; i++) {
        contents.push(this.lists[i]);
	}
	return contents;
}

Rolodex.prototype.bind = function() {
	var o = this;
	for(var i = 0; i < this.tabs.length; i++) {
		this.tabs[i].onclick = function() { o.expand(this); return false; };
		var a = this.tabs[i].getElementsByTagName("a")[0];
    	if (a) a.onclick = function() { return false; };
	}
}

Rolodex.prototype.expand = function(caller) {
	for(var i = 0; i < this.tabs.length; i++) {
		var tab = this.tabs[i];
		if (tab == caller) {
		
			this.collapse();
			
			
			
			if(tab.id=='secondLi'){
			tab.className = "active floatR";
			}
			else{
				tab.className = "active";
			}
			
			tab.getElementsByTagName("a")[0].className='active';
			tab.getElementsByTagName("span")[0].className='active';
			this.contents[i].className = this.contents[i].className.replace(new RegExp(" off-left\\b"), "");
		}
	}
}

Rolodex.prototype.collapse = function() {
	for(var i = 0; i < this.tabs.length; i++) {
		

		if(this.tabs[i].className == 'active floatR'){
			this.tabs[i].className = "floatR";
		}
		else{
			this.tabs[i].className = "";
		}
		
		
		this.tabs[i].getElementsByTagName("a")[0].className='';
		this.tabs[i].getElementsByTagName("span")[0].className='';

		
		
		this.contents[i].className = this.contents[i].className.replace(new RegExp(" off-left\\b"), "");
		this.contents[i].className += " off-left";
	}
}