 
       @setState initialLoaded: true
 
+  componentWillUnmount: ->
+    clearTimeout @timeout
+
   loadHistory: =>
+    return if _.last(@state.events)?.detail.type == 'match-disbanded'
+
     $.ajax laroute.route('matches.history', matches: @props.match.id, full: @props.full),
       method: 'GET'
       dataType: 'JSON'

    .done (data) =>
      return if _.isEmpty data.events.data

      lastIndex = _.findLastIndex @state.events, (o) => o.id == @state.since + 1

      lastIndex =
        if lastIndex == -1
          @state.events.length - 1
        else
          lastIndex - 1

      newEvents = _.concat @state.events[..lastIndex], data.events.data
      lastEvent = _.last newEvents
      lastGameEvent = _.findLast newEvents, (o) -> o.game?

      newUsers = _(data.users.data)
        .keyBy (o) -> o.id

      since: 0
      lastGameId: 0
      teamType: ''
      initialLoaded: false

    @loadHistory @state.since
