         Backbone.history.start
             pushState: true
             root: el.pathname
+
+        # Global refresh
+        @setRefreshInterval()
+
+        # We don't want the refresh to trigger if the tab isn't active
+        $(window).on 'blur',  =>
+            @blurred = true
+            clearInterval @globalRefreshInterval
+
+        $(window).on 'focus', =>
+            @blurred = false
+            @globalRefresh()
+            @setRefreshInterval()
+
+    setRefreshInterval: ->
+        clearInterval @globalRefreshInterval
+        setInterval @globalRefresh, @globalRefreshTime
+
+    globalRefresh: =>
+        @currentController.refresh()
 
     caughtError: ->
         # Ghetto try-catch

    # Usually called by Controllers when they're initialized. Loader is overwritten by views
    showPageLoader: ->
        @$page.html "<div class='page-loader centered cushy'></div>"

    # Called in Router. Shows the passed view's $el on the page
    show: (view) ->
        if @page.children.length
            @page.replaceChild view.el, @page.children[0]
        else
            @page.appendChild view.el

    bootstrapController: (controller) ->
        @currentController = controller

                    @user.set('deployUser', @user.deployUser = user)
                    @user.save()

module.exports = new Application
