diff options
Diffstat (limited to 'js/controller/SettingsController.js')
-rw-r--r-- | js/controller/SettingsController.js | 130 |
1 files changed, 63 insertions, 67 deletions
diff --git a/js/controller/SettingsController.js b/js/controller/SettingsController.js index c20f801c8..2f8a1107c 100644 --- a/js/controller/SettingsController.js +++ b/js/controller/SettingsController.js @@ -7,84 +7,80 @@ * @author Bernhard Posselt <dev@bernhard-posselt.com> * @copyright Bernhard Posselt 2014 */ -app.controller('SettingsController', - function ($route, $q, SettingsResource, ItemResource, OPMLParser, - OPMLImporter, Publisher) { - 'use strict'; - this.isOPMLImporting = false; - this.isArticlesImporting = false; - this.opmlImportError = false; - this.articleImportError = false; - this.opmlImportEmptyError = false; - var self = this; - - var set = function (key, value) { - SettingsResource.set(key, value); +app.controller('SettingsController', function ($route, $q, SettingsResource, ItemResource, OPMLParser, OPMLImporter, + Publisher) { + 'use strict'; + this.isOPMLImporting = false; + this.isArticlesImporting = false; + this.opmlImportError = false; + this.articleImportError = false; + this.opmlImportEmptyError = false; + var self = this; - if (['showAll', 'oldestFirst', 'compact'].indexOf(key) >= 0) { - $route.reload(); - } - }; + var set = function (key, value) { + SettingsResource.set(key, value); - this.toggleSetting = function (key) { - set(key, !this.getSetting(key)); - }; + if (['showAll', 'oldestFirst', 'compact'].indexOf(key) >= 0) { + $route.reload(); + } + }; - this.getSetting = function (key) { - return SettingsResource.get(key); - }; + this.toggleSetting = function (key) { + set(key, !this.getSetting(key)); + }; - this.importOPML = function (content) { - self.opmlImportError = false; - self.opmlImportEmptyError = false; - self.articleImportError = false; + this.getSetting = function (key) { + return SettingsResource.get(key); + }; - try { - this.isOPMLImporting = false; - var parsedContent = OPMLParser.parse(content); + this.importOPML = function (fileContent) { + self.opmlImportError = false; + self.opmlImportEmptyError = false; + self.articleImportError = false; - var jobSize = 5; + try { + this.isOPMLImporting = false; + var parsedContent = OPMLParser.parse(fileContent); - if (parsedContent.folders.length === 0 && - parsedContent.feeds.length === 0) { - self.opmlImportEmptyError = true; - } else { - OPMLImporter.importFolders(parsedContent) - .then(function (feedQueue) { - return OPMLImporter.importFeedQueue(feedQueue, - jobSize); - }).finally(function () { - self.isOPMLImporting = false; - }); - } + var jobSize = 5; - } catch (error) { - this.opmlImportError = true; - console.error(error); - this.isOPMLImporting = false; + if (parsedContent.folders.length === 0 && + parsedContent.feeds.length === 0) { + self.opmlImportEmptyError = true; + } else { + OPMLImporter.importFolders(parsedContent).then(function (feedQueue) { + return OPMLImporter.importFeedQueue(feedQueue, jobSize); + }).finally(function () { + self.isOPMLImporting = false; + }); } - }; - this.importArticles = function (content) { - this.opmlImportError = false; - this.articleImportError = false; + } catch (error) { + this.opmlImportError = true; + console.error(error); + this.isOPMLImporting = false; + } + }; - try { - this.isArticlesImporting = true; - var articles = JSON.parse(content); + this.importArticles = function (content) { + this.opmlImportError = false; + this.articleImportError = false; - var self = this; - ItemResource.importArticles(articles).then(function (data) { - Publisher.publishAll(data); - }).finally(function () { - self.isArticlesImporting = false; - }); + try { + this.isArticlesImporting = true; + var articles = JSON.parse(content); - } catch (error) { - console.error(error); - this.articleImportError = true; - this.isArticlesImporting = false; - } - }; + var self = this; + ItemResource.importArticles(articles).then(function (data) { + Publisher.publishAll(data); + }).finally(function () { + self.isArticlesImporting = false; + }); - });
\ No newline at end of file + } catch (error) { + console.error(error); + this.articleImportError = true; + this.isArticlesImporting = false; + } + }; +}); |