/**
 * TVN24 2007 - DL_Tabbar
 *
 * Tabbar
 *
 * @author Jakub Biczkowski <jakub.biczkowski@portal.onet.pl>
 * @package TVN24
 */
 
function DL_Tabbar(id,sel_elem,evil)
{
   this.id = id;
   this.sel_elem = sel_elem;
   this.evil = evil;
   this.obj = document.getElementById(id);   
   this.tabArray = new Array();
}


DL_Tabbar.prototype.initialize = function()
{
   try
   {
      var dl_ar1 = this.getElementsByClassName(this.obj, '*', 'dltab-selected');
      var dl_ar2 = this.getElementsByClassName(this.obj, '*', 'dltab-unselected');
      var dl_flatten = dl_ar1.concat(dl_ar2);   

      this.tabcollect(dl_flatten);
      var tar = this.tabArray;
      var tarlength = tar.length;
      
      for(var i=0; i<tarlength; i++)
      {
         tar[i].parent = this;
         tar[i].index = i;
         tar[i].onclick = function(e)
         {
            this.parent.selecttab(this.index);
         }
                  
         tar[i].onmouseover = function(e)
         {
            this.style.cursor = 'pointer';
            if(!this.selected) this.className = 'dltab-hover';     
         }
                  
         tar[i].onmouseout = function(e)
         {
            if(!this.selected)
            {
               this.className = 'dltab-unselected';
            }
            return false;
         }
      }
      this.selecttab(this.sel_elem);
   }
   catch(ex)
   { 
      //alert('initialize - '+ex.message); 
   }
}


DL_Tabbar.prototype.tabcollect = function(tabarray)
{
   try
   {
      var arlen = tabarray.length;
      for(var i=0; i<arlen; i++)
      {
         this.tabArray[i]=tabarray[i];
      }
   }
   catch(ex)
   { 
      //alert('tabcollect - '+ex.message);
   }
}


DL_Tabbar.prototype.unselecttab = function()
{
   try
   {
      if(this.tabArray!=null)
      {
         var a = this.tabArray;
         var a_l = a.length;
         for(var i=0; i<a_l; i++)
         {
            a[i].className = 'dltab-unselected';
            a[i].selected = false;
            
         }
      }
      this.selection = false;
   }
   catch(ex)
   { 
      //alert('unselecttab - '+ex.message); 
   }
}


DL_Tabbar.prototype.selecttab = function(i)
{
   try
   {
      var tar = this.tabArray;
      var hidelem = (tar[i].firstChild.nextSibling.nextSibling.nextSibling.innerHTML).replace(/&amp;/g,"&");
      
      
      
      this.getContent(hidelem,tar[i]);
      tar[i].parent.unselecttab();

      if(tar[i].selected != true)
      {
         tar[i].className = 'dltab-selected';
         tar[i].selected = true;
      }
      else
      {
         tar[i].className = 'dltab-unselected';
         tar[i].selected = false;
      }
   }
   catch(ex)
   { 
      //alert('selecttab - '+ex.message); 
   }
}


DL_Tabbar.prototype.getElementsByClassName = function(oElm, strTagName, strClassName)
{
   var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
   var arrReturnElements = new Array();
   strClassName = strClassName.replace(/-/g, "\-");
   var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
   var oElement;
   for(var i=0; i<arrElements.length; i++)
   {
      oElement = arrElements[i];
      if(oRegExp.test(oElement.className))
      {
         arrReturnElements.push(oElement);
      }
   }
   return (arrReturnElements);
}


DL_Tabbar.prototype.getContent = function(div_id,elem)
{
   try
   {	
		var c = this.getElementsByClassName(this.obj, '*', 'tc');
		var cl = c.length;
		
		for(var i=0; i<cl; i++)
		{
			c[i].style.display = 'none';
		}
		
		
         
		var daa = document.getElementById(div_id);
		daa.style.display = 'inline';
		
   }
   catch(ex)
   { 
      //alert('getContent - '+ex.message); 
   }
}