diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-10 13:30:00 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-05-10 13:30:00 +0200 |
commit | 347000cc2d5597c1971942ebdbe97461c9fa5802 (patch) | |
tree | 8a2f6dc166ad871c646b4cf8bf13f4a9fcd02e55 /js/app | |
parent | c487bfe23312a5b266d8eb21a3825ab791a1c3e8 (diff) |
use a deleted flag for deleted feeds to handle undo
Diffstat (limited to 'js/app')
-rw-r--r-- | js/app/services/businesslayer/folderbusinesslayer.coffee | 20 | ||||
-rw-r--r-- | js/app/services/undoqueue.coffee | 4 |
2 files changed, 12 insertions, 12 deletions
diff --git a/js/app/services/businesslayer/folderbusinesslayer.coffee b/js/app/services/businesslayer/folderbusinesslayer.coffee index 39c307c96..3d1fbb7c7 100644 --- a/js/app/services/businesslayer/folderbusinesslayer.coffee +++ b/js/app/services/businesslayer/folderbusinesslayer.coffee @@ -43,11 +43,12 @@ NewestItem, FeedModel) -> delete: (folderId) -> feeds = [] - folder = @_folderModel.removeById(folderId) - # also delete feeds for feed in @_feedBusinessLayer.getFeedsOfFolder(folderId) feeds.push(@_feedModel.removeById(feed.id)) + + folder = @_folderModel.removeById(folderId) + callback = => @_persistence.deleteFolder(folderId) @@ -159,8 +160,8 @@ NewestItem, FeedModel) -> _importElement: (opml, parentFolderId) -> for item in opml.getItems() - if item.isFolder() - do (item) => + do (item) => + if item.isFolder() try @create item.getName(), (data) => @_importElement(item, data.folders[0].id) @@ -171,14 +172,13 @@ NewestItem, FeedModel) -> @_importElement(item, folder.id) else console.info error - else - try - do (item) => + else + try @_feedBusinessLayer.create(item.getUrl(), parentFolderId) - catch error - if not error instanceof _ExistsError - console.info error + catch error + if not error instanceof _ExistsError + console.info error return new FolderBusinessLayer(FolderModel, FeedBusinessLayer, ShowAll, diff --git a/js/app/services/undoqueue.coffee b/js/app/services/undoqueue.coffee index 93f6fb577..631013d13 100644 --- a/js/app/services/undoqueue.coffee +++ b/js/app/services/undoqueue.coffee @@ -44,7 +44,7 @@ angular.module('News').factory 'UndoQueue', an command has been canceled. Usually this will add back a deleted object back to the interface, defaults to an empty function ### - @_executeAll() + @executeAll() command = _undoCallback: @_undoCallback or= -> @@ -70,7 +70,7 @@ angular.module('News').factory 'UndoQueue', @_queue.push(command) - _executeAll: -> + executeAll: -> ### Executes the callback before the timeout has run out This is useful to execute all remaining commands if a new command is |