Merge branch 'hotfixes' into translations
This commit is contained in:
commit
8cf6a7ddf7
12 changed files with 130 additions and 37 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
# Do NOT Post Your Logs with Tokens!
|
||||||
|
|
||||||
|
Be sure to replace all tokens from your log files before posting, otherwise anyone may access your Plex Media Server! Be sure to read [the guideline](https://github.com/croneter/PlexKodiConnect/wiki/How-to-Report-A-Bug)
|
||||||
|
|
||||||
# How to contribute
|
# How to contribute
|
||||||
|
|
||||||
Thanks a ton for contributing to PlexKodiConnect!
|
Thanks a ton for contributing to PlexKodiConnect!
|
||||||
|
|
10
README.md
10
README.md
|
@ -1,5 +1,5 @@
|
||||||
[![stable version](https://img.shields.io/badge/stable_version-1.8.1-blue.svg?maxAge=60&style=flat) ](https://dl.bintray.com/croneter/PlexKodiConnect/bin/repository.plexkodiconnect/repository.plexkodiconnect-1.0.0.zip)
|
[![stable version](https://img.shields.io/badge/stable_version-1.8.5-blue.svg?maxAge=60&style=flat) ](https://dl.bintray.com/croneter/PlexKodiConnect/bin/repository.plexkodiconnect/repository.plexkodiconnect-1.0.0.zip)
|
||||||
[![beta version](https://img.shields.io/badge/beta_version-1.8.1-red.svg?maxAge=60&style=flat) ](https://dl.bintray.com/croneter/PlexKodiConnect_BETA/bin-BETA/repository.plexkodiconnectbeta/repository.plexkodiconnectbeta-1.0.0.zip)
|
[![beta version](https://img.shields.io/badge/beta_version-1.8.5-red.svg?maxAge=60&style=flat) ](https://dl.bintray.com/croneter/PlexKodiConnect_BETA/bin-BETA/repository.plexkodiconnectbeta/repository.plexkodiconnectbeta-1.0.0.zip)
|
||||||
|
|
||||||
[![Installation](https://img.shields.io/badge/wiki-installation-brightgreen.svg?maxAge=60&style=flat)](https://github.com/croneter/PlexKodiConnect/wiki/Installation)
|
[![Installation](https://img.shields.io/badge/wiki-installation-brightgreen.svg?maxAge=60&style=flat)](https://github.com/croneter/PlexKodiConnect/wiki/Installation)
|
||||||
[![FAQ](https://img.shields.io/badge/wiki-FAQ-brightgreen.svg?maxAge=60&style=flat)](https://github.com/croneter/PlexKodiConnect/wiki/faq)
|
[![FAQ](https://img.shields.io/badge/wiki-FAQ-brightgreen.svg?maxAge=60&style=flat)](https://github.com/croneter/PlexKodiConnect/wiki/faq)
|
||||||
|
@ -60,13 +60,15 @@ PKC synchronizes your media from your Plex server to the native Kodi database. H
|
||||||
+ English
|
+ English
|
||||||
+ German
|
+ German
|
||||||
+ Czech, thanks @Pavuucek
|
+ Czech, thanks @Pavuucek
|
||||||
+ Spanish, thanks @bartolomesoriano
|
+ Spanish, thanks @bartolomesoriano, @danichispa
|
||||||
+ Danish, thanks @FIGHT
|
+ Danish, thanks @FIGHT
|
||||||
+ Italian, thanks @nikkux, @chicco83
|
+ Italian, thanks @nikkux, @chicco83
|
||||||
+ Dutch, thanks @mvanbaak
|
+ Dutch, thanks @mvanbaak
|
||||||
+ French, thanks @lflforce, @ahivert, @Nox71, @CotzaDev, @vinch100, @Polymorph31, @jbnitro
|
+ French, thanks @lflforce, @ahivert, @Nox71, @CotzaDev, @vinch100, @Polymorph31, @jbnitro, @Elixir59
|
||||||
+ Chinese Traditional, thanks @old2tan
|
+ Chinese Traditional, thanks @old2tan
|
||||||
+ Chinese Simplified, thanks @everdream
|
+ Chinese Simplified, thanks @everdream
|
||||||
|
+ Norwegian, thanks @mjorud
|
||||||
|
+ Portuguese, thanks @goncalo532
|
||||||
+ [Please help translating](https://www.transifex.com/croneter/pkc)
|
+ [Please help translating](https://www.transifex.com/croneter/pkc)
|
||||||
|
|
||||||
### Download and Installation
|
### Download and Installation
|
||||||
|
|
76
addon.xml
76
addon.xml
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
<addon id="plugin.video.plexkodiconnect" name="PlexKodiConnect" version="1.8.1" provider-name="croneter">
|
<addon id="plugin.video.plexkodiconnect" name="PlexKodiConnect" version="1.8.5" provider-name="croneter">
|
||||||
<requires>
|
<requires>
|
||||||
<import addon="xbmc.python" version="2.1.0"/>
|
<import addon="xbmc.python" version="2.1.0"/>
|
||||||
<import addon="script.module.requests" version="2.3.0" />
|
<import addon="script.module.requests" version="2.3.0" />
|
||||||
|
@ -24,27 +24,67 @@
|
||||||
<email></email>
|
<email></email>
|
||||||
<source>https://github.com/croneter/PlexKodiConnect</source>
|
<source>https://github.com/croneter/PlexKodiConnect</source>
|
||||||
<summary lang="en_GB">Native Integration of Plex into Kodi</summary>
|
<summary lang="en_GB">Native Integration of Plex into Kodi</summary>
|
||||||
<summary lang="cs_CZ">Úplná integrace Plexu do Kodi</summary>
|
|
||||||
<summary lang="de_DE">Komplette Integration von Plex in Kodi</summary>
|
|
||||||
<summary lang="da_DK">Indbygget Integration af Plex i Kodi</summary>
|
|
||||||
<summary lang="nl_NL">Directe integratie van Plex in Kodi</summary>
|
|
||||||
<summary lang="zh_TW">將Plex直接內嵌至Kodi</summary>
|
|
||||||
<summary lang="es_ES">Integración Nativa de Plex en Kodi</summary>
|
|
||||||
<description lang="en_GB">Connect Kodi to your Plex Media Server. This plugin assumes that you manage all your videos with Plex (and none with Kodi). You might lose data already stored in the Kodi video and music databases (as this plugin directly changes them). Use at your own risk!</description>
|
<description lang="en_GB">Connect Kodi to your Plex Media Server. This plugin assumes that you manage all your videos with Plex (and none with Kodi). You might lose data already stored in the Kodi video and music databases (as this plugin directly changes them). Use at your own risk!</description>
|
||||||
<description lang="cs_CZ">Připojte Kodi ke svému Plex Media Serveru. Tento doplněk předpokládá, že spravujete veškerá svá videa pomocí Plexu (nikoliv pomocí Kodi). Můžete přijít o data uložená ve video a hudební databázi Kodi (tento doplněk je přímo mění).</description>
|
|
||||||
<description lang="de_DE">Verbindet Kodi mit deinem Plex Media Server. Dieses Addon geht davon aus, dass du all deine Videos mit Plex verwaltest (und keine direkt mit Kodi). Du wirst möglicherweise Daten verlieren, die bereits in der Kodi Video- und/oder Musik-Datenbank gespeichert sind (da dieses Addon beide Datenbanken direkt verändert).</description>
|
|
||||||
<description lang="da_DK">Tilslut Kodi til din Plex Media Server. Dette plugin forudsætter, at du administrere alle dine videoer med Plex (og ikke med Kodi). Du kan miste data som allerede er gemt i Kodi video og musik-databaser (dette plugin ændrer direkte i dem).</description>
|
|
||||||
<description lang="nl_NL">Verbind Kodi met je Plex Media Server. Deze plugin gaat ervan uit dat je al je video's met Plex (en niet met Kodi) beheerd. Je kunt gegevens reeds opgeslagen in de databases voor video en muziek van Kodi (deze plugin wijzigt deze gegevens direct) verliezen.</description>
|
|
||||||
<description lang="zh_TW">連接Kodi至您的Plex媒體伺服器.這個外掛程式假設你使用Plex伺服器管理您所有的媒體(完全沒用Kodi管理).您可能會失去已經儲存在Kodi資料庫中的視頻及音樂的資料(這個外掛程式會直接更改它們).</description>
|
|
||||||
<description lang="es_ES">Conecte Kodi a su Plex Media Server. Este plugin asume que usted gestiona todos sus vídeos con Plex (y ninguno con Kodi). Puede perder datos ya guardados en las bases de datos de vídeo y música de Kodi (ya que este plugin las actualiza directamente). ¡Úselo a su propio riesgo!</description>
|
|
||||||
<disclaimer lang="en_GB">Use at your own risk</disclaimer>
|
<disclaimer lang="en_GB">Use at your own risk</disclaimer>
|
||||||
<disclaimer lang="cs_CZ">Používejte na vlastní nebezpečí</disclaimer>
|
<summary lang="nl_NL">Directe integratie van Plex in Kodi</summary>
|
||||||
<disclaimer lang="de_DE">Benutze auf eigene Gefahr</disclaimer>
|
<description lang="nl_NL">Verbind Kodi met je Plex Media Server. Deze plugin gaat ervan uit dat je al je video's met Plex (en niet met Kodi) beheerd. Je kunt gegevens reeds opgeslagen in de databases voor video en muziek van Kodi (deze plugin wijzigt deze gegevens direct) verliezen. Gebruik op eigen risico!</description>
|
||||||
<disclaimer lang="da_DK">Brug på eget ansvar</disclaimer>
|
|
||||||
<disclaimer lang="nl_NL">Gebruik op eigen risico</disclaimer>
|
<disclaimer lang="nl_NL">Gebruik op eigen risico</disclaimer>
|
||||||
<disclaimer lang="zh_TW">使用風險由您自己承擔</disclaimer>
|
<summary lang="fr_CA">Intégration native de Plex dans Kodi</summary>
|
||||||
|
<description lang="fr_CA">Connecter Kodi à votre Plex Media Server. Ce plugin assume que vous souhaitez gérer toutes vos vidéos avec Plex (et aucune avec Kodi). Vous pourriez perdre les données déjà stockées dans les bases de données vidéo et musique de Kodi (ce plugin les modifie directement). Utilisez à vos propres risques !</description>
|
||||||
|
<disclaimer lang="fr_CA">A utiliser à vos propres risques</disclaimer>
|
||||||
|
<summary lang="fr_FR">Intégration native de Plex dans Kodi</summary>
|
||||||
|
<description lang="fr_FR">Connecter Kodi à votre Plex Media Server. Ce plugin assume que vous souhaitez gérer toutes vos vidéos avec Plex (et aucune avec Kodi). Vous pourriez perdre les données déjà stockées dans les bases de données vidéo et musique de Kodi (ce plugin les modifie directement). Utilisez à vos propres risques !</description>
|
||||||
|
<disclaimer lang="fr_FR">A utiliser à vos propres risques</disclaimer>
|
||||||
|
<summary lang="de_DE">Komplette Integration von Plex in Kodi</summary>
|
||||||
|
<description lang="de_DE">Verbindet Kodi mit deinem Plex Media Server. Dieses Addon geht davon aus, dass du all deine Videos mit Plex verwaltest (und keine direkt mit Kodi). Du wirst möglicherweise Daten verlieren, die bereits in der Kodi Video- und/oder Musik-Datenbank gespeichert sind (da dieses Addon beide Datenbanken direkt verändert). Verwendung auf eigene Gefahr!</description>
|
||||||
|
<disclaimer lang="de_DE">Verwendung auf eigene Gefahr</disclaimer>
|
||||||
|
<summary lang="pt_PT">Integração nativa do Plex no Kodi</summary>
|
||||||
|
<description lang="pt_PT">Conectar o Kodi ao Servidor Plex Media. Este plugin assume que gerirá todos os vídeos com o Plex (e nenhum com Kodi). Poderá perder dados guardados nas bases de dados de vídeo e musica do Kodi (pois este plugin interfere diretamente com as mesmas). Use por risco de conta própria</description>
|
||||||
|
<disclaimer lang="pt_PT">Use por risco de conta própria</disclaimer>
|
||||||
|
<summary lang="pt_BR">Integração nativa do Plex no Kodi</summary>
|
||||||
|
<description lang="pt_BR">Conectar o Kodi ao Servidor Plex Media. Este plugin assume que gerirá todos os vídeos com o Plex (e nenhum com Kodi). Poderá perder dados guardados nas bases de dados de vídeo e musica do Kodi (pois este plugin interfere diretamente com as mesmas). Use por risco de conta própria</description>
|
||||||
|
<disclaimer lang="pt_BR">Use por risco de conta própria</disclaimer>
|
||||||
|
<summary lang="es_ES">Integración Nativa de Plex en Kodi</summary>
|
||||||
|
<description lang="es_ES">Conecte Kodi a su Plex Media Server. Este plugin asume que usted gestiona todos sus vídeos con Plex (y ninguno con Kodi). Puede perder datos ya guardados en las bases de datos de vídeo y música de Kodi (ya que este plugin las actualiza directamente). ¡Úselo a su propio riesgo!</description>
|
||||||
<disclaimer lang="es_ES">Usar a su propio riesgo</disclaimer>
|
<disclaimer lang="es_ES">Usar a su propio riesgo</disclaimer>
|
||||||
<news>version 1.8.1:
|
<summary lang="es_AR">Integración Nativa de Plex en Kodi</summary>
|
||||||
|
<description lang="es_AR">Conecte Kodi a su Plex Media Server. Este plugin asume que usted gestiona todos sus vídeos con Plex (y ninguno con Kodi). Puede perder datos ya guardados en las bases de datos de vídeo y música de Kodi (ya que este plugin las actualiza directamente). ¡Úselo a su propio riesgo!</description>
|
||||||
|
<disclaimer lang="es_AR">Usar a su propio riesgo</disclaimer>
|
||||||
|
<summary lang="es_MX">Integración Nativa de Plex en Kodi</summary>
|
||||||
|
<description lang="es_MX">Conecte Kodi a su Plex Media Server. Este plugin asume que usted gestiona todos sus vídeos con Plex (y ninguno con Kodi). Puede perder datos ya guardados en las bases de datos de vídeo y música de Kodi (ya que este plugin las actualiza directamente). ¡Úselo a su propio riesgo!</description>
|
||||||
|
<disclaimer lang="es_MX">Usar a su propio riesgo</disclaimer>
|
||||||
|
<summary lang="cs_CZ">Úplná integrace Plexu do Kodi</summary>
|
||||||
|
<description lang="cs_CZ">Připojte Kodi ke svému Plex Media Serveru. Tento doplněk předpokládá, že spravujete veškerá svá videa pomocí Plexu (nikoliv pomocí Kodi). Můžete přijít o data uložená ve video a hudební databázi Kodi (tento doplněk je přímo mění). Používejte na vlastní nebezpečí!</description>
|
||||||
|
<disclaimer lang="cs_CZ">Používejte na vlastní nebezpečí</disclaimer>
|
||||||
|
<summary lang="da_DK">Indbygget Integration af Plex i Kodi</summary>
|
||||||
|
<description lang="da_DK">Tilslut Kodi til din Plex Media Server. Dette plugin forudsætter, at du administrere alle dine videoer med Plex (og ikke med Kodi). Du kan miste data som allerede er gemt i Kodi video og musik-databaser (dette plugin ændrer direkte i dem). Brug på eget ansvar!</description>
|
||||||
|
<disclaimer lang="da_DK">Brug på eget ansvar</disclaimer>
|
||||||
|
<news>version 1.8.6:
|
||||||
|
- Portuguese translation, thanks @goncalo532
|
||||||
|
- Updated other translations
|
||||||
|
|
||||||
|
version 1.8.5:
|
||||||
|
- version 1.8.4 for everyone
|
||||||
|
|
||||||
|
version 1.8.5:
|
||||||
|
- version 1.8.4 for everyone
|
||||||
|
|
||||||
|
version 1.8.4 (beta only):
|
||||||
|
- Plex cloud should now work: Request pictures with transcoding API
|
||||||
|
- Fix Plex companion feedback for Android
|
||||||
|
- Update translations
|
||||||
|
|
||||||
|
version 1.8.3:
|
||||||
|
- Fix Kodi playlists being empty
|
||||||
|
|
||||||
|
version 1.8.2:
|
||||||
|
- Choose to replace user ratings with the number of available versions of a media file
|
||||||
|
- More collection artwork: use TheMovieDB art
|
||||||
|
- Support new Companion command "refreshPlayQueue"
|
||||||
|
- Use https for TheMovieDB
|
||||||
|
- Update translations
|
||||||
|
|
||||||
|
version 1.8.1:
|
||||||
- Fix library sync crash due to UnicodeDecodeError
|
- Fix library sync crash due to UnicodeDecodeError
|
||||||
- Fix fanart for collections
|
- Fix fanart for collections
|
||||||
- Comply with themoviedb.org terms of use
|
- Comply with themoviedb.org terms of use
|
||||||
|
|
|
@ -1,3 +1,25 @@
|
||||||
|
version 1.8.6:
|
||||||
|
- Portuguese translation, thanks @goncalo532
|
||||||
|
- Updated other translations
|
||||||
|
|
||||||
|
version 1.8.5:
|
||||||
|
- version 1.8.4 for everyone
|
||||||
|
|
||||||
|
version 1.8.4 (beta only):
|
||||||
|
- Plex cloud should now work: Request pictures with transcoding API
|
||||||
|
- Fix Plex companion feedback for Android
|
||||||
|
- Update translations
|
||||||
|
|
||||||
|
version 1.8.3:
|
||||||
|
- Fix Kodi playlists being empty
|
||||||
|
|
||||||
|
version 1.8.2:
|
||||||
|
- Choose to replace user ratings with the number of available versions of a media file
|
||||||
|
- More collection artwork: use TheMovieDB art
|
||||||
|
- Support new Companion command "refreshPlayQueue"
|
||||||
|
- Use https for TheMovieDB
|
||||||
|
- Update translations
|
||||||
|
|
||||||
version 1.8.1:
|
version 1.8.1:
|
||||||
- Fix library sync crash due to UnicodeDecodeError
|
- Fix library sync crash due to UnicodeDecodeError
|
||||||
- Fix fanart for collections
|
- Fix fanart for collections
|
||||||
|
@ -676,7 +698,7 @@ version 1.0.17
|
||||||
|
|
||||||
version 1.0.16
|
version 1.0.16
|
||||||
- Kodi profiles up and running; try assigning different Plex users per profile!
|
- Kodi profiles up and running; try assigning different Plex users per profile!
|
||||||
- Change "Switch User" to "Log Out Plex User: <username>"
|
- Change "Switch User" to "Log Out Plex User: username"
|
||||||
- TV shows On Deck: append season and episode number in the settings
|
- TV shows On Deck: append season and episode number in the settings
|
||||||
- Shut down PKC correctly (useful for Kodi profiles)
|
- Shut down PKC correctly (useful for Kodi profiles)
|
||||||
- Don't de-authorize if several PMS are present
|
- Don't de-authorize if several PMS are present
|
||||||
|
|
|
@ -83,6 +83,11 @@ msgctxt "#30017"
|
||||||
msgid "Unauthorized for PMS"
|
msgid "Unauthorized for PMS"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
# Kodi context menu entry for movie and episode information screen
|
||||||
|
msgctxt "#30018"
|
||||||
|
msgid "Information"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#30022"
|
msgctxt "#30022"
|
||||||
msgid "Advanced"
|
msgid "Advanced"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
@ -1806,15 +1806,14 @@ class API():
|
||||||
}
|
}
|
||||||
|
|
||||||
def __getOneArtwork(self, entry):
|
def __getOneArtwork(self, entry):
|
||||||
try:
|
if entry not in self.item.attrib:
|
||||||
artwork = self.item.attrib[entry]
|
return ''
|
||||||
if artwork.startswith('http'):
|
artwork = self.item.attrib[entry]
|
||||||
pass
|
if artwork.startswith('http'):
|
||||||
else:
|
pass
|
||||||
artwork = "%s%s" % (self.server, artwork)
|
else:
|
||||||
artwork = self.addPlexCredentialsToUrl(artwork)
|
artwork = self.addPlexCredentialsToUrl(
|
||||||
except KeyError:
|
"%s/photo/:/transcode?width=4000&height=4000&minSize=1&upscale=0&url=%s" % (self.server, artwork))
|
||||||
artwork = ""
|
|
||||||
return artwork
|
return artwork
|
||||||
|
|
||||||
def getAllArtwork(self, parentInfo=False):
|
def getAllArtwork(self, parentInfo=False):
|
||||||
|
@ -2535,6 +2534,12 @@ class API():
|
||||||
# Expensive operation
|
# Expensive operation
|
||||||
metadata['title'] = title
|
metadata['title'] = title
|
||||||
listItem.setInfo('video', infoLabels=metadata)
|
listItem.setInfo('video', infoLabels=metadata)
|
||||||
|
try:
|
||||||
|
# Add context menu entry for information screen
|
||||||
|
listItem.addContextMenuItems([(lang(30018), 'XBMC.Action(Info)',)])
|
||||||
|
except TypeError:
|
||||||
|
# Kodi fuck-up
|
||||||
|
pass
|
||||||
return listItem
|
return listItem
|
||||||
|
|
||||||
def add_video_streams(self, listItem):
|
def add_video_streams(self, listItem):
|
||||||
|
|
|
@ -255,6 +255,11 @@ def createListItem(item, appendShowTitle=False, appendSxxExx=False):
|
||||||
li.setArt({'icon': 'DefaultTVShows.png'})
|
li.setArt({'icon': 'DefaultTVShows.png'})
|
||||||
li.setProperty('dbid', str(item['episodeid']))
|
li.setProperty('dbid', str(item['episodeid']))
|
||||||
li.setProperty('fanart_image', item['art'].get('tvshow.fanart',''))
|
li.setProperty('fanart_image', item['art'].get('tvshow.fanart',''))
|
||||||
|
try:
|
||||||
|
li.addContextMenuItems([(lang(30018), 'XBMC.Action(Info)',)])
|
||||||
|
except TypeError:
|
||||||
|
# Kodi fuck-up
|
||||||
|
pass
|
||||||
for key, value in item['streamdetails'].iteritems():
|
for key, value in item['streamdetails'].iteritems():
|
||||||
for stream in value:
|
for stream in value:
|
||||||
li.addStreamInfo(key, stream)
|
li.addStreamInfo(key, stream)
|
||||||
|
|
|
@ -158,6 +158,12 @@ class Items(object):
|
||||||
# If the playback was stopped, check whether we need to increment the
|
# If the playback was stopped, check whether we need to increment the
|
||||||
# playcount. PMS won't tell us the playcount via websockets
|
# playcount. PMS won't tell us the playcount via websockets
|
||||||
if item['state'] in ('stopped', 'ended'):
|
if item['state'] in ('stopped', 'ended'):
|
||||||
|
|
||||||
|
# If offset exceeds duration skip update
|
||||||
|
if item['viewOffset'] > item['duration']:
|
||||||
|
log.error("Error while updating play state, viewOffset exceeded duration")
|
||||||
|
return
|
||||||
|
|
||||||
complete = float(item['viewOffset']) / float(item['duration'])
|
complete = float(item['viewOffset']) / float(item['duration'])
|
||||||
log.info('Item %s stopped with completion rate %s percent.'
|
log.info('Item %s stopped with completion rate %s percent.'
|
||||||
'Mark item played at %s percent.'
|
'Mark item played at %s percent.'
|
||||||
|
|
|
@ -92,6 +92,7 @@ class KodiMonitor(Monitor):
|
||||||
# Manually marking as watched/unwatched
|
# Manually marking as watched/unwatched
|
||||||
playcount = data.get('playcount')
|
playcount = data.get('playcount')
|
||||||
item = data.get('item')
|
item = data.get('item')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
kodiid = item['id']
|
kodiid = item['id']
|
||||||
item_type = item['type']
|
item_type = item['type']
|
||||||
|
@ -114,7 +115,7 @@ class KodiMonitor(Monitor):
|
||||||
window('plex_skipWatched%s' % itemid, clear=True)
|
window('plex_skipWatched%s' % itemid, clear=True)
|
||||||
else:
|
else:
|
||||||
# notify the server
|
# notify the server
|
||||||
if playcount != 0:
|
if playcount > 0:
|
||||||
scrobble(itemid, 'watched')
|
scrobble(itemid, 'watched')
|
||||||
else:
|
else:
|
||||||
scrobble(itemid, 'unwatched')
|
scrobble(itemid, 'unwatched')
|
||||||
|
|
|
@ -129,6 +129,7 @@ class PlaybackUtils():
|
||||||
trailers = xbmcgui.Dialog().yesno(
|
trailers = xbmcgui.Dialog().yesno(
|
||||||
lang(29999),
|
lang(29999),
|
||||||
"Play trailers?")
|
"Play trailers?")
|
||||||
|
trailers = True if trailers else False
|
||||||
else:
|
else:
|
||||||
trailers = True
|
trailers = True
|
||||||
# Post to the PMS. REUSE THE PLAYQUEUE!
|
# Post to the PMS. REUSE THE PLAYQUEUE!
|
||||||
|
|
|
@ -58,7 +58,7 @@ class SubscriptionManager:
|
||||||
def msg(self, players):
|
def msg(self, players):
|
||||||
msg = getXMLHeader()
|
msg = getXMLHeader()
|
||||||
msg += '<MediaContainer size="3" commandID="INSERTCOMMANDID"'
|
msg += '<MediaContainer size="3" commandID="INSERTCOMMANDID"'
|
||||||
msg += ' machineIdentifier="%s">' % window('plex_client_Id')
|
msg += ' machineIdentifier="%s" location="fullScreenVideo">' % window('plex_client_Id')
|
||||||
msg += self.getTimelineXML(self.js.getAudioPlayerId(players), plex_audio())
|
msg += self.getTimelineXML(self.js.getAudioPlayerId(players), plex_audio())
|
||||||
msg += self.getTimelineXML(self.js.getPhotoPlayerId(players), plex_photo())
|
msg += self.getTimelineXML(self.js.getPhotoPlayerId(players), plex_photo())
|
||||||
msg += self.getTimelineXML(self.js.getVideoPlayerId(players), plex_video())
|
msg += self.getTimelineXML(self.js.getVideoPlayerId(players), plex_video())
|
||||||
|
|
|
@ -865,6 +865,7 @@ def passwordsXML():
|
||||||
# time=5000,
|
# time=5000,
|
||||||
# sound=False)
|
# sound=False)
|
||||||
|
|
||||||
|
|
||||||
def playlistXSP(mediatype, tagname, viewid, viewtype="", delete=False):
|
def playlistXSP(mediatype, tagname, viewid, viewtype="", delete=False):
|
||||||
"""
|
"""
|
||||||
Feed with tagname as unicode
|
Feed with tagname as unicode
|
||||||
|
@ -898,8 +899,8 @@ def playlistXSP(mediatype, tagname, viewid, viewtype="", delete=False):
|
||||||
'show': 'tvshows'
|
'show': 'tvshows'
|
||||||
}
|
}
|
||||||
log.info("Writing playlist file to: %s" % xsppath)
|
log.info("Writing playlist file to: %s" % xsppath)
|
||||||
with open(xsppath, 'wb'):
|
with open(xsppath, 'wb') as f:
|
||||||
tryEncode(
|
f.write(tryEncode(
|
||||||
'<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>\n'
|
'<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>\n'
|
||||||
'<smartplaylist type="%s">\n\t'
|
'<smartplaylist type="%s">\n\t'
|
||||||
'<name>Plex %s</name>\n\t'
|
'<name>Plex %s</name>\n\t'
|
||||||
|
@ -908,9 +909,10 @@ def playlistXSP(mediatype, tagname, viewid, viewtype="", delete=False):
|
||||||
'<value>%s</value>\n\t'
|
'<value>%s</value>\n\t'
|
||||||
'</rule>\n'
|
'</rule>\n'
|
||||||
'</smartplaylist>\n'
|
'</smartplaylist>\n'
|
||||||
% (itemtypes.get(mediatype, mediatype), plname, tagname))
|
% (itemtypes.get(mediatype, mediatype), plname, tagname)))
|
||||||
log.info("Successfully added playlist: %s" % tagname)
|
log.info("Successfully added playlist: %s" % tagname)
|
||||||
|
|
||||||
|
|
||||||
def deletePlaylists():
|
def deletePlaylists():
|
||||||
# Clean up the playlists
|
# Clean up the playlists
|
||||||
path = tryDecode(xbmc.translatePath("special://profile/playlists/video/"))
|
path = tryDecode(xbmc.translatePath("special://profile/playlists/video/"))
|
||||||
|
|
Loading…
Reference in a new issue