Merge pull request #831 from croneter/fix-customization
Fix some appearance tweak settings
This commit is contained in:
commit
e554195228
6 changed files with 70 additions and 9 deletions
|
@ -138,6 +138,10 @@ class Main():
|
||||||
LOG.info('User requested to select Plex libraries')
|
LOG.info('User requested to select Plex libraries')
|
||||||
transfer.plex_command('select-libraries')
|
transfer.plex_command('select-libraries')
|
||||||
|
|
||||||
|
elif mode == 'refreshplaylist':
|
||||||
|
LOG.info('User requested to refresh Kodi playlists and nodes')
|
||||||
|
transfer.plex_command('refreshplaylist')
|
||||||
|
|
||||||
else:
|
else:
|
||||||
entrypoint.show_main_menu(content_type=params.get('content_type'))
|
entrypoint.show_main_menu(content_type=params.get('content_type'))
|
||||||
|
|
||||||
|
|
|
@ -971,11 +971,6 @@ msgctxt "#39057"
|
||||||
msgid "Customize Paths"
|
msgid "Customize Paths"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
# PKC Settings - Appearance Tweaks
|
|
||||||
msgctxt "#39058"
|
|
||||||
msgid "Extend Plex TV Series \"On Deck\" view to all shows"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
# PKC Settings - Appearance Tweaks
|
# PKC Settings - Appearance Tweaks
|
||||||
msgctxt "#39059"
|
msgctxt "#39059"
|
||||||
msgid "Recently Added: Append show title to episode"
|
msgid "Recently Added: Append show title to episode"
|
||||||
|
@ -1013,7 +1008,7 @@ msgstr ""
|
||||||
|
|
||||||
# PKC Settings - Appearance Tweaks
|
# PKC Settings - Appearance Tweaks
|
||||||
msgctxt "#39066"
|
msgctxt "#39066"
|
||||||
msgid "Recently Added: Also show already watched movies (Refresh Plex playlist/nodes!)"
|
msgid "Recently Added: Also show already watched movies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
# PKC Settings - Connection
|
# PKC Settings - Connection
|
||||||
|
@ -1102,6 +1097,11 @@ msgctxt "#39084"
|
||||||
msgid "Enter PMS port"
|
msgid "Enter PMS port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
# PKC settings - Appearance Tweaks
|
||||||
|
msgctxt "#39085"
|
||||||
|
msgid "Reload Kodi node files to apply all the settings below"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#39200"
|
msgctxt "#39200"
|
||||||
msgid "Log-out Plex Home User "
|
msgid "Log-out Plex Home User "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
@ -252,6 +252,17 @@ def node_recent(section, node_name):
|
||||||
rule = etree.SubElement(xml, 'rule', attrib={'field': 'tag',
|
rule = etree.SubElement(xml, 'rule', attrib={'field': 'tag',
|
||||||
'operator': 'is'})
|
'operator': 'is'})
|
||||||
etree.SubElement(rule, 'value').text = section.name
|
etree.SubElement(rule, 'value').text = section.name
|
||||||
|
if ((section.section_type == v.PLEX_TYPE_SHOW and
|
||||||
|
utils.settings('TVShowWatched') == 'false') or
|
||||||
|
(section.section_type == v.PLEX_TYPE_MOVIE and
|
||||||
|
utils.settings('MovieShowWatched') == 'false')):
|
||||||
|
# Adds an additional rule if user deactivated the PKC setting
|
||||||
|
# "Recently Added: Also show already watched episodes"
|
||||||
|
# or
|
||||||
|
# "Recently Added: Also show already watched episodes"
|
||||||
|
rule = etree.SubElement(xml, 'rule', attrib={'field': 'playcount',
|
||||||
|
'operator': 'is'})
|
||||||
|
etree.SubElement(rule, 'value').text = '0'
|
||||||
etree.SubElement(xml, 'label').text = node_name
|
etree.SubElement(xml, 'label').text = node_name
|
||||||
etree.SubElement(xml, 'icon').text = ICON_PATH
|
etree.SubElement(xml, 'icon').text = ICON_PATH
|
||||||
etree.SubElement(xml, 'content').text = section.content
|
etree.SubElement(xml, 'content').text = section.content
|
||||||
|
|
|
@ -653,7 +653,22 @@ def clear_window_vars():
|
||||||
"""
|
"""
|
||||||
Removes all references to sections stored in window vars 'Plex.nodes...'
|
Removes all references to sections stored in window vars 'Plex.nodes...'
|
||||||
"""
|
"""
|
||||||
|
LOG.info('Clearing all the Plex video node variables')
|
||||||
number_of_nodes = int(utils.window('Plex.nodes.total') or 0)
|
number_of_nodes = int(utils.window('Plex.nodes.total') or 0)
|
||||||
utils.window('Plex.nodes.total', clear=True)
|
utils.window('Plex.nodes.total', clear=True)
|
||||||
for index in range(number_of_nodes):
|
for index in range(number_of_nodes):
|
||||||
_clear_window_vars(index)
|
_clear_window_vars(index)
|
||||||
|
|
||||||
|
|
||||||
|
def delete_videonode_files():
|
||||||
|
"""
|
||||||
|
Removes all the PKC video node files under userdata/library/video that
|
||||||
|
start with 'Plex-'
|
||||||
|
"""
|
||||||
|
for root, dirs, _ in path_ops.walk(LIBRARY_PATH):
|
||||||
|
for directory in dirs:
|
||||||
|
if directory.startswith('Plex-'):
|
||||||
|
abs_path = path_ops.path.join(root, directory)
|
||||||
|
LOG.info('Removing video node directory %s', abs_path)
|
||||||
|
path_ops.rmtree(abs_path, ignore_errors=True)
|
||||||
|
break
|
||||||
|
|
|
@ -302,6 +302,35 @@ class Service(object):
|
||||||
finally:
|
finally:
|
||||||
app.APP.resume_threads()
|
app.APP.resume_threads()
|
||||||
|
|
||||||
|
def reset_playlists_and_nodes(self):
|
||||||
|
"""
|
||||||
|
Resets the Kodi playlists and nodes for all the PKC libraries by
|
||||||
|
deleting all of them first, then rewriting everything
|
||||||
|
"""
|
||||||
|
app.APP.suspend_threads()
|
||||||
|
from .library_sync import sections
|
||||||
|
try:
|
||||||
|
sections.clear_window_vars()
|
||||||
|
sections.delete_videonode_files()
|
||||||
|
# Get newest sections from the PMS
|
||||||
|
if not sections.sync_from_pms(self, pick_libraries=False):
|
||||||
|
LOG.warn('We could not successfully reset the playlists!')
|
||||||
|
# "Plex playlists/nodes refresh failed"
|
||||||
|
utils.dialog('notification',
|
||||||
|
utils.lang(29999),
|
||||||
|
utils.lang(39406),
|
||||||
|
icon='{plex}',
|
||||||
|
sound=False)
|
||||||
|
return
|
||||||
|
# "Plex playlists/nodes refreshed"
|
||||||
|
utils.dialog('notification',
|
||||||
|
utils.lang(29999),
|
||||||
|
utils.lang(39405),
|
||||||
|
icon='{plex}',
|
||||||
|
sound=False)
|
||||||
|
finally:
|
||||||
|
app.APP.resume_threads()
|
||||||
|
|
||||||
def _do_auth(self):
|
def _do_auth(self):
|
||||||
LOG.info('Authenticating user')
|
LOG.info('Authenticating user')
|
||||||
if app.ACCOUNT.plex_username and not app.ACCOUNT.force_login: # Found a user in the settings, try to authenticate
|
if app.ACCOUNT.plex_username and not app.ACCOUNT.force_login: # Found a user in the settings, try to authenticate
|
||||||
|
@ -449,6 +478,8 @@ class Service(object):
|
||||||
app.SYNC.run_lib_scan = 'textures'
|
app.SYNC.run_lib_scan = 'textures'
|
||||||
elif plex_command == 'select-libraries':
|
elif plex_command == 'select-libraries':
|
||||||
self.choose_plex_libraries()
|
self.choose_plex_libraries()
|
||||||
|
elif plex_command == 'refreshplaylist':
|
||||||
|
self.reset_playlists_and_nodes()
|
||||||
elif plex_command == 'RESET-PKC':
|
elif plex_command == 'RESET-PKC':
|
||||||
utils.reset()
|
utils.reset()
|
||||||
elif plex_command == 'EXIT-PKC':
|
elif plex_command == 'EXIT-PKC':
|
||||||
|
|
|
@ -157,10 +157,10 @@
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<category label="39073"><!-- Appearance Tweaks -->
|
<category label="39073"><!-- Appearance Tweaks -->
|
||||||
<setting id="fetch_pms_item_number" label="39077" type="number" default="50" option="int" />
|
<setting label="[COLOR yellow]$ADDON[plugin.video.plexkodiconnect 39085][/COLOR]" type="action" action="RunPlugin(plugin://plugin.video.plexkodiconnect?mode=refreshplaylist)" option="close" /><!-- Reload Kodi node files to apply all the settings below -->
|
||||||
<setting type="sep" />
|
<setting type="lsep" />
|
||||||
|
<setting id="fetch_pms_item_number" label="39077" type="number" default="50" option="int" visible="false" />
|
||||||
<setting type="lsep" label="39074" /><!-- TV Shows -->
|
<setting type="lsep" label="39074" /><!-- TV Shows -->
|
||||||
<setting id="OnDeckTVextended" type="bool" label="39058" default="true" /><!-- Extend Plex TV Series "On Deck" view to all shows -->
|
|
||||||
<setting id="OnDeckTvAppendShow" type="bool" label="39047" default="false" /><!--On Deck view: Append show title to episode-->
|
<setting id="OnDeckTvAppendShow" type="bool" label="39047" default="false" /><!--On Deck view: Append show title to episode-->
|
||||||
<setting id="OnDeckTvAppendSeason" type="bool" label="39048" default="false" /><!--On Deck view: Append season number to episode-->
|
<setting id="OnDeckTvAppendSeason" type="bool" label="39048" default="false" /><!--On Deck view: Append season number to episode-->
|
||||||
<setting id="TVShowWatched" type="bool" label="39064" default="true" /><!--Recently Added: Also show already watched episodes-->
|
<setting id="TVShowWatched" type="bool" label="39064" default="true" /><!--Recently Added: Also show already watched episodes-->
|
||||||
|
|
Loading…
Reference in a new issue