FileTreeController.coffee 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. define [
  2. "base"
  3. ], (App) ->
  4. App.controller "FileTreeController", ["$scope", "$modal", ($scope, $modal) ->
  5. $scope.openNewDocModal = () ->
  6. $modal.open(
  7. templateUrl: "newDocModalTemplate"
  8. controller: "NewDocModalController"
  9. )
  10. $scope.openNewFolderModal = () ->
  11. $modal.open(
  12. templateUrl: "newFolderModalTemplate"
  13. controller: "NewFolderModalController"
  14. )
  15. $scope.openUploadFileModal = () ->
  16. $modal.open(
  17. templateUrl: "uploadFileModalTemplate"
  18. controller: "UploadFileModalController"
  19. scope: $scope
  20. )
  21. $scope.orderByFoldersFirst = (entity) ->
  22. return 0 if entity.type == "folder"
  23. return 1
  24. ]
  25. App.controller "NewDocModalController", [
  26. "$scope", "ide", "$modalInstance", "$timeout",
  27. ($scope, ide, $modalInstance, $timeout) ->
  28. $scope.inputs =
  29. name: "name.tex"
  30. $scope.state =
  31. inflight: false
  32. $modalInstance.opened.then () ->
  33. $timeout () ->
  34. $scope.$broadcast "open"
  35. , 700
  36. $scope.create = () ->
  37. $scope.state.inflight = true
  38. ide.fileTreeManager.createDocInCurrentFolder $scope.inputs.name, (error, doc) ->
  39. $scope.state.inflight = false
  40. $modalInstance.close()
  41. $scope.cancel = () ->
  42. $modalInstance.dismiss('cancel')
  43. ]
  44. App.controller "NewFolderModalController", [
  45. "$scope", "ide", "$modalInstance", "$timeout",
  46. ($scope, ide, $modalInstance, $timeout) ->
  47. $scope.inputs =
  48. name: "name"
  49. $scope.state =
  50. inflight: false
  51. $modalInstance.opened.then () ->
  52. $timeout () ->
  53. $scope.$broadcast "open"
  54. , 700
  55. $scope.create = () ->
  56. $scope.state.inflight = true
  57. ide.fileTreeManager.createFolderInCurrentFolder $scope.inputs.name, (error, doc) ->
  58. $scope.state.inflight = false
  59. $modalInstance.close()
  60. $scope.cancel = () ->
  61. $modalInstance.dismiss('cancel')
  62. ]
  63. App.controller "UploadFileModalController", [
  64. "$scope", "ide", "$modalInstance", "$timeout",
  65. ($scope, ide, $modalInstance, $timeout) ->
  66. parent_folder = ide.fileTreeManager.getCurrentFolder()
  67. $scope.parent_folder_id = parent_folder?.id
  68. uploadCount = 0
  69. $scope.onUpload = () ->
  70. uploadCount++
  71. $scope.onComplete = (error, name, response) ->
  72. $timeout (() ->
  73. uploadCount--
  74. if uploadCount == 0 and response? and response.success
  75. $modalInstance.close("done")
  76. ), 250
  77. $scope.cancel = () ->
  78. $modalInstance.dismiss('cancel')
  79. ]