Skip to content
Snippets Groups Projects
Commit 3652c990 authored by Benoît Harrault's avatar Benoît Harrault
Browse files

Clean get track data code

parent 477f3cfd
Branches
Tags
1 merge request!18Resolve "Clean get track data code"
This commit is part of merge request !18. Comments created here will be created in the context of that merge request.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.spotify.screensaver"
name="Spotify Screensaver"
version="0.0.12"
version="0.0.13"
provider-name="Benoît Harrault">
<requires>
<import addon="xbmc.python" version="2.25.0"/>
......
......@@ -154,7 +154,7 @@ class GUI(xbmcgui.WindowXMLDialog):
self.log('load images for track: ' + track_id)
self.PanelItems = self.getControl(101)
self.PanelItems.reset()
self.PanelItems.addItems(self._get_track_data(track_id))
self.PanelItems.addItems(self._build_items_list(track_id))
def _remove_images(self):
self.log('no played track. remove images')
......@@ -165,7 +165,7 @@ class GUI(xbmcgui.WindowXMLDialog):
self.log('track_id: [' + str(track_id) + ']')
self.log('(try: ' + str(try_count) + ')')
imageLST = []
track_data = {}
headers = {
'Authorization': 'Bearer {token}'.format(
......@@ -180,7 +180,7 @@ class GUI(xbmcgui.WindowXMLDialog):
)
data = response.json()
track_name = data.get('name', '')
track_data['track_name'] = data.get('name', '')
# album/track image
album = data.get('album')
......@@ -212,20 +212,38 @@ class GUI(xbmcgui.WindowXMLDialog):
else:
self.log('ok got image from API')
self.log(json.dumps(image))
image_url = image.get('url')
if image_url is None:
self.log('failed to get image_url from API', xbmc.LOGERROR)
track_image_url = image.get('url')
if track_image_url is None:
self.log(
'failed to get track_image_url from API',
xbmc.LOGERROR)
self.log(json.dumps(image), xbmc.LOGERROR)
else:
self.log('ok got image_url from API')
self.log(image_url)
imageLST.append(
xbmcgui.ListItem(
track_name, thumbnailImage=image_url)
)
self.log('ok got track_image_url from API')
self.log(track_image_url)
track_data['track_image_url'] = track_image_url
except Exception as e:
self.log('failed to get track data ' + str(e), xbmc.LOGERROR)
return track_data
def _build_items_list(self, track_id):
imageLST = []
track_data = self._get_track_data(track_id)
track_name = track_data.get('track_name')
track_image_url = track_data.get('track_image_url')
if (track_name is None) or (track_image_url is None):
self.log('failed to get track data', xbmc.LOGERROR)
else:
imageLST.append(
xbmcgui.ListItem(
track_name,
thumbnailImage=track_image_url
)
)
return imageLST
def onFocus(self, controlId):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment