(function() {
  var checkProductionsPaneState, checkReviewState, documentResizeHandler, eventNavigationItemClickHandler, handleFacebox, handleMediaQueries, handleTrailers, mediaQueries, productionsLinkHandler, runMediaQueryFunctions, tmr;
  tmr = null;
  mediaQueries = {
    revealReviewsSidebar: true,
    showProductionsPane: true
  };
  checkReviewState = function() {
    var $document, $eventNavigation, $reviews, $reviewsNavItem, is_selected;
    $reviews = $('#reviews');
    $eventNavigation = $('#event-navigation');
    $reviewsNavItem = $eventNavigation.find('a.reviews');
    $document = $(document);
    is_selected = $reviewsNavItem.hasClass('selected');
    mediaQueries.revealReviewsSidebar = $document.width() >= 1200;
    if (mediaQueries.revealReviewsSidebar === true) {
      if ($reviews.css('display') === 'none') {
        $reviews.show();
      }
      if (is_selected === true) {
        return $reviewsNavItem.siblings('a:first-child').trigger('click');
      }
    } else {
      if (is_selected !== true) {
        $reviews.hide();
      }
      return $('.social-widget').hide();
    }
  };
  checkProductionsPaneState = function() {
    var $mainNavigation, $productionsNavItem, $productionsPane;
    $mainNavigation = $('#main-navigation');
    $productionsNavItem = $mainNavigation.find('a.productions');
    $productionsPane = $('#poster-wall');
    mediaQueries.showProductionsPane = $mainNavigation.css('position') !== 'fixed';
    if (mediaQueries.showProductionsPane === true) {
      $productionsPane.addClass('selected');
      return $productionsNavItem.removeClass('selected');
    } else {
      if (!$productionsNavItem.hasClass('selected')) {
        return $productionsPane.removeClass('selected');
      }
    }
  };
  runMediaQueryFunctions = function() {
    checkReviewState();
    return checkProductionsPaneState();
  };
  documentResizeHandler = function() {
    if (tmr) {
      clearTimeout(tmr);
    }
    return tmr = setTimeout(runMediaQueryFunctions, 50);
  };
  handleMediaQueries = function() {
    $(window).resize(documentResizeHandler);
    return runMediaQueryFunctions();
  };
  productionsLinkHandler = function(event) {
    var container, link;
    container = event.data.container;
    mediaQueries = event.data.mediaQueries;
    link = $(this);
    if (mediaQueries.showProductionsPane === false) {
      event.preventDefault();
      link.toggleClass('selected');
      return container.toggleClass('selected');
    }
  };
  eventNavigationItemClickHandler = function(event) {
    var $event, $links, $otherSections, $sections, $selectedLink, $selectedSection, target;
    event.preventDefault();
    mediaQueries = event.data.mediaQueries;
    $event = $('#event');
    $links = $event.find('a.event-navigation-item');
    $sections = $event.find('section');
    $selectedLink = $(this);
    target = $selectedLink.data('target');
    $selectedSection = $sections.filter(target);
    $otherSections = $sections.not(target);
    if (mediaQueries.revealReviewsSidebar === true) {
      $otherSections = $otherSections.not('.reviews');
    }
    $links.removeClass('selected');
    $selectedLink.addClass('selected');
    $selectedSection.show();
    return $otherSections.hide();
  };
  handleTrailers = function() {
    var $trailers;
    $trailers = $('#summary').find('.trailer');
    return $trailers.fitVids();
  };
  handleFacebox = function() {
    return $('a[rel*=facebox]').facebox();
  };
  $(function() {
    var $content, $mainNavigation, $posterWall, $productionsLink, facebookPlugin, posterWallHandler, twitterPlugin;
    handleMediaQueries();
    $.facebox.settings.closeImage = '/assets/closelabel.png';
    $.facebox.settings.loadingImage = '/assets/loading.gif';
    handleFacebox();
    $mainNavigation = $('#main-navigation');
    $productionsLink = $mainNavigation.find('a.productions');
    $posterWall = $('#poster-wall');
    facebookPlugin = new Facebook($('#facebook-widget'), $mainNavigation.find('a.facebook'), mediaQueries);
    twitterPlugin = new Twitter($('#twitter-widget'), $mainNavigation.find('a.twitter'), mediaQueries);
    $productionsLink.on('click', {
      container: $posterWall,
      mediaQueries: mediaQueries
    }, productionsLinkHandler);
    handleTrailers();
    posterWallHandler = new PosterWallHandler($posterWall);
    posterWallHandler.selectPoster($('#event'));
    $content = $('#content');
    $content.on('click', 'a.event-navigation-item', {
      mediaQueries: mediaQueries
    }, eventNavigationItemClickHandler);
    $content.on('pjax:end', function() {
      handleFacebox();
      posterWallHandler.selectPoster($('#event'));
      handleTrailers();
      return $posterWall.removeClass('selected');
    });
    return $content.on('click', '.trailer a', function(event) {
      var $link, url;
      event.preventDefault();
      $link = $(this);
      url = "http://vimeo.com/api/oembed.json?url=" + ($link.attr('href')) + "&autoplay=true";
      return $.ajax({
        dataType: 'jsonp',
        url: url,
        success: function(data) {
          var $container;
          $container = $link.parent('.trailer');
          $link.remove;
          $container.html(data.html);
          return $('.trailer').fitVids();
        }
      });
    });
  });
}).call(this);

