From 7bb765beddf9cf292f4d9d1d13b197e026eb3e0a Mon Sep 17 00:00:00 2001 From: tomkat83 Date: Tue, 29 Mar 2016 20:03:53 +0200 Subject: [PATCH] 'NameError: global name 'guidoc' is not defined' --- resources/lib/plexbmchelper/settings.py | 16 ++++------------ resources/lib/utils.py | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/resources/lib/plexbmchelper/settings.py b/resources/lib/plexbmchelper/settings.py index 3db6de5f..9c960add 100644 --- a/resources/lib/plexbmchelper/settings.py +++ b/resources/lib/plexbmchelper/settings.py @@ -1,23 +1,15 @@ -import uuid import xbmc import xbmcaddon -from xml.dom.minidom import parse import utils settings = {} -try: - path = xbmc.translatePath( - 'special://userdata/guisettings.xml').decode('utf-8') - guidoc = parse(path) -except: - print "PlexKodiConnect - Unable to read XBMC's guisettings.xml" + +guisettingsXML = utils.guisettingsXML() + def getGUI(name): - global guidoc - if guidoc is None: - return False try: - return guidoc.getElementsByTagName(name)[0].firstChild.nodeValue + return list(guisettingsXML.iter(name))[0].text except: return "" diff --git a/resources/lib/utils.py b/resources/lib/utils.py index 77ab2625..832c926a 100644 --- a/resources/lib/utils.py +++ b/resources/lib/utils.py @@ -650,6 +650,23 @@ def musiclibXML(): etree.ElementTree(root).write(xmlpath) +def guisettingsXML(): + """ + Returns special://userdata/guisettings.xml as an etree xml root element + """ + path = xbmc.translatePath("special://profile/").decode('utf-8') + xmlpath = "%sguisettings.xml" % path + + try: + xmlparse = etree.parse(xmlpath) + except: + # Document is blank or missing + root = etree.Element('settings') + else: + root = xmlparse.getroot() + return root + + def advancedSettingsXML(): """ Deactivates Kodi popup for scanning of music library