function tru_wib_ajaxTab(instance, element, url) {
	var activeTabs = $$("#" + instance + " li.tru_wib_activeTab");
	var thisTab = instance + '_' + element + '_tab';
	var contentBlocks = $$("." + instance);
	
	for(var i = 0; i < activeTabs.length; i++) {
		activeTabs[i].removeClassName('tru_wib_activeTab');
	}
	$(thisTab).addClassName('tru_wib_activeTab');
	$(thisTab).firstDescendant().blur();
	
	for(var i = 0; i < contentBlocks.length; i++) {
		contentBlocks[i].style.display = "none";
	}
	$(instance + '_ajax').style.display = "block";
	$(instance + '_ajax').update("Loading...");
	
	new Ajax.Request(url, {
		onSuccess: function(transport) {
			$(instance + '_ajax').update(transport.responseText);
		},
		onFailure: function() {
			$(instance + '_ajax').update("<p>An error has occurred.</p>");
		}
	});
}

function tru_wib_showAJAXOnLoad(instance, url) {
	document.observe("dom:loaded", function() {
		$(instance + '_ajax').style.display = "block";
		$(instance + '_ajax').update("Loading...");
	});
	
	new Ajax.Request(url, {
		onSuccess: function(transport) {
			setTimeout("$('" + instance + "_ajax').update(\"" + transport.responseText + "\");", 20);
		},
		onFailure: function() {
			setTimeout("$('" + instance + "_ajax').update(\"<p>An error has occured.</p>\");", 20);
		}
	});
}

function tru_wib_showContentOnLoad(element) {
	document.observe("dom:loaded", function() {
		$(element).style.display = "block";
	});
}

function tru_wib_toggleTab(instance, element) {
	var activeTabs = $$("#" + instance + " li.tru_wib_activeTab");
	var thisTab = instance + '_' + element + '_tab';
	var contentBlocks = $$("." + instance);
	
	for(var i = 0; i < activeTabs.length; i++) {
		activeTabs[i].removeClassName('tru_wib_activeTab');
	}
	$(thisTab).addClassName('tru_wib_activeTab');
	$(thisTab).firstDescendant().blur();
	
	for(var i = 0; i < contentBlocks.length; i++) {
		contentBlocks[i].style.display = "none";
	}
	$(element).style.display = "block";
}