Merge remote-tracking branch 'MediaBrowser/master' into develop
This commit is contained in:
commit
3e1d3ff1cc
8 changed files with 33 additions and 34 deletions
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="plugin.video.plexkodiconnect"
|
||||
name="PlexKodiConnect"
|
||||
version="1.1.69"
|
||||
version="1.1.70"
|
||||
provider-name="tomkat83">
|
||||
<requires>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
version 1.1.70
|
||||
- Include AirsAfterSeason for special episodes ordering
|
||||
- Cover art settings - label adjusted. A reset or repair will be required if you change the settings value.
|
||||
- Fix duplicate views being created (reset will be required)
|
||||
- Fix albums merge when they had the same name (reset will be required)
|
||||
- Minor fix to songs
|
||||
|
||||
version 1.1.69
|
||||
- Fix unicode error for video nodes
|
||||
- Fix special episode ordering (repair sync can be run)
|
||||
|
|
|
@ -388,7 +388,7 @@ def refreshPlaylist():
|
|||
lib.refreshViews()
|
||||
dialog.notification(
|
||||
heading="Emby for Kodi",
|
||||
message="Emby playlist refreshed!",
|
||||
message="Emby playlist refreshed",
|
||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||
time=1000,
|
||||
sound=False)
|
||||
|
@ -396,8 +396,8 @@ def refreshPlaylist():
|
|||
utils.logMsg("EMBY", "Refresh playlist failed: %s" % e, 1)
|
||||
dialog.notification(
|
||||
heading="Emby for Kodi",
|
||||
message="Emby playlist refresh failed!",
|
||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||
message="Emby playlist refresh failed",
|
||||
icon=xbmcgui.NOTIFICATION_ERROR,
|
||||
time=1000,
|
||||
sound=False)
|
||||
|
||||
|
|
|
@ -2260,10 +2260,14 @@ class Music(Items):
|
|||
# Add path
|
||||
pathid = kodi_db.addPath(path)
|
||||
|
||||
# Get the album
|
||||
emby_dbalbum = emby_db.getItem_byId(item['AlbumId'])
|
||||
try:
|
||||
# Get the album
|
||||
emby_dbalbum = emby_db.getItem_byId(item['AlbumId'])
|
||||
albumid = emby_dbalbum[0]
|
||||
except KeyError:
|
||||
# No album Id associated to the song.
|
||||
self.logMsg("Song itemid: %s has no albumId." % itemid, 1)
|
||||
return
|
||||
except TypeError:
|
||||
# No album found, create a single's album
|
||||
kodicursor.execute("select coalesce(max(idAlbum),0) from album")
|
||||
|
|
|
@ -1050,29 +1050,17 @@ class Kodidb_Functions():
|
|||
try:
|
||||
albumid = cursor.fetchone()[0]
|
||||
except TypeError:
|
||||
# Verify by name
|
||||
query = ' '.join((
|
||||
# Create the album
|
||||
cursor.execute("select coalesce(max(idAlbum),0) from album")
|
||||
albumid = cursor.fetchone()[0] + 1
|
||||
query = (
|
||||
'''
|
||||
INSERT INTO album(idAlbum, strAlbum, strMusicBrainzAlbumID)
|
||||
|
||||
"SELECT idAlbum",
|
||||
"FROM album",
|
||||
"WHERE strAlbum = ?",
|
||||
"COLLATE NOCASE"
|
||||
))
|
||||
cursor.execute(query, (name,))
|
||||
try:
|
||||
albumid = cursor.fetchone()[0]
|
||||
except TypeError:
|
||||
# Create the album
|
||||
cursor.execute("select coalesce(max(idAlbum),0) from album")
|
||||
albumid = cursor.fetchone()[0] + 1
|
||||
query = (
|
||||
'''
|
||||
INSERT INTO album(idAlbum, strAlbum, strMusicBrainzAlbumID)
|
||||
|
||||
VALUES (?, ?, ?)
|
||||
'''
|
||||
)
|
||||
cursor.execute(query, (albumid, name, musicbrainz))
|
||||
VALUES (?, ?, ?)
|
||||
'''
|
||||
)
|
||||
cursor.execute(query, (albumid, name, musicbrainz))
|
||||
|
||||
return albumid
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ class KodiMonitor(xbmc.Monitor):
|
|||
self.logMsg("Properties already set for item.", 1)
|
||||
else:
|
||||
if ((utils.settings('useDirectPaths') == "1" and not type == "song") or
|
||||
(type == "song" and utils.settings('disableMusic') == "false")):
|
||||
(type == "song" and utils.settings('enableMusic') == "true")):
|
||||
# Set up properties for player
|
||||
embyconn = utils.kodiSQL('emby')
|
||||
embycursor = embyconn.cursor()
|
||||
|
|
|
@ -303,7 +303,7 @@ class LibrarySync(threading.Thread):
|
|||
utils.window('emby_dbScan', clear=True)
|
||||
xbmcgui.Dialog().notification(
|
||||
heading="Emby for Kodi",
|
||||
message="%s completed in: %s!" %
|
||||
message="%s completed in: %s" %
|
||||
(message, str(elapsedtotal).split('.')[0]),
|
||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||
sound=False)
|
||||
|
@ -376,7 +376,7 @@ class LibrarySync(threading.Thread):
|
|||
# Media folders are grouped into userview
|
||||
for grouped_view in grouped_views:
|
||||
if (grouped_view['Type'] == "UserView" and
|
||||
grouped_view['CollectionType'] == mediatype):
|
||||
grouped_view.get('CollectionType') == mediatype):
|
||||
# Take the name of the userview
|
||||
foldername = grouped_view['Name']
|
||||
break
|
||||
|
|
|
@ -158,7 +158,7 @@ def reset():
|
|||
connection.commit()
|
||||
cursor.close()
|
||||
|
||||
if settings('disableMusic') != "true":
|
||||
if settings('enableMusic') == "true":
|
||||
logMsg("EMBY", "Resetting the Kodi music database.")
|
||||
connection = kodiSQL('music')
|
||||
cursor = connection.cursor()
|
||||
|
@ -376,7 +376,7 @@ def passwordsXML():
|
|||
settings('networkCreds', value="")
|
||||
xbmcgui.Dialog().notification(
|
||||
heading="Emby for Kodi",
|
||||
message="%s removed from passwords.xml!" % credentials,
|
||||
message="%s removed from passwords.xml" % credentials,
|
||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||
time=1000,
|
||||
sound=False)
|
||||
|
@ -435,7 +435,7 @@ def passwordsXML():
|
|||
|
||||
dialog.notification(
|
||||
heading="Emby for Kodi",
|
||||
message="%s added to passwords.xml!" % server,
|
||||
message="%s added to passwords.xml" % server,
|
||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||
time=1000,
|
||||
sound=False)
|
||||
|
|
Loading…
Reference in a new issue