mirror of
https://github.com/gordielachance/plugin.audio.subsonic
synced 2025-02-17 20:21:06 +01:00
replaced walk_album_list_genre() with walk_album_list()
+ new ‘album_list_size’ setting
This commit is contained in:
parent
fb01d0eaa9
commit
f929cdbdef
8
addon.py
8
addon.py
@ -31,8 +31,9 @@ class Plugin(object):
|
|||||||
self.username = addon.getSetting("username")
|
self.username = addon.getSetting("username")
|
||||||
self.password = addon.getSetting("password")
|
self.password = addon.getSetting("password")
|
||||||
|
|
||||||
self.random_count = addon.getSetting("random_count")
|
self.random_count = int(addon.getSetting("random_count"))
|
||||||
self.bitrate = addon.getSetting("bitrate")
|
self.album_list_size = int(addon.getSetting("album_list_size"))
|
||||||
|
self.bitrate = int(addon.getSetting("bitrate"))
|
||||||
self.transcode_format = addon.getSetting("transcode_format")
|
self.transcode_format = addon.getSetting("transcode_format")
|
||||||
|
|
||||||
# Create connection
|
# Create connection
|
||||||
@ -229,11 +230,12 @@ class Plugin(object):
|
|||||||
Display album list by genre menu.
|
Display album list by genre menu.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
size = self.album_list_size
|
||||||
genre = self.addon_args["foldername"][0].decode("utf-8")
|
genre = self.addon_args["foldername"][0].decode("utf-8")
|
||||||
|
|
||||||
xbmcplugin.setContent(self.addon_handle, "albums")
|
xbmcplugin.setContent(self.addon_handle, "albums")
|
||||||
|
|
||||||
for album in self.connection.walk_album_list_genre(genre):
|
for album in self.connection.walk_album_list('byGenre',size,None,None,genre):
|
||||||
self.add_album(album, show_artist=True)
|
self.add_album(album, show_artist=True)
|
||||||
|
|
||||||
xbmcplugin.endOfDirectory(self.addon_handle)
|
xbmcplugin.endOfDirectory(self.addon_handle)
|
||||||
|
@ -391,16 +391,22 @@ class SubsonicClient(libsonic.Connection):
|
|||||||
for genre in response["genres"]["genre"]:
|
for genre in response["genres"]["genre"]:
|
||||||
yield genre
|
yield genre
|
||||||
|
|
||||||
def walk_album_list_genre(self, genre):
|
def walk_album_list(self, ltype, size=10, fromYear=None,toYear=None, genre=None):
|
||||||
"""
|
"""
|
||||||
Request all albums for a given genre and iterate over each album.
|
Request all albums for a given genre and iterate over each album.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
if ltype == 'byGenre' and genre is None:
|
||||||
|
return
|
||||||
|
|
||||||
|
if ltype == 'byYear' and (fromYear is None or toYear is None):
|
||||||
|
return
|
||||||
|
|
||||||
offset = 0
|
offset = 0
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
response = self.getAlbumList2(
|
response = self.getAlbumList2(
|
||||||
ltype="byGenre", genre=genre, size=500, offset=offset)
|
ltype=ltype, size=size, offset=offset, fromYear=fromYear, toYear=toYear, genre=genre)
|
||||||
|
|
||||||
if not response["albumList2"]["album"]:
|
if not response["albumList2"]["album"]:
|
||||||
break
|
break
|
||||||
@ -408,7 +414,7 @@ class SubsonicClient(libsonic.Connection):
|
|||||||
for album in response["albumList2"]["album"]:
|
for album in response["albumList2"]["album"]:
|
||||||
yield album
|
yield album
|
||||||
|
|
||||||
offset += 500
|
offset += size
|
||||||
|
|
||||||
def walk_album(self, album_id):
|
def walk_album(self, album_id):
|
||||||
"""
|
"""
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
<setting id="username" type="text" label="Username" default="guest3"/>
|
<setting id="username" type="text" label="Username" default="guest3"/>
|
||||||
<setting id="password" type="text" option="hidden" label="Password" default="guest"/>
|
<setting id="password" type="text" option="hidden" label="Password" default="guest"/>
|
||||||
<setting id="random_count" type="labelenum" label="Random songs" values="10|15|20|25"/>
|
<setting id="random_count" type="labelenum" label="Random songs" values="10|15|20|25"/>
|
||||||
|
<setting id="album_list_size" type="labelenum" label="Albums list items" default="50" values="50|100|200|250|500"/>
|
||||||
<setting id="transcode_format" type="labelenum" label="Transcode format" values="mp3|raw|flv|ogg"/>
|
<setting id="transcode_format" type="labelenum" label="Transcode format" values="mp3|raw|flv|ogg"/>
|
||||||
<setting id="bitrate" type="labelenum" label="Bitrate" values="320|256|224|192|160|128|112|96|80|64|56|48|40|32"/>
|
<setting id="bitrate" type="labelenum" label="Bitrate" values="320|256|224|192|160|128|112|96|80|64|56|48|40|32"/>
|
||||||
</settings>
|
</settings>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user