var opr=navigator.userAgent.indexOf("Opera")!=-1
var ie4=document.all&&!opr
var dom=document.getElementById&&!opr
change=10;
num_faders=8;
num_mouseovers=8;
ms=0;
framerate=100;
direction=0;
cycle_time=9000;

currfade =new Array(0,    0,    0,    0,    0,    0,    0,    0,    0);
starttime=new Array(0, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500);
stoptime =new Array(0, 4500, 5000, 5500, 6000, 6500, 7000, 7500, 8000);

function startanim() {
  for (i=1; i<=num_mouseovers; i++) {flip('m'+i,0)}  // Hide mouseovers
  if (opr) document.all.img8.style.top+=1 // Opera bug? No, happens in IE, too! Argh!
  setTimeout("fadeit()", 1)
  setolicons();
}

// Loops through UL/OLs and sets the icons to rainbowwy.
function setolicons() {
  setolutil(document.getElementsByTagName("ul"));
  setolutil(document.getElementsByTagName("ol"));
}

function setolutil(lists) {
  for (var i = 0; i < lists.length; i++) {
    // Only do the outermost one, and only if it is not "nopaws".
    if ((lists[i].tagName == null) || (lists[i].parentNode == null)
      || (lists[i].parentNode.tagName.toLowerCase() == "li")
      || (
        (lists[i].className != null)
        &&
        ((lists[i].className.toLowerCase() != "secrnav") || (lists[i].tagName.toLowerCase() != "ol"))
        &&
        ((lists[i].className.toLowerCase() == "nopaws") || (lists[i].tagName.toLowerCase() != "ul"))
      )
    ) {
      continue;
    }
    var x = 2;
    var items = lists[i].childNodes;
    for (var j = 0; j < items.length; j++) {
      if ((items[j].tagName == null) || (items[j].tagName.toLowerCase() != "li")) {
        continue;
      }
      items[j].style.listStyleImage="url(http://www.furcadia.com/images/bullet"+x+".gif)";
      (x==8) ? x=2 : x++;
    }
  }
}

function fadeit() {
  ms+=framerate
  if (ms>9000) ms=1
  for (i=1;i<=num_faders;i++) {
    direction=(ms<starttime[i])?0:((ms>stoptime[i])?-1:1)
    if (ie4||dom) fade(i)
    else {
      if (direction) document['img'+i].style.visibility=(direction>0)?'hidden':'visible'
    }
  }
  setTimeout("fadeit()", framerate);
}

function fade(n) {
  Name='img'+n
  currfade[n]+=(direction*change)
  // 1-99 rather than 0-100 for compatibility reasons.
  if (currfade[n]>99) currfade[n]=99
  if (currfade[n]<1) currfade[n]=1
  if (ie4) {
    document[Name].filters.alpha.opacity=currfade[n]
  }
  else if (dom) document.getElementById(Name).style.MozOpacity=currfade[n]/100
}

function flip(x,y) {
  if(ie4||opr){
    if(document[x] != null && document[x].style != null)
    document[x].style.visibility=(y?'visible':'hidden')
  }
  else if(dom)document.getElementById(x).style.visibility=(y?'visible':'hidden')
}
