diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-04-13 22:48:31 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-04-13 22:48:31 +0200 |
commit | ce7cd121f42b093569d7a31fac3bcd5837429cff (patch) | |
tree | 5cbe7751eb4c53cffd0ea1cbd61be4104e212462 /js/app | |
parent | 0fa0fb22c72653de35eb3ff8b9ffcf833a96e901 (diff) |
fix import scoping issue that caused feeds not to be imported at times, set created folders to be opened by default
Diffstat (limited to 'js/app')
-rw-r--r-- | js/app/controllers/settingscontroller.coffee | 1 | ||||
-rw-r--r-- | js/app/services/bl/folderbl.coffee | 24 | ||||
-rw-r--r-- | js/app/services/models/feedmodel.coffee | 2 |
3 files changed, 18 insertions, 9 deletions
diff --git a/js/app/controllers/settingscontroller.coffee b/js/app/controllers/settingscontroller.coffee index d573e1213..3c6a7771e 100644 --- a/js/app/controllers/settingscontroller.coffee +++ b/js/app/controllers/settingscontroller.coffee @@ -34,6 +34,7 @@ angular.module('News').controller 'SettingsController', try FolderBl.import(fileContent) catch error + console.error error $scope.error = true ]
\ No newline at end of file diff --git a/js/app/services/bl/folderbl.coffee b/js/app/services/bl/folderbl.coffee index abba97054..42c1d9752 100644 --- a/js/app/services/bl/folderbl.coffee +++ b/js/app/services/bl/folderbl.coffee @@ -132,18 +132,24 @@ ItemModel, ShowAll, _ExistsError, OPMLParser)-> _importElement: (opml, parentFolderId) -> for item in opml.getItems() if item.isFolder() - try - @create item.getName(), (data) => - @_importElement(item, data.folders[0].id) - catch error - if error instanceof _ExistsError - folder = @_folderModel.getByName(item.getName()) - @open(folder.id) - @_importElement(item, folder.id) + do (item) => + try + @create item.getName(), (data) => + @_importElement(item, data.folders[0].id) + catch error + if error instanceof _ExistsError + folder = @_folderModel.getByName(item.getName()) + @open(folder.id) + @_importElement(item, folder.id) + else + console.info error else try - @_feedBl.create(item.getUrl(), parentFolderId) + do (item) => + @_feedBl.create(item.getUrl(), parentFolderId) catch error + if not error instanceof _ExistsError + console.info error return new FolderBl(FolderModel, FeedBl, ShowAll, ActiveFeed, Persistence, diff --git a/js/app/services/models/feedmodel.coffee b/js/app/services/models/feedmodel.coffee index 405ea2651..e0006e8d2 100644 --- a/js/app/services/models/feedmodel.coffee +++ b/js/app/services/models/feedmodel.coffee @@ -41,6 +41,8 @@ angular.module('News').factory '_FeedModel', if data.faviconLink == null data.faviconLink = 'url(' + @_utils.imagePath('news', 'rss.svg') + ')' + else + data.faviconLink = 'url(' + data.faviconLink + ')' ### We want to add a feed on the client side before we have an id from the server. Once the server returns |