X-Git-Url: https://git.cweiske.de/enigma2-curlytx.git/blobdiff_plain/8d8587bc8cd3a8639de5887760db2aef7ca917ce..e02a66d3f73c80b48630169b950c8298a65a7c58:/src/config.py diff --git a/src/config.py b/src/config.py index 496fb42..5482fc4 100644 --- a/src/config.py +++ b/src/config.py @@ -1,8 +1,9 @@ # -*- coding: utf-8 -*- # CurlyTx configuration # Copyright (C) 2011 Christian Weiske +# License: GPLv3 or later -from Components.config import config, ConfigYesNo, ConfigSelection, ConfigNumber, ConfigText, ConfigSubsection, ConfigSubList, ConfigInteger +from Components.config import config, ConfigEnableDisable, ConfigYesNo, ConfigSelection, ConfigNumber, ConfigText, ConfigSubsection, ConfigSubList, ConfigInteger def createPage(): """ Create and return a configuration page object """ @@ -24,10 +25,40 @@ def loadDefaultPageOptions(): else: config.plugins.CurlyTx.defaultPage = ConfigSelection(defaults, "0") +def feedPagesToConfig(pages): + """ save pages from atom feed into config. """ + if len(pages) == 0: + return + + del config.plugins.CurlyTx.pages[:] + + for pageData in pages: + page = createPage() + config.plugins.CurlyTx.pages.append(page) + page.title.setValue(pageData["title"]) + page.uri.setValue(pageData["url"]) + +def feedSettingsToConfig(settings): + changed = False + if 'enableSettings' in settings and config.plugins.CurlyTx.enableSettings.getValue() != settings['enableSettings']: + config.plugins.CurlyTx.enableSettings.setValue(int(settings['enableSettings'])) + changed = True + + if changed: + config.plugins.CurlyTx.save() + +def savePageConfig(): + for i in range(0, len(config.plugins.CurlyTx.pages)): + config.plugins.CurlyTx.pages[i].save() + + config.plugins.CurlyTx.pages.save() + + #configuration setup config.plugins.CurlyTx = ConfigSubsection() config.plugins.CurlyTx.menuMain = ConfigYesNo(default = True) config.plugins.CurlyTx.menuExtensions = ConfigYesNo(default = False) +config.plugins.CurlyTx.enableSettings = ConfigEnableDisable(default = True) config.plugins.CurlyTx.menuTitle = ConfigText(default = "CurlyTx", fixed_size = False) config.plugins.CurlyTx.feedUrl = ConfigText(default = "", fixed_size = False) config.plugins.CurlyTx.pages = ConfigSubList()