var home = new function()
{
  var $selectedMainLi;
  var $mainImg;

  var slideShow = [{newSource: "RE-Home", newSmallSource: "RE-Home-small"}, {newSource: "DJ-Home", newSmallSource: "DJ-Home-small"},
                   {newSource: "DM-Home", newSmallSource: "DM-Home-small"}, {newSource: "LP-Home", newSmallSource: "LP-Home-small"}];

  var slideIndex = 0;
  var playSlideShow = true;

  this.setOpacity = function(li)
  {
    if (!$(li).hasClass("selected"))
    {
      $(li).css("opacity", "0.5");
    }
    else
    {
      $selectedMainLi = $(li);
      $(li).css("opacity", "1");
    }
  }

  this.setImageVisibility = function(img)
  {
    if (!$(img).hasClass("current"))
    {
      $(img).hide();
    }
    else
    {
      $mainImg = $(img);
    }
  }

  this.changeMainImg = function(newSource, newSmallSource, index)
  {
    $(".slideshow-control span").removeClass("pause");
    $(".slideshow-control span").addClass("play");
    playSlideShow = false;

    _changeImg(newSource, newSmallSource, index);
  }

  function _changeImg(newSource, newSmallSource, index)
  {
    $mainImg.removeClass("current");
    $("#" + newSource).addClass("current");

    $($mainImg).fadeOut(200, function(){
      $("#" + newSource).fadeIn(200);
    });

    $mainImg = $("#" + newSource);

    var link = document.getElementById(newSmallSource);
    var $li = $(link).parent().parent();
    $selectedMainLi.removeClass("selected");
    $($li).addClass("selected");
    $selectedMainLi = $($li);

    $(".thumbs li").each(function (){
      home.setOpacity(this);
    });

    slideIndex = index;
  }

  this.slideshow = function()
  {
    if (playSlideShow)
    {
      _changeImg(slideShow[slideIndex].newSource, slideShow[slideIndex].newSmallSource, slideIndex);

      if (slideIndex < 3)
      {
        slideIndex++;
      }
      else
      {
        slideIndex = 0;
      }

      setTimeout("home.slideshow()", 10000);
    }
  }

  this.controlSlideShow = function(span)
  {
    if ($(span).hasClass("play"))
    {
      $(span).removeClass("play");
      $(span).addClass("pause");
      playSlideShow = true;
      home.slideshow();
    }
    else if ($(span).hasClass("pause"))
    {
      $(span).removeClass("pause");
      $(span).addClass("play");
      playSlideShow = false;
    }
  }
}

$(document).ready(function(){  
  $(".thumbs li").each(function (){
    home.setOpacity(this);
  });

  $(".slideshow-container img").each(function() {
    home.setImageVisibility(this);
  });

  $(".thumbs li").mouseover(function() {
    $(this).css("opacity", "1");
  });

  $(".thumbs li").mouseout(function() {
    if (!$(this).hasClass("selected"))
    {
      $(this).css("opacity", "0.5");
    }
  });

  setTimeout("home.slideshow()", 10000);

  Cufon.refresh();
});
