var ConstituentParts;
if (!ConstituentParts) { 
  ConstituentParts = {};
}
if (!ConstituentParts.Projects) { 
  ConstituentParts.Projects = {};
}
ConstituentParts.Projects.Carousel = {
  'remove_focus_from': function(node) {
  },
  
  'switch_focus_to': function(index_or_null) {
    if (index_or_null == 0) {
      $('#slides').animate({'left': '-=537px'}, 500, 'swing', function() { $('#slides').css('left', '0') });
    }
    else if (index_or_null != null) {
      var index = index_or_null;
      $('#slides').animate({'left': '-=537px'}, 500, 'swing');
    }
  },
  
  'interrupt': function() {
    clearInterval(ConstituentParts.Projects.interval_id);
  },
  
  'resume': function() {
    ConstituentParts.Projects.interval_id = setInterval(ConstituentParts.Projects.next, 5000);
  },
  
  'initialize': function() {
    var pr = ConstituentParts.Projects;
    // make our slide strip the correct size
    if ($('#slides p').length > 1) {
      $('#slides').css('width', (537 * ($('#slides p').length + 1)));
      // then start the machine
      pr.setup('#slides p', pr.Carousel);
      $('#slides p').hover(function() {
        clearInterval(pr.interval_id);
      },
      function() {
        pr.interval_id = setInterval(pr.next, 5000);
      });
      $('#slides p:first').clone().appendTo('#slides');
    }
  }
}

$(document).ready(function() {
  ConstituentParts.Projects.Carousel.initialize();
});
