diff --git a/services/web/app/views/templates.jade b/services/web/app/views/templates.jade index fc6b623590..2d73f73b09 100644 --- a/services/web/app/views/templates.jade +++ b/services/web/app/views/templates.jade @@ -82,6 +82,12 @@ .dropdown-caret i.icon-chevron-down .entity-label.label.label-success + + script(type="text/template")#deletedDocsFolderTemplate + .entity-list-item.entity-deleted-docs-folder(class="entity-{{ type }}", entity-type="{{ type }}", id="{{ id }}") + .clickable.js-clickable + span.name {{ name }} + .entity-label.label.label-success script(type="text/template")#entityListTemplate .contents diff --git a/services/web/public/coffee/file-tree/DeletedDocsFolderView.coffee b/services/web/public/coffee/file-tree/DeletedDocsFolderView.coffee new file mode 100644 index 0000000000..3ce1ec12fd --- /dev/null +++ b/services/web/public/coffee/file-tree/DeletedDocsFolderView.coffee @@ -0,0 +1,29 @@ +define [ + "file-tree/FolderView" +], (FolderView) -> + DeletedDocsFolderView = FolderView.extend + template: $("#deletedDocsFolderTemplate").html() + + render: () -> + @$el.append(Mustache.to_html @template, @model.attributes) + @_bindToDomElements() + @hideRenameBox() + @hideToggle() + @renderEntries() + @showEntries() + return @ + + onClick: () -> + e.preventDefault() + + onToggle: () -> + e.preventDefault() + + getContextMenuEntries: () -> null + + hideToggle: () -> + @$(".js-toggle").hide() + + + + diff --git a/services/web/public/coffee/file-tree/EntityView.coffee b/services/web/public/coffee/file-tree/EntityView.coffee index 913d076cc5..c7b17e7419 100644 --- a/services/web/public/coffee/file-tree/EntityView.coffee +++ b/services/web/public/coffee/file-tree/EntityView.coffee @@ -9,7 +9,6 @@ define [ initialize: () -> @ide = @options.manager.ide @manager = @options.manager - console.log "Registering view", @model, @model.id, @ @manager.registerView(@model.id, @) @bindToModel() @@ -113,6 +112,7 @@ define [ showContextMenu: (position) -> entries = @getContextMenuEntries() + return if !entries? @manager.trigger "contextmenu:beforeshow", @model, entries diff --git a/services/web/public/coffee/file-tree/FileTreeManager.coffee b/services/web/public/coffee/file-tree/FileTreeManager.coffee index 4e8470f45b..2f66bec030 100644 --- a/services/web/public/coffee/file-tree/FileTreeManager.coffee +++ b/services/web/public/coffee/file-tree/FileTreeManager.coffee @@ -4,11 +4,12 @@ define [ "models/Folder" "file-tree/FileTreeView" "file-tree/FolderView" + "file-tree/DeletedDocsFolderView" "utils/Effects" "utils/Modal" "libs/backbone" "libs/jquery.storage" -], (Doc, File, Folder, FileTreeView, FolderView, Effects, Modal) -> +], (Doc, File, Folder, FileTreeView, FolderView, DeletedDocsFolderView, Effects, Modal) -> class FileTreeManager constructor: (@ide) -> _.extend(@, Backbone.Events) @@ -41,7 +42,7 @@ define [ if @deletedDocsView? @deletedDocsView.$el.remove() - @deletedDocsView = new FolderView(model: @project.get("deletedDocs"), manager: @) + @deletedDocsView = new DeletedDocsFolderView(model: @project.get("deletedDocs"), manager: @) @deletedDocsView.render() $("#sections").append(@deletedDocsView.$el) @hideDeletedDocs() @@ -75,7 +76,6 @@ define [ @onMoveEntity(entity_id, folder_id) registerView: (entity_id, view) -> - console.log "inside", entity_id, view @views[entity_id] = view addEntityToFolder: (entity, folder_id) -> @@ -307,7 +307,8 @@ define [ @deletedDocsView.setLabels(labels) showDeletedDocs: () -> - @deletedDocsView.$el.show() + if @project.get("deletedDocs").get("children").length > 0 + @deletedDocsView.$el.show() hideDeletedDocs: () -> @deletedDocsView.$el.hide() diff --git a/services/web/public/stylesheets/less/editor.less b/services/web/public/stylesheets/less/editor.less index 5f93c15c30..5b016630c9 100644 --- a/services/web/public/stylesheets/less/editor.less +++ b/services/web/public/stylesheets/less/editor.less @@ -509,6 +509,14 @@ body.editor { } } + .entity-deleted-docs-folder { + margin-top: 16px; + span.name { + padding: 6px; + border-bottom: 1px solid #ccc; + } + } + .entity-list { padding-left: 0px; }