jQuery(document).ready(function($) 
{
  var wrapperwidth = $('#slider').width() * $('#slider ul > li').size();
  $('#slider ul').css('width', wrapperwidth);
  var wrapperheight = $('#slider').height();
  $('#slider ul').css('height', wrapperheight);

  var width = $('#slider').width();
  $('#slider ul li').css('width', width);

  var nSlides = $('#slider ul > li').size();
  var nSlide = 1;

  function swingToNext() {
    if(nSlide != nSlides) 
    {
      $('#slider ul').animate({ left: '-=' + $('#slider').width() }, 600, 'swing', function() { });
      nSlide++;
      window.location.hash = nSlide;
    }
  }

  function swingToPrevious()
  {
    if(nSlide != 1)
    {
      $('#slider ul').animate({ left: '+=' + $('#slider').width() }, 600, 'swing', function() { });
      nSlide--;
      window.location.hash = nSlide;
    }
  }

  if(window.location.hash != '')
  {
    var hashnum = window.location.hash.substr(1) * - $('#slider').width() + $('#slider').width();
    $('#slider ul').animate({ left: hashnum }, 0, function() { });
    nSlide = window.location.hash.substr(1);
  }

  function swingToSlide(id)
  {
    var hashnum = id * - $('#slider').width() + $('#slider').width();
    $('#slider ul').animate({ left: hashnum }, 400, 'swing', function() { });
    nSlide = id;
    window.location.hash = nSlide;
  }

  $("#nav_right").click(function() { swingToNext(); });
  $("#nav_left").click(function() { swingToPrevious(); });

  $("div.swipearea").touchwipe({
     wipeLeft: function() { swingToNext(); },
     wipeRight: function() { swingToPrevious(); },
     min_move_x: 20,
     preventDefaultEvents: true
  });

  $('#bookmarks .bookmark').each(function(index,Element){
      $(Element).click(function() { swingToSlide(Element.id.substr(13)); });
    });

});

