HistoryDiffController.coffee 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. define [
  2. "base"
  3. ], (App) ->
  4. App.controller "HistoryDiffController", ($scope, $modal, ide, event_tracking) ->
  5. $scope.restoreDeletedDoc = () ->
  6. event_tracking.sendMB "history-restore-deleted"
  7. $scope.history.diff.restoreInProgress = true
  8. ide.historyManager
  9. .restoreDeletedDoc(
  10. $scope.history.diff.doc
  11. )
  12. .then (response) ->
  13. { data } = response
  14. $scope.history.diff.restoredDocNewId = data.doc_id
  15. $scope.history.diff.restoreInProgress = false
  16. $scope.history.diff.restoreDeletedSuccess = true
  17. $scope.openRestoreDiffModal = () ->
  18. event_tracking.sendMB "history-restore-modal"
  19. $modal.open {
  20. templateUrl: "historyRestoreDiffModalTemplate"
  21. controller: "HistoryRestoreDiffModalController"
  22. resolve:
  23. diff: () -> $scope.history.diff
  24. }
  25. $scope.backToEditorAfterRestore = () ->
  26. ide.editorManager.openDoc({ id: $scope.history.diff.restoredDocNewId })
  27. App.controller "HistoryRestoreDiffModalController", ($scope, $modalInstance, diff, ide, event_tracking) ->
  28. $scope.state =
  29. inflight: false
  30. $scope.diff = diff
  31. $scope.restore = () ->
  32. event_tracking.sendMB "history-restored"
  33. $scope.state.inflight = true
  34. ide.historyManager
  35. .restoreDiff(diff)
  36. .then () ->
  37. $scope.state.inflight = false
  38. $modalInstance.close()
  39. ide.editorManager.openDoc(diff.doc)
  40. $scope.cancel = () ->
  41. $modalInstance.dismiss()