function nextImage(offset) {
  $("#dupersized").dupersize.nextElement(offset);
  hideUI(true);
  return false;
}

var UIActive = false;
function hideUI(force, speed) {
  speed = speed || 'fast';
  if (UIActive == false || force == true) {
    $('h2.ui').fadeOut(speed);
    $('#controls').fadeOut(speed);
  }
}

function showUI(){
  $('h2.ui').fadeTo( 400, 0.8 );
  $('#controls').fadeTo(400, 1);
}

// Alignment
(function($) {
    $.fn.vAlign = function(center, offset) {
      offset = offset || 0
      if(center) {
        $(this).css('margin-top', (($(window).height() - $(this).height())/2)+offset);
      } else {
        $(this).css('margin-top', $(window).height() - $(this).height() + offset);
      }
      return $(this);
    };
    
    $.fn.hAlign = function() {
      $(this).css('margin-left', ($(window).width() - $(this).width())/2);
      return $(this);
    }
})(jQuery);


// Document ready
$(document).ready(function() {

  // Images
  $('#dupersized').dupersize('img.dupersized', true, '#controls');
  
  // Initialize the UI
  initUI();
                       
  // Idletimer
  window.setTimeout("$.idleTimer(1500);", 1000);
});



$(document).bind("active.idleTimer", function(){
  showUI();
});

$(document).bind("idle.idleTimer", function(){
  hideUI();
});

// Events
$(window).resize(function() {
  $.fn.dupersize.refresh();
});

function initUI() {
  // Controls
  $('.ui').each( function(index, element) {
    $(element).hover(function(){ UIActive = true; },
                         function(){ UIActive = false; });
  });
  $(document).keydown(function(e){
      if (e.keyCode == 37) { 
        nextImage(-1);
        return false;
      }
      if (e.keyCode == 39) { 
        nextImage(1);
        return false;
      }
      if (e.keyCode == 38 || e.keyCode == 40) {
        $("#dupersized").dupersize.toggleSize();
        return false;
      }
  });
  
}

