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"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
<addon id="plugin.video.plexkodiconnect"
|
<addon id="plugin.video.plexkodiconnect"
|
||||||
name="PlexKodiConnect"
|
name="PlexKodiConnect"
|
||||||
version="1.1.69"
|
version="1.1.70"
|
||||||
provider-name="tomkat83">
|
provider-name="tomkat83">
|
||||||
<requires>
|
<requires>
|
||||||
<import addon="xbmc.python" version="2.1.0"/>
|
<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
|
version 1.1.69
|
||||||
- Fix unicode error for video nodes
|
- Fix unicode error for video nodes
|
||||||
- Fix special episode ordering (repair sync can be run)
|
- Fix special episode ordering (repair sync can be run)
|
||||||
|
|
|
@ -388,7 +388,7 @@ def refreshPlaylist():
|
||||||
lib.refreshViews()
|
lib.refreshViews()
|
||||||
dialog.notification(
|
dialog.notification(
|
||||||
heading="Emby for Kodi",
|
heading="Emby for Kodi",
|
||||||
message="Emby playlist refreshed!",
|
message="Emby playlist refreshed",
|
||||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||||
time=1000,
|
time=1000,
|
||||||
sound=False)
|
sound=False)
|
||||||
|
@ -396,8 +396,8 @@ def refreshPlaylist():
|
||||||
utils.logMsg("EMBY", "Refresh playlist failed: %s" % e, 1)
|
utils.logMsg("EMBY", "Refresh playlist failed: %s" % e, 1)
|
||||||
dialog.notification(
|
dialog.notification(
|
||||||
heading="Emby for Kodi",
|
heading="Emby for Kodi",
|
||||||
message="Emby playlist refresh failed!",
|
message="Emby playlist refresh failed",
|
||||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
icon=xbmcgui.NOTIFICATION_ERROR,
|
||||||
time=1000,
|
time=1000,
|
||||||
sound=False)
|
sound=False)
|
||||||
|
|
||||||
|
|
|
@ -2260,10 +2260,14 @@ class Music(Items):
|
||||||
# Add path
|
# Add path
|
||||||
pathid = kodi_db.addPath(path)
|
pathid = kodi_db.addPath(path)
|
||||||
|
|
||||||
# Get the album
|
|
||||||
emby_dbalbum = emby_db.getItem_byId(item['AlbumId'])
|
|
||||||
try:
|
try:
|
||||||
|
# Get the album
|
||||||
|
emby_dbalbum = emby_db.getItem_byId(item['AlbumId'])
|
||||||
albumid = emby_dbalbum[0]
|
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:
|
except TypeError:
|
||||||
# No album found, create a single's album
|
# No album found, create a single's album
|
||||||
kodicursor.execute("select coalesce(max(idAlbum),0) from album")
|
kodicursor.execute("select coalesce(max(idAlbum),0) from album")
|
||||||
|
|
|
@ -1050,29 +1050,17 @@ class Kodidb_Functions():
|
||||||
try:
|
try:
|
||||||
albumid = cursor.fetchone()[0]
|
albumid = cursor.fetchone()[0]
|
||||||
except TypeError:
|
except TypeError:
|
||||||
# Verify by name
|
# Create the album
|
||||||
query = ' '.join((
|
cursor.execute("select coalesce(max(idAlbum),0) from album")
|
||||||
|
albumid = cursor.fetchone()[0] + 1
|
||||||
|
query = (
|
||||||
|
'''
|
||||||
|
INSERT INTO album(idAlbum, strAlbum, strMusicBrainzAlbumID)
|
||||||
|
|
||||||
"SELECT idAlbum",
|
VALUES (?, ?, ?)
|
||||||
"FROM album",
|
'''
|
||||||
"WHERE strAlbum = ?",
|
)
|
||||||
"COLLATE NOCASE"
|
cursor.execute(query, (albumid, name, musicbrainz))
|
||||||
))
|
|
||||||
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))
|
|
||||||
|
|
||||||
return albumid
|
return albumid
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,7 @@ class KodiMonitor(xbmc.Monitor):
|
||||||
self.logMsg("Properties already set for item.", 1)
|
self.logMsg("Properties already set for item.", 1)
|
||||||
else:
|
else:
|
||||||
if ((utils.settings('useDirectPaths') == "1" and not type == "song") or
|
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
|
# Set up properties for player
|
||||||
embyconn = utils.kodiSQL('emby')
|
embyconn = utils.kodiSQL('emby')
|
||||||
embycursor = embyconn.cursor()
|
embycursor = embyconn.cursor()
|
||||||
|
|
|
@ -303,7 +303,7 @@ class LibrarySync(threading.Thread):
|
||||||
utils.window('emby_dbScan', clear=True)
|
utils.window('emby_dbScan', clear=True)
|
||||||
xbmcgui.Dialog().notification(
|
xbmcgui.Dialog().notification(
|
||||||
heading="Emby for Kodi",
|
heading="Emby for Kodi",
|
||||||
message="%s completed in: %s!" %
|
message="%s completed in: %s" %
|
||||||
(message, str(elapsedtotal).split('.')[0]),
|
(message, str(elapsedtotal).split('.')[0]),
|
||||||
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||||
sound=False)
|
sound=False)
|
||||||
|
@ -376,7 +376,7 @@ class LibrarySync(threading.Thread):
|
||||||
# Media folders are grouped into userview
|
# Media folders are grouped into userview
|
||||||
for grouped_view in grouped_views:
|
for grouped_view in grouped_views:
|
||||||
if (grouped_view['Type'] == "UserView" and
|
if (grouped_view['Type'] == "UserView" and
|
||||||
grouped_view['CollectionType'] == mediatype):
|
grouped_view.get('CollectionType') == mediatype):
|
||||||
# Take the name of the userview
|
# Take the name of the userview
|
||||||
foldername = grouped_view['Name']
|
foldername = grouped_view['Name']
|
||||||
break
|
break
|
||||||
|
|
|
@ -158,7 +158,7 @@ def reset():
|
||||||
connection.commit()
|
connection.commit()
|
||||||
cursor.close()
|
cursor.close()
|
||||||
|
|
||||||
if settings('disableMusic') != "true":
|
if settings('enableMusic') == "true":
|
||||||
logMsg("EMBY", "Resetting the Kodi music database.")
|
logMsg("EMBY", "Resetting the Kodi music database.")
|
||||||
connection = kodiSQL('music')
|
connection = kodiSQL('music')
|
||||||
cursor = connection.cursor()
|
cursor = connection.cursor()
|
||||||
|
@ -376,7 +376,7 @@ def passwordsXML():
|
||||||
settings('networkCreds', value="")
|
settings('networkCreds', value="")
|
||||||
xbmcgui.Dialog().notification(
|
xbmcgui.Dialog().notification(
|
||||||
heading="Emby for Kodi",
|
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",
|
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||||
time=1000,
|
time=1000,
|
||||||
sound=False)
|
sound=False)
|
||||||
|
@ -435,7 +435,7 @@ def passwordsXML():
|
||||||
|
|
||||||
dialog.notification(
|
dialog.notification(
|
||||||
heading="Emby for Kodi",
|
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",
|
icon="special://home/addons/plugin.video.plexkodiconnect/icon.png",
|
||||||
time=1000,
|
time=1000,
|
||||||
sound=False)
|
sound=False)
|
||||||
|
|
Loading…
Reference in a new issue