FileTreeFolderController.coffee 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. define [
  2. "base"
  3. ], (App) ->
  4. App.controller "FileTreeFolderController", ($scope, ide, $modal, localStorage) ->
  5. $scope.expanded = localStorage("folder.#{$scope.entity.id}.expanded") or false
  6. $scope.toggleExpanded = () ->
  7. $scope.expanded = !$scope.expanded
  8. localStorage("folder.#{$scope.entity.id}.expanded", $scope.expanded)
  9. $scope.onDrop = (events, ui) ->
  10. if ide.fileTreeManager.multiSelectedCount()
  11. entities = ide.fileTreeManager.getMultiSelectedEntityChildNodes()
  12. else
  13. entities = [$(ui.draggable).scope().entity]
  14. for dropped_entity in entities
  15. ide.fileTreeManager.moveEntity(dropped_entity, $scope.entity)
  16. $scope.$digest()
  17. # clear highlight explicitly
  18. $('.file-tree-inner .droppable-hover').removeClass('droppable-hover')
  19. $scope.orderByFoldersFirst = (entity) ->
  20. # We need this here as well as in FileTreeController
  21. # since the file-entity diretive creates a new scope
  22. # that doesn't inherit from previous scopes.
  23. return '0' if entity?.type == "folder"
  24. return '1'
  25. $scope.openNewDocModal = () ->
  26. $modal.open(
  27. templateUrl: "newDocModalTemplate"
  28. controller: "NewDocModalController"
  29. resolve: {
  30. parent_folder: () -> $scope.entity
  31. }
  32. )
  33. $scope.openNewFolderModal = () ->
  34. $modal.open(
  35. templateUrl: "newFolderModalTemplate"
  36. controller: "NewFolderModalController"
  37. resolve: {
  38. parent_folder: () -> $scope.entity
  39. }
  40. )
  41. $scope.openUploadFileModal = () ->
  42. $scope.project_id = ide.project_id
  43. $modal.open(
  44. templateUrl: "uploadFileModalTemplate"
  45. controller: "UploadFileModalController"
  46. scope: $scope
  47. resolve: {
  48. parent_folder: () -> $scope.entity
  49. }
  50. )