var slides = new Array();
var currentSlide = 0;
var rotateTime = 6000; //6 secs
var transTime = 1000;
var changeRate = 250;
var playID = null;
var slideHeight = 0;
var playRunning = true;
var imagePath = "images/icons/"
    
function ssInit() {
  var btnBack = document.getElementById("slideBack");
  var btnNext = document.getElementById("slideNext");
  var btnPause = document.getElementById("slidePause");
  btnBack.onkeypress = prevSlide;
  btnBack.onclick = prevSlide;
  btnNext.onkeypress = nextSlide;
  btnNext.onclick = nextSlide;
  btnPause.onkeypress = playSlides;
  btnPause.onclick = playSlides;
  
  var ss = document.getElementById("slides");
  nodes = ss.childNodes;
  for (i=0; i < nodes.length; i++) {
    if ((nodes[i].nodeType == 1) && (nodes[i].className == "slide" )) {
      slides[slides.length] = nodes[i];
    }
  }
  playID = setTimeout( "nextSlide()", rotateTime);
}
function showSlide(n) {
  if(playRunning)
    clearTimeout(playID);

  slides[currentSlide].style.zIndex = 0;
  slides[n].style.zIndex = 1;
  
  for (i=0; i < slides.length; i++) {
    if (i!=currentSlide) changeOpac(0, slides[i].id);
  }
  opacity(slides[n].id, 0, 100, transTime, changeRate);
  opacity(slides[currentSlide].id, 100, 0, transTime, changeRate);
  currentSlide = n; 
  if (playRunning)
    playID = setTimeout( "nextSlide()", rotateTime);
}

function playSlides() {
  var imgPause = document.getElementById("imgPause");

  if (!playRunning) {
    //Play
    playRunning = true;
    imgPause.setAttribute("src", "icon_pause_btn.gif");
    imgPause.setAttribute("alt", "Pause");
    nextSlide();
  } else {
    //Stop
    playRunning = false;
    clearTimeout(playID);
    imgPause.setAttribute("src", "icon_play_btn.gif");
    imgPause.setAttribute("alt", "Play");
  }
  return false;
}

function nextSlide() {
  var i = currentSlide;
  if (i >= (slides.length-1)) {
    i = 0;
  } else {
    i++;
  }
  showSlide(i);
  return false; 
}

function prevSlide() {
  var i = currentSlide;
  if (i > 0) {
    i--;
  } else {
    i = slides.length - 1;
  }
  showSlide(i);
  return false;
}

function getOffsetTop (el) {
  var ot = el.offsetTop;
  while((el = el.offsetParent) != null)
    ot += el.offsetTop;
  return ot;
}

addLoadEvent(ssInit);