fix e migliorie per l'updater
This commit is contained in:
@@ -17,26 +17,32 @@ __language__ = __settings__.getLocalizedString
|
||||
def get_addon_core():
|
||||
return __settings__
|
||||
|
||||
|
||||
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:
|
||||
return __settings__.getAddonInfo('version') + get_addon_version_fix()
|
||||
return ver + " " + get_addon_version_fix()
|
||||
else:
|
||||
return __settings__.getAddonInfo('version')
|
||||
return ver
|
||||
|
||||
|
||||
def get_addon_version_fix():
|
||||
try:
|
||||
last_fix_json = os.path.join(get_runtime_path(), 'last_fix.json') # información de la versión fixeada del usuario
|
||||
if os.path.exists(last_fix_json):
|
||||
with open(last_fix_json, 'r') as f: data=f.read(); f.close()
|
||||
fix = re.findall('"fix_version"\s*:\s*(\d+)', data)
|
||||
if fix:
|
||||
return '.fix%s' % fix[0]
|
||||
except:
|
||||
pass
|
||||
return ''
|
||||
if not dev_mode():
|
||||
sha = open(os.path.join(get_runtime_path(), 'last_commit.txt')).readline()
|
||||
return sha[:8]
|
||||
else:
|
||||
return 'DEV'
|
||||
|
||||
|
||||
def dev_mode():
|
||||
r = os.path.isdir(get_runtime_path() + '/.git')
|
||||
return r
|
||||
|
||||
|
||||
def get_platform(full_version=False):
|
||||
"""
|
||||
|
||||
@@ -72,8 +72,7 @@ def run(item=None):
|
||||
else:
|
||||
item = Item(channel="channelselector", action="getmainlist", viewmode="movie")
|
||||
if not config.get_setting('show_once'):
|
||||
if not os.path.isdir(config.get_runtime_path() + '/.git'):
|
||||
logger.info("DEV MODE OFF")
|
||||
if not config.dev_mode():
|
||||
from platformcode import updater
|
||||
updater.calcCurrHash()
|
||||
from platformcode import xbmc_videolibrary
|
||||
|
||||
@@ -89,8 +89,7 @@ def check_addon_init():
|
||||
text = ""
|
||||
try:
|
||||
localFile = open(addonDir + file["filename"], 'r+')
|
||||
for line in localFile:
|
||||
text += line
|
||||
text = localFile.read()
|
||||
except IOError: # nuovo file
|
||||
localFile = open(addonDir + file["filename"], 'w')
|
||||
|
||||
@@ -105,12 +104,13 @@ def check_addon_init():
|
||||
else: # nel caso ci siano stati problemi
|
||||
logger.info('lo sha non corrisponde, scarico il file')
|
||||
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
|
||||
# se non è già applicato
|
||||
if not (filetools.isfile(addonDir + file['filename']) and getSha(
|
||||
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
|
||||
elif file['status'] == 'removed':
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user