/*
**	Tab切换类
**	author:laoqiming@gmail.com
**	create date:2007-8-2
**	last modified:2007-12-25
**	laoqiming@gmail.com
*/
if(typeof TabSwitchManager == "undefined"){
	TabSwitchManager = [];
}
function TabSwitch(mainContainer,menuContainer,contentContainer){
	this.index = TabSwitchManager.length;
	TabSwitchManager.push(this);
	this.mainContainer = document.getElementById(mainContainer);
	this.menu=menuContainer.id;
	this.menuItemTag=menuContainer.itemTag;
	this.content=contentContainer.id;
	this.contentItemTag=contentContainer.itemTag;
	this.menuActiveClass=menuContainer.activeClass;
	this.menuNormalClass=menuContainer.normalClass;
	this.contentActiveClass=contentContainer.activeClass;
	this.contentNormalClass=contentContainer.normalClass;
	this.menuItems = [];
	this.contentItems = [];
	this.isAutoSwitch = !false;
	this.canSwitch = false;
	this.currentIndex =0;
	this.timer = null;
	this.interval = 1000*3;
	this.init = function(){
		var _self = this;
		var e=document.getElementById(this.menu).childNodes;
		for(var i=0;i<e.length;i++){
			if(e[i].nodeType == 1 && (e[i].tagName.toLowerCase() == this.menuItemTag.toLowerCase()))
				this.menuItems[this.menuItems.length] = e[i];
		}
		e=document.getElementById(this.content).childNodes;
		for(var i=0;i<e.length;i++){
			if(e[i].nodeType == 1 && (e[i].tagName.toLowerCase() == this.contentItemTag.toLowerCase()))
				this.contentItems[this.contentItems.length] = e[i];
		}
		for(var i=0;i<this.menuItems.length;i++){
				this.menuItems[i].onmouseover = function(){
					for(var i=0;i< _self.menuItems.length;i++){
						if(_self.menuItems[i] == this){
							_self.menuItems[i].className=_self.menuActiveClass;
							if(_self.contentItems.length > i)
								_self.contentItems[i].className=_self.contentActiveClass;
							_self.currentIndex = i;
						}else{
							_self.menuItems[i].className=_self.menuNormalClass;
							if(_self.contentItems.length > i)
								_self.contentItems[i].className=_self.contentNormalClass;
						}
					}
				}
		}
		this.mainContainer.onmouseover=function(){
			if(_self.isAutoSwitch){
				_self.canSwitch =false;
				clearInterval(_self.timer);
			}
		}
		this.mainContainer.onmouseout=function(){
			if(_self.isAutoSwitch){
				_self.canSwitch =true;
				_self.timer = setInterval('TabSwitchManager[' + _self.index + '].doSwitch()',_self.interval)
			}
		}
		if(this.isAutoSwitch){
			this.timer = setInterval('TabSwitchManager[' + this.index + '].doSwitch()',this.interval);
		}
	}
	this.doSwitch = function(){
		this.currentIndex = this.currentIndex < this.menuItems.length ? this.currentIndex : 0;
		for(var i=0;i< this.menuItems.length;i++){
			this.menuItems[i].className=this.menuNormalClass;
			if(this.contentItems.length > i)
				this.contentItems[i].className=this.contentNormalClass;
		}
		this.menuItems[this.currentIndex].className=this.menuActiveClass;
		if(this.contentItems.length > this.currentIndex)
			this.contentItems[this.currentIndex].className=this.contentActiveClass;
		this.currentIndex++;
	}
}