
var dontdefault = new Array();
function pretab() {
   if (document.location.hash.substring(1) != null && document.location.hash.substring(1) != "") {
      var hash = document.location.hash.substring(1);
      var hashanchor = hash.split(",");
      anchor = hashanchor[1];
      
         var hashers = hashanchor[0].split(";");
         for (var i = 0; i < hashers.length; i++) {
            var subhashers = hashers[i].split(":");
            opentab('tab_'+subhashers[0], subhashers[0],subhashers[1]);
            dontdefault[dontdefault.length] = subhashers[0] + ":" + subhashers[1];
         }
         highlight(anchor);
   }
}

function tabpreload() {
   
   if (document.location.hash.substring(1) != null && document.location.hash.substring(1) != "") {
      var hash = document.location.hash.substring(1);
      var hashanchor = hash.split(",");
      var wanttab = hashanchor[0];
      var wantanchor = hashanchor[1];
      
      if (wantanchor != null && wantanchor.substring(7) == "hlight_")
      {
         toggle(null,wantanchor);
         highlight(wantanchor);
      }
      else
      opentabnamed(wanttab, wantanchor);
      
   }
}

function opentabnamed(wanttab, wantanchor)
{
   var tabbox = 1;
   var tab = 1;
   var tabbtn = document.getElementById("_tabbox_tabbtn_" + tabbox + "_" + tab);
   
   while (tabbtn != null)
   {
      while (tabbtn != null)
      {
         var name = tabbtn.innerHTML.replace(/^\s+|\s+$/g,"").replace(/ /g,"_").toLowerCase();
         if (name == wanttab)
         {
            opentab('_tabbox_tabbtn_' + tabbox + '_' + tab,'_tabbox_tabcontent_' + tabbox + "_" + tab,'_tabbox_' + tabbox);
            if (wantanchor != null)
            {
               toggle(null,wantanchor);
               //highlight(wantanchor);
                 windowScrollTo(document.getElementById(wantanchor));
            }
            return;
         }
         tab++;
         tabbtn = document.getElementById("_tabbox_tabbtn_" + tabbox + "_" + tab);
      }
      tab = 1;
      tabbox++;
      tabbtn = document.getElementById("_tabbox_tabbtn_" + tabbox + "_" + tab);
   }
}

function defaulttab(divId, tabbox) {
   for (var i = 0; i < dontdefault.length; i++) {
      if (divId+":"+tabbox == dontdefault[i]) return;
   }
   opentab('tab_'+divId,divId,tabbox,1)
}

function highlight(divId) {
   
   var element;
   if (element = document.getElementById(divId)) {
      if (divId.replace("hlight_","") != divId && document.getElementById(divId.replace("hlight_","")) != null) {
         toggle(null,divId.replace("hlight_",""));
         colorFade(divId.replace("hlight_",""),'background','FFFFD9','EEEEEE',25,150);
      } else if (element.className.replace("instructions") != element.className) {
         toggle(null,divId.replace("hlight_",""));
		 colorFade(divId,'background','FFFFD9','EEEEEE',25,150);
      } 
		colorFade(divId,'background','FFFFD9','EEEEEE',25,150);
	  
	  windowScrollTo(element);
   }
}

function myTop (element) {
   var selectedPosY = 0;
   while (element != null) {
      selectedPosY += element.offsetTop;
      element = element.offsetParent;
   }
   return selectedPosY;
}


function myLeft (element) {
   
   var selectedPosX = 0;
   while (element != null) {
      selectedPosX += element.offsetLeft;
      element = element.offsetParent;
   }
   return selectedPosX;
}

function windowScrollTo (element) {
      
   var selectedPosY = 0;
   while (element != null) {
      selectedPosY += element.offsetTop;
      element = element.offsetParent;
   }
                                       
   window.scrollTo(0,selectedPosY - 20);
}

function toggle(self, divId, type) {
   if (type == null) type ='block';
   var element = document.getElementById(divId);

   // Hide it!
   if (element.style.display==type) {
      element.style.display='none';
      if (self == null) return;
      self.innerHTML = self.innerHTML.replace("&lt;&lt;","&gt;&gt;");
      self.innerHTML = self.innerHTML.replace("&laquo;","&raquo;");
      self.innerHTML = self.innerHTML.replace("minus.gif","plus.gif");
      self.style.fontStyle = "normal";
      self.className = self.className.replace('open','');

   // Unhide it!
   } else {
      element.style.display=type;
      if (self == null) return;
      self.innerHTML = self.innerHTML.replace("&gt;&gt;","&lt;&lt;");
      self.innerHTML = self.innerHTML.replace("&raquo;","&laquo;");
      self.innerHTML = self.innerHTML.replace("plus.gif","minus.gif");
      self.style.fontStyle = "italic";
      self.className += " open";
   }
}
   
function toggleClose(self, divId) {
   var element = document.getElementById(divId);

   // Hide it!
      element.style.display='none';
      self.style.fontStyle = "normal";
      self.innerHTML = self.innerHTML.replace("&lt;&lt;","&gt;&gt;");

   // Unhide it!
}
   
   
function poptoggle(linkerId, divId) {
   var element = document.getElementById(divId);
   var linker = document.getElementById(linkerId);
   if (element.style.display=='block') {
      element.style.display='none';
      linker.style.display = "block";
   } else {
      element.style.display='block';
      linker.style.display = "none";
   }
   
}
   
   
var prevTab = new Array();
var prevLinker = new Array();
function opentab(tabberId, divId, tabbox,suppress) {
//   if (suppress == null) document.location.hash=divId + (tabbox == null ? "" : ":" + tabbox);
   if (tabbox == null) tabbox  = "default";

   var element = document.getElementById(divId);
   var linker = document.getElementById(tabberId);
   if (prevLinker[tabbox] == linker) return;
   element.style.display='block';
   if (prevTab[tabbox]) {
      prevTab[tabbox].style.display='none';
   }
   if (prevLinker[tabbox]) {
         prevLinker[tabbox].className = prevLinker[tabbox].className.replace('selected','');
   }
   linker.className += " selected";
   prevTab[tabbox] = element;
   prevLinker[tabbox] = linker;
}

function cleanPopups() 
{

   var anchorElements = document.getElementsByTagName("a");

   for (var i = 0; i < anchorElements.length; i++)
   {
      if (anchorElements[i].getAttribute("onclick") != null) 
      {
         //alert(anchorElements[i].getAttribute("onclick"));
         anchorElements[i].className += " autoCollapseLink";
      }
   }
}

function toggleCheckbox(element)
{
   if (element.src.match('-unchecked'))
   {
      element.src = element.src.replace('-unchecked','-checked');
   } else {
      element.src = element.src.replace('-checked','-unchecked');
   }
}



var lasttip;
function randomtip() {
   var tipnum = 0;
   var tipholder = document.getElementById("tipholder");
   if (tipholder != null)
   {
      for (var i = 0;i < tipholder.childNodes.length; i++) {
         if (document.getElementById("tipholder").childNodes[i].nodeType == 1) tipnum++;
      }
   }

   if (lasttip != null) lasttip.style.display="none";
   var tip;
   do {
      var n = Math.floor(Math.random() * tipnum) + 1;
      tip = document.getElementById("tip-" + n);
   } while (tip == lasttip);

   if (tip != null)	tip.style.display="block";
   lasttip = tip;
}