var timer = 0;

$(
  function()
  {
    // open all links with class newwindow in a new window:
    $( ".newwindow" ).bind(
      "click",
      function()
      {
        window.open( $( this ).attr( "href" ));
        return false;
      }
    );

    $( "#polaroids li" ).click(
      function()
      {
        loadImage( $( this ).find( "img" ).attr( "class" ));
      }
    );

    $( "#nextbtn" ).click( function(){ navigate( 39 )});
    $( "#prevbtn" ).click( function(){ navigate( 37 )});
  }
);

$( document ).keydown(
  function( event )
  {
    if(
      event.keyCode == 37 || 
      event.keyCode == 38 || 
      event.keyCode == 39 || 
      event.keyCode == 40
    )
    {
      if( !loggedin )
        navigate( event.keyCode );
    }

    if( event.keyCode == 69 && timer == 0 )
    {
      timer = new Date().getTime();
    }

    var currentURL = self.location.href;

    if(
        event.keyCode == 69 &&
        timer != 0 && 
        new Date().getTime() - timer > 2000 &&
        currentURL.split('/')[currentURL.split('/').length-1] != 'edit'
      )
    {
      self.location.href = currentURL + 'edit';
    }
  }
);

$( document ).keyup(
  function( event )
  {
    timer = 0;
  }
);

function navigate( key )
{
  var allImages = $( "#polaroids img" );
  var currentImage = parseInt( $( "#fotogroot img" ).attr( "class" ).split( "_" )[1] );
  var nextImage

  switch( key )
  {
    case 39: // next
      if( currentImage >= ( allImages.length - 1 ))
        nextImage = 0;
      else
        nextImage = currentImage + 1;
      break;

    case 37: // prev
      if( currentImage <= 0 )
        nextImage = allImages.length - 1;
      else
        nextImage = currentImage - 1;
      break;

    case 38: // first
      nextImage = 0;
      break;

    case 40: // last
      nextImage = allImages.length - 1;
      break;
  }

  loadImage( nextImage );
}

function loadImage( index )
{
  var image = $( $( "#polaroids img" )[index] );
  var imageURL = '/all/' + index;

  if( loggedin )
  {
    if( self.location.href.indexOf( imageURL ) == -1 && 
        self.location.href.indexOf( '/all/' ) > -1 )
    {
      self.location = '/all/' + index + '/';
      return false;
    }
  }

  $( "#fotogroot" ).html( '<img src="' + image.attr( "longdesc" ) + '" class="img_' + image.attr( "class" ) + '" /><h1 class="byline">' + image.attr( "title" ) + "</h1>" );
}

function randRange( min, max )
{
  return Math.floor(Math.random() * (max - min + 1)) + min;
}

function bekijkhetmaar()
{
  $( "body" ).append( '<a href="/all/"><img src="/images/bekijkhetmaar.png" alt="" width="" height="" id="bekijkhetmaar" /></a>' );

  var viewport = { height : $( window ).height(), width : $( window ).width() };
  var newX = randRange( 0, viewport.width - 70 );
  var newY = randRange( 160, viewport.height - 82 );

  $( "#bekijkhetmaar" ).offset( { left : newX, top : newY } );
  // $( "#bekijkhetmaar" ).animate({ top : newX + randRange( -100, 100 ), left : newY + randRange( -100, 100 ) }, 250000, 'linear' );
}
