/**
 * @author pawel
 */


if(typeof adv=='object')
adv.tabs = {
	tabs : [],
	tabCont : {},
	className : 'tabswitch',
	init : function(opts) {
		this.tabCont = opts['container'];
		if(opts['className']) { this.className = opts['className']; }
		addClass(this.tabCont,'tabs');
		var ul = $('tabswitch') ? $('tabswitch') : document.createElement('ul');
		ul.setAttribute('id',this.className)
		
		this.tabs = getElementsByClass('tab',this.tabCont);
			for(var i=0;i<this.tabs.length;i++) {
				var li = document.createElement('li');
				li.appendChild(document.createTextNode(getElementsByClass('desc',this.tabs[i])[0].firstChild.nodeValue));
				li.setAttribute('id','tab'+i);
				li.onclick = function() { adv.tabs.switcher(this.id); }

				$(li.id)?'':ul.appendChild(li);				
			}
		this.tabCont.insertBefore(ul,this.tabs[0]);
		(opts['default']) ? adv.tabs.switcher(opts['default']) : adv.tabs.switcher('tab0')
	},
	
	switcher : function(tab) {
		for(var i=(this.tabs.length-1); i>=0; i--) { this.tabs[i].style.display = 'none'; }
		var lis = this.tabCont.getElementsByTagName('li');
		for(var i=(lis.length-1); i>=0; i--) { replaceClass(lis[i],'active','')}
		this.tabs[tab.substr(3)].style.display = 'block';
		addClass($(tab),'active');
	},
	
	notabs : function() {
		for(var i=(this.tabs.length-1); i>=0; i--) { this.tabs[i].style.display = ''; }
		replaceClass(this.tabCont,'tabs','')
		if($('tabswitch'))$('tabswitch').parentNode.removeChild($('tabswitch'))		
	},
	
	killtab : function(tab) {
		if(!$(tab))return;
		$('tabswitch').removeChild($(tab));
		tab=tab.substr(3);
		for(var i=0;i<this.tabs.length;i++) { if(i==tab){this.switcher('tab'+(i-1));this.tabs[i].parentNode.removeChild(this.tabs[i]); }  }
	},
	
	newtab : function(content) {
		var nt = this.tabCont.appendChild(document.createElement('div'))
		addClass(nt,'tab');
		nt.innerHTML = content;
		adv.tabs.init({'container':this.tabCont,'default':'tab'+$('tabswitch').getElementsByTagName('li').length})
	}
}
