Updated kodi settings on Lenovo
This commit is contained in:
63
Kodi/Lenovo/addons/script.metadata.editor/service.py
Normal file
63
Kodi/Lenovo/addons/script.metadata.editor/service.py
Normal file
@@ -0,0 +1,63 @@
|
||||
#!/usr/bin/python
|
||||
# coding: utf-8
|
||||
|
||||
########################
|
||||
|
||||
import xbmc
|
||||
|
||||
from resources.lib.helper import *
|
||||
from resources.lib.database import *
|
||||
from resources.lib.editor import *
|
||||
from resources.lib.nfo_updater import *
|
||||
|
||||
########################
|
||||
|
||||
class Service(xbmc.Monitor):
|
||||
def __init__(self):
|
||||
while not self.abortRequested():
|
||||
self.waitForAbort(100)
|
||||
|
||||
def onNotification(self, sender, method, data):
|
||||
if method in ['VideoLibrary.OnUpdate', 'Player.OnStop']:
|
||||
data = eval(data.replace(':true', ': True').replace(':false', ': False'))
|
||||
item = data.get('item', {})
|
||||
dbid = item.get('id')
|
||||
dbtype = item.get('type', '')
|
||||
|
||||
if dbid and (dbtype in ['movie', 'episode']):
|
||||
|
||||
if method == 'VideoLibrary.OnUpdate' and ADDON.getSettingBool('nfo_updating') and ADDON.getSettingBool('write_watched_stated') and ADDON.getSettingBool('playback_update_playcount'):
|
||||
if data.get('playcount') is not None:
|
||||
update_nfo(dbid=dbid, dbtype=dbtype)
|
||||
|
||||
if method == 'Player.OnStop' and ADDON.getSettingBool('playback_user_rating'):
|
||||
if data.get('end'):
|
||||
# give Kodi time to return to the UI
|
||||
xbmc.sleep(1000)
|
||||
|
||||
if not condition('Player.HasMedia'):
|
||||
db = Database(dbid=dbid, dbtype=dbtype)
|
||||
getattr(db, dbtype)()
|
||||
details = db.result().get(dbtype)[0]
|
||||
del db
|
||||
|
||||
title = details.get('title')
|
||||
showtitle = details.get('showtitle')
|
||||
episode = details.get('episode')
|
||||
season = details.get('season')
|
||||
|
||||
if season < 10:
|
||||
season = '0' + str(season)
|
||||
if episode < 10:
|
||||
episode = '0' + str(episode)
|
||||
|
||||
msg_title = title if dbtype == 'movie' else '%s - S%sE%s - %s' % (showtitle, season, episode, title)
|
||||
|
||||
if DIALOG.yesno(ADDON.getLocalizedString(32001), ADDON.getLocalizedString(32054) + '[CR]' + msg_title):
|
||||
editor = EditDialog(dbid=dbid, dbtype=dbtype)
|
||||
editor.set(key='userrating', type='userrating')
|
||||
del editor
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
Service()
|
||||
Reference in New Issue
Block a user