<script>
  window.assetPath = (function(){

    var map = <%= deferred_scripts %>;

    return function(asset){ return map[asset]; };
  })();
</script>

<script>
  Ember.RSVP.configure('onerror', function(e) {

    // Ignore TransitionAborted exceptions that bubble up
    if (e && e.message === "TransitionAborted") { return; }

    <% if Rails.env.development? %>
      if (e) {
        if (e.message || e.stack) {
          console.log(e.message);
          console.log(e.stack);
        } else {
          console.log("Uncaught promise: ", e);
        }
      } else {
        console.log("A promise failed but was not caught.");
      }
    <% end %>
    window.onerror(e && e.message, null,null,null,e);
  });
</script>

<script>
  Discourse.CDN = '<%= Rails.configuration.action_controller.asset_host %>';
  Discourse.BaseUrl = '<%= RailsMultisite::ConnectionManagement.current_hostname %>'.replace(/:[\d]*$/,"");
  Discourse.BaseUri = '<%= Discourse::base_uri "/" %>';
  Discourse.Environment = '<%= Rails.env %>';
  Discourse.SiteSettings = PreloadStore.get('siteSettings');
  Discourse.LetterAvatarVersion = <%= LetterAvatar::VERSION %>;
  Discourse.Router = Ember.Router.extend({ location: 'discourse-location' });
  Discourse.Route.mapRoutes();
  Discourse.start();
  Discourse.set('assetVersion','<%= Discourse.assets_digest %>');
</script>

<%= script 'browser-update' %>
