var module=function(moduleId){
	this.elmId=moduleId;
	return this;
};
module.prototype.initTabs=function(opt){
		this.tabsId=this.elmId+'_tabs';
		this.contentIdPreText=this.elmId+'_cont_';
		
		if(opt && opt.hover){
			(new Module.Tabs(this.tabsId, this.contentIdPreText)).init_hover();
		}else{
			(new Module.Tabs(this.tabsId, this.contentIdPreText)).init();
		}
	};


var Module={};
Module.Tabs=function(nodeId, contentIdPreText){
	if((!nodeId)||(!(Dom.$id(nodeId)))){return null;}
	var selfObj=this;	
	this.elmId=nodeId;
	this.contentIdPreText=contentIdPreText;
	this.eTabBox=Dom.$id(nodeId);
	this.eTabs=this.eTabBox.getElementsByTagName('li');//eTab -> li tag
	this.tabNum=this.eTabs.length;
	this.curTabIndex=0;
	this.targetTabIndex=0;
	this.content=[];
	var i,j,k;

	this.changeContent=function(curIndex, targetIndex){
		this.content[curIndex].style['display']='none';
		this.content[targetIndex].style['display']='';
	};

	this.chgTab=function(){
		try{	
				if(this.curTabIndex==this.targetTabIndex){return;}
				Dom.removeClass('cur', this.eTabs[this.curTabIndex]);
				Dom.addClass('cur', this.eTabs[this.targetTabIndex]);
				var temC=this.curTabIndex;
				var temT=this.targetTabIndex;
				this.curTabIndex=this.targetTabIndex;				
				this.changeContent(temC, temT);
		}catch(e){alert('Error 1!');}
	};

	this.hoverTab=function(IndexID){
		try{ 
			this.init_hover();
			if(this.curTabIndex==IndexID){return;}
			Dom.removeClass('cur', this.eTabs[this.curTabIndex]);
			Dom.addClass('cur', this.eTabs[IndexID]);
			var temC = this.curTabIndex;
			var temT = IndexID;
			this.curTabIndex = IndexID;
			this.changeContent(temC, temT);	

		}catch(e){alert('Error 2!');}
	
	}
	this.init=function(){
		for(i=0; i<this.eTabs.length; i++){
			var ttTab=this.eTabs[i];
			if(Dom.hasClass("cur", ttTab)){
				this.curTabIndex=this.targetTabIndex=i;
			}
			this.content[i]=Dom.$id(this.contentIdPreText+(i+1));
			var ttLink=ttTab.getElementsByTagName('a')[0];
			ttLink.setAttribute('i',i);
			ttLink.onclick=function(ev){
				this.blur();
				selfObj.targetTabIndex=this.getAttribute('i');
				selfObj.chgTab();
				return false;
			};
		}
	};
	this.init_hover=function(){
		for(i=0; i<this.eTabs.length; i++){
			var ttTab=this.eTabs[i];
			if(Dom.hasClass("cur", ttTab)){
				this.curTabIndex=this.targetTabIndex=i;
			}
			this.content[i]=Dom.$id(this.contentIdPreText+(i+1));
			var ttLink=ttTab.getElementsByTagName('a')[0];
			ttLink.setAttribute('i',i);
			ttLink.onmouseover=function(ev){
				//this.blur();
				selfObj.targetTabIndex=this.getAttribute('i');
				selfObj.chgTab();
				return false;
			};
		}
	};
	return selfObj;
};
