function Yetii(){this.defaults={id:null,active:1,interval:null,wait:null,persist:null,tabclass:'tab',activeclass:'active',callback:null,leavecallback:null};this.activebackup=null;for(var n in arguments[0]){this.defaults[n]=arguments[0][n];};this.getTabs=function(){var retnode=[];var elem=document.getElementById(this.defaults.id).getElementsByTagName('*');var regexp=new RegExp("(^|\\s)"+this.defaults.tabclass.replace(/\-/g,"\\-")+"(\\s|$)");for(var i=0;i<elem.length;i++){if(regexp.test(elem[i].className))retnode.push(elem[i]);}
return retnode;};this.links=document.getElementById(this.defaults.id+'-nav').getElementsByTagName('a');this.listitems=document.getElementById(this.defaults.id+'-nav').getElementsByTagName('li');this.show=function(number){for(var i=0;i<this.tabs.length;i++){this.tabs[i].style.display=((i+1)==number)?'block':'none';if((i+1)==number){this.addClass(this.links[i],this.defaults.activeclass);this.addClass(this.listitems[i],this.defaults.activeclass+'li');}else{this.removeClass(this.links[i],this.defaults.activeclass);this.removeClass(this.listitems[i],this.defaults.activeclass+'li');}}
if(this.defaults.leavecallback&&(number!=this.activebackup))this.defaults.leavecallback(this.defaults.active);this.activebackup=number;this.defaults.active=number;if(this.defaults.callback)this.defaults.callback(number);};this.rotate=function(interval){this.show(this.defaults.active);this.defaults.active++;if(this.defaults.active>this.tabs.length)this.defaults.active=1;var self=this;if(this.defaults.wait)clearTimeout(this.timer2);this.timer1=setTimeout(function(){self.rotate(interval);},interval*1000);};this.next=function(){var _target=(this.defaults.active+1>this.tabs.length)?1:this.defaults.active+1;this.show(_target);this.defaults.active=_target;};this.previous=function(){var _target=((this.defaults.active-1)==0)?this.tabs.length:this.defaults.active-1;this.show(_target);this.defaults.active=_target;};this.previous=function(){this.defaults.active--;if(!this.defaults.active)this.defaults.active=this.tabs.length;this.show(this.defaults.active);};this.gup=function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)return null;else return results[1];};this.parseurl=function(tabinterfaceid){var result=this.gup(tabinterfaceid);if(result==null)return null;if(parseInt(result))return parseInt(result);if(document.getElementById(result)){for(var i=0;i<this.tabs.length;i++){if(this.tabs[i].id==result)return(i+1);}}
return null;};this.createCookie=function(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}
else var expires="";document.cookie=name+"="+value+expires+"; path=/";};this.readCookie=function(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;};this.contains=function(el,item,from){return el.indexOf(item,from)!=-1;};this.hasClass=function(el,className){return this.contains(el.className,className,' ');};this.addClass=function(el,className){if(!this.hasClass(el,className))el.className=(el.className+' '+className).replace(/\s{2,}/g,' ').replace(/^\s+|\s+$/g,'');};this.removeClass=function(el,className){el.className=el.className.replace(new RegExp('(^|\\s)'+className+'(?:\\s|$)'),'$1');el.className.replace(/\s{2,}/g,' ').replace(/^\s+|\s+$/g,'');};this.tabs=this.getTabs();this.defaults.active=(this.parseurl(this.defaults.id))?this.parseurl(this.defaults.id):this.defaults.active;if(this.defaults.persist&&this.readCookie(this.defaults.id))this.defaults.active=this.readCookie(this.defaults.id);this.activebackup=this.defaults.active;this.show(this.defaults.active);var self=this;for(var i=0;i<this.links.length;i++){this.links[i].customindex=i+1;this.links[i].onclick=function(){if(self.timer1)clearTimeout(self.timer1);if(self.timer2)clearTimeout(self.timer2);self.show(this.customindex);if(self.defaults.persist)self.createCookie(self.defaults.id,this.customindex,0);if(self.defaults.wait)self.timer2=setTimeout(function(){self.rotate(self.defaults.interval);},self.defaults.wait*1000);return false;};}
if(this.defaults.interval)this.rotate(this.defaults.interval);};