fix e migliorie per l'updater

This commit is contained in:
mac12m99
2019-08-03 15:14:09 +02:00
parent 155e6e0bf2
commit b76fef912c
6 changed files with 29 additions and 28 deletions
+1 -1
View File
@@ -78,7 +78,7 @@ def getmainlist(view="thumb_"):
thumbnail=get_thumb(thumb_setting, view), thumbnail=get_thumb(thumb_setting, view),
category=config.get_localized_string(30100), viewmode="list")) category=config.get_localized_string(30100), viewmode="list"))
itemlist.append(Item(title=config.get_localized_string(30104) + " (" + config.get_localized_string(20000) +" " + config.get_addon_version(with_fix=False) + ")", channel="help", action="mainlist", itemlist.append(Item(title=config.get_localized_string(30104) + " (v" + config.get_addon_version(with_fix=True) + ")", channel="help", action="mainlist",
thumbnail=get_thumb("help.png", view), thumbnail=get_thumb("help.png", view),
category=config.get_localized_string(30104), viewmode="list")) category=config.get_localized_string(30104), viewmode="list"))
return itemlist return itemlist
+19 -13
View File
@@ -17,26 +17,32 @@ __language__ = __settings__.getLocalizedString
def get_addon_core(): def get_addon_core():
return __settings__ return __settings__
def get_addon_version(with_fix=True): def get_addon_version(with_fix=True):
''' '''
Devuelve el número de versión del addon, y opcionalmente número de fix si lo hay Trova la versione dell'addon, senza usare le funzioni di kodi perchè non si aggiornano fino al riavvio
''' '''
info = open(os.path.join(get_runtime_path(), 'addon.xml')).read()
ver = re.search('plugin.video.kod.*?version="([^"]+)"', info).group(1)
if with_fix: if with_fix:
return __settings__.getAddonInfo('version') + get_addon_version_fix() return ver + " " + get_addon_version_fix()
else: else:
return __settings__.getAddonInfo('version') return ver
def get_addon_version_fix(): def get_addon_version_fix():
try: if not dev_mode():
last_fix_json = os.path.join(get_runtime_path(), 'last_fix.json') # información de la versión fixeada del usuario sha = open(os.path.join(get_runtime_path(), 'last_commit.txt')).readline()
if os.path.exists(last_fix_json): return sha[:8]
with open(last_fix_json, 'r') as f: data=f.read(); f.close() else:
fix = re.findall('"fix_version"\s*:\s*(\d+)', data) return 'DEV'
if fix:
return '.fix%s' % fix[0]
except: def dev_mode():
pass r = os.path.isdir(get_runtime_path() + '/.git')
return '' return r
def get_platform(full_version=False): def get_platform(full_version=False):
""" """
+1 -2
View File
@@ -72,8 +72,7 @@ def run(item=None):
else: else:
item = Item(channel="channelselector", action="getmainlist", viewmode="movie") item = Item(channel="channelselector", action="getmainlist", viewmode="movie")
if not config.get_setting('show_once'): if not config.get_setting('show_once'):
if not os.path.isdir(config.get_runtime_path() + '/.git'): if not config.dev_mode():
logger.info("DEV MODE OFF")
from platformcode import updater from platformcode import updater
updater.calcCurrHash() updater.calcCurrHash()
from platformcode import xbmc_videolibrary from platformcode import xbmc_videolibrary
+4 -4
View File
@@ -89,8 +89,7 @@ def check_addon_init():
text = "" text = ""
try: try:
localFile = open(addonDir + file["filename"], 'r+') localFile = open(addonDir + file["filename"], 'r+')
for line in localFile: text = localFile.read()
text += line
except IOError: # nuovo file except IOError: # nuovo file
localFile = open(addonDir + file["filename"], 'w') localFile = open(addonDir + file["filename"], 'w')
@@ -105,12 +104,13 @@ def check_addon_init():
else: # nel caso ci siano stati problemi else: # nel caso ci siano stati problemi
logger.info('lo sha non corrisponde, scarico il file') logger.info('lo sha non corrisponde, scarico il file')
downloadtools.downloadfile(file['raw_url'], addonDir + file['filename'], downloadtools.downloadfile(file['raw_url'], addonDir + file['filename'],
silent=True, continuar=True) silent=True, continuar=True, resumir=False)
else: # è un file NON testuale, lo devo scaricare else: # è un file NON testuale, lo devo scaricare
# se non è già applicato # se non è già applicato
if not (filetools.isfile(addonDir + file['filename']) and getSha( if not (filetools.isfile(addonDir + file['filename']) and getSha(
filetools.read(addonDir + file['filename']) == file['sha'])): filetools.read(addonDir + file['filename']) == file['sha'])):
downloadtools.downloadfile(file['raw_url'], addonDir + file['filename'], silent=True, continuar=True) downloadtools.downloadfile(file['raw_url'], addonDir + file['filename'], silent=True,
continuar=True, resumir=False)
alreadyApplied = False alreadyApplied = False
elif file['status'] == 'removed': elif file['status'] == 'removed':
try: try:
+3 -4
View File
@@ -342,12 +342,11 @@ def submenu_tools(item):
def check_quickfixes(item): def check_quickfixes(item):
logger.info() logger.info()
if not os.path.isfile(config.get_runtime_path() + '/.dev'): if not config.dev_mode():
logger.info("DEV MODE OFF")
from platformcode import updater from platformcode import updater
return updater.check_addon_updates(verbose=True) return updater.check_addon_init()
else: else:
logger.info("DEV MODE ON") return False
def update_quasar(item): def update_quasar(item):
+1 -4
View File
@@ -355,13 +355,10 @@ if __name__ == "__main__":
# Verificar quick-fixes al abrirse Kodi, y dejarlo corriendo como Thread # Verificar quick-fixes al abrirse Kodi, y dejarlo corriendo como Thread
if not os.path.isdir(config.get_runtime_path() + '/.git'): if not config.dev_mode():
logger.info("DEV MODE OFF")
from platformcode import updater from platformcode import updater
updater.check_addon_init() updater.check_addon_init()
# get_channel_json() -> disabilitato, lo si fa con l'updater # get_channel_json() -> disabilitato, lo si fa con l'updater
else:
logger.info("DEV MODE ON")
# Copia Custom code a las carpetas de Alfa desde la zona de Userdata # Copia Custom code a las carpetas de Alfa desde la zona de Userdata
from platformcode import custom_code from platformcode import custom_code