var _active = null;

function initTabs()
{
	var sets = document.getElementsByTagName("ul");
	for (var i = 0; i < sets.length; i++)
	{
		if (sets[i].className.indexOf("tabset") != -1)
		{
			var tabs = [];
			var links = sets[i].getElementsByTagName("a");
			
			for (var j = 0; j < links.length; j++)
			{
				if (!this.rel) this.rel = "";
				if (links[j].className.indexOf("tab") != -1)
				{
					if (j == 0)
					{
						links[j].className += " active";
					}
					tabs.push(links[j]);
					links[j].tabs = tabs;
					var c = document.getElementById(links[j].rel);

					//reset all tabs on start
					if (c) if (links[j].className.indexOf("active") != -1){ c.style.display = "block"; _active = links[j];}
					else c.style.display = "none";

					links[j].onmouseover = function ()
					{
						var c = document.getElementById(this.rel);
						if (c)
						{
							//reset all tabs before change
							for (var i = 0; i < this.tabs.length; i++)
							{
								var tab = document.getElementById(this.tabs[i].rel);
								if (tab)
								{
									tab.style.display = "none";
								}
								this.tabs[i].className = this.tabs[i].className.replace("active", "");
							}
							this.className += " active";
							c.style.display = "block";
						}
					}
				}
			}
			sets[i].onmouseout = function() {
				var _links = this.getElementsByTagName("a");
				for (i = 0; i < _links.length; i ++)
				{
					_links[i].className = _links[i].className.replace("active", "");
					var tab = document.getElementById(_links[i].rel);
					if (tab)
					{
						tab.style.display = "none";
					}
					if (_active)
					{
						if (_links[i] == _active)
						{
							_links[i].className += " active";
							if (tab)
							{
								tab.style.display = "block";
							}
						}
					}
				}
			}
		}
	}
}

if (window.addEventListener)
	window.addEventListener("load", initTabs, false);
else if (window.attachEvent && !window.opera)
	window.attachEvent("onload", initTabs);

