function tog(id,newClass) {
  var el=(typeof(id) != 'object')?document.getElementById(id):id;
  el.className=(newClass)?newClass:"";
}

function initMouseOvers() {
  if (document.getElementById("completed")) {
    var el=document.getElementById("completed").getElementsByTagName("a");
    for (i=0; i<el.length; i++) {
      el[i].onmouseover=function() {tog('area'+this.number,'overarea');};
      el[i].onmouseout =function() {tog('area'+this.number);};
      el[i].number=i+1;
    }
    var el=document.getElementById("hoverspots").getElementsByTagName("a");
    for (i=0; i<el.length; i++) {
      el[i].onmouseover=function() {tog('zoom'+this.number,'overimg');};
      el[i].onmouseout =function() {tog('zoom'+this.number);};
      el[i].number=i+1;
    }
  }
  if (document.getElementById("projects")) {
    var el=document.getElementById("projects").getElementsByTagName("li");
    for (i=0; i<el.length; i++) {
      el[i].onmouseover=function() {
        tog(this.getElementsByTagName("p")[0],'display');
        tog(this.getElementsByTagName("h3")[0],'blackbg');
      };
      el[i].onmouseout =function() {
        tog(this.getElementsByTagName("p")[0]);
        tog(this.getElementsByTagName("h3")[0]);
      };
    }
  }
}

function initOnClicks() {
  if (document.getElementById("homepage")) {
    for (i=1; i<5; i++) {
      var el=document.getElementById("slide"+i+"_thumb");
      el.onclick=function() {fade(this.number);};
      el.number=i;
    }
    cycleFadeInterval=setInterval("cycleFade();",8000);
  }
}

var curSlide=1;

function cycleFade() {
  var nextSlide=(curSlide==4)?1:curSlide+1;
  opacity('slide'+curSlide,'slide'+nextSlide);
  curSlide=(curSlide==4)?1:curSlide+1;
}

function fade(nextSlide) {
  clearInterval(cycleFadeInterval);
  if (curSlide!=nextSlide) {
    opacity('slide'+curSlide,'slide'+nextSlide);
    curSlide=nextSlide;
  }
}

function opacity(id1,id2) {
  var speed=3;
  var timer=0;
  for (i=100; i>=0; i--) {
    setTimeout("changeOpac("+i+",'"+id1+"')",(timer * speed));
    timer++;
  }
  for (i=0; i<= 100; i++) {
    setTimeout("changeOpac("+i+",'"+id2+"')",(timer * speed));
    timer++;
  } 
}

function changeOpac(opacity,id) {
  var el=document.getElementById(id).style;
  var elthumb=document.getElementById(id+'_thumb');
  el.opacity=(opacity / 100);
  el.filter="alpha(opacity="+opacity+")";
  el.display=(opacity>0)?'block':'none';
  elthumb.className=(opacity>0)?'selectedimg':'';
}

if (document.getElementById && document.getElementsByTagName)
  window.onload=function() {
    initMouseOvers();
    initOnClicks();      
  };