def wizard_update(startup=None): from resources.libs import check from resources.libs.common import logging from resources.libs.common import tools from resources.libs.gui import window dialog = xbmcgui.Dialog() progress_dialog = xbmcgui.DialogProgress() response = tools.open_url(CONFIG.BUILDFILE, check=True) if response: try: wid, ver, zip = check.check_wizard('all') except: return if ver > CONFIG.ADDON_VERSION: yes = dialog.yesno(CONFIG.ADDONTITLE, '[COLOR {0}]There is a new version of the [COLOR {1}]{2}[/COLOR]!'.format(CONFIG.COLOR2, CONFIG.COLOR1, CONFIG.ADDONTITLE), 'Would you like to download [COLOR {0}]v{1}[/COLOR]?[/COLOR]'.format(CONFIG.COLOR1, ver), nolabel='[B][COLOR red]Remind Me Later[/COLOR][/B]', yeslabel="[B][COLOR springgreen]Update Wizard[/COLOR][/B]") if yes: from resources.libs.common import tools logging.log("[Auto Update Wizard] Installing wizard v{0}".format(ver)) progress_dialog.create(CONFIG.ADDONTITLE, '[COLOR {0}]Downloading Update...'.format(CONFIG.COLOR2), '', 'Please Wait[/COLOR]') lib = os.path.join(CONFIG.PACKAGES, '{0}-{1}.zip'.format(CONFIG.ADDON_ID, ver)) try: os.remove(lib) except: pass from resources.libs.downloader import Downloader from resources.libs import extract Downloader().download(zip, lib) xbmc.sleep(2000) progress_dialog.update(0, "", "Installing {0} update".format(CONFIG.ADDONTITLE)) percent, errors, error = extract.all(lib, CONFIG.ADDONS, True) progress_dialog.close() xbmc.sleep(1000) force_update() xbmc.sleep(1000) logging.log_notify("[COLOR {0}]{1}[/COLOR]".format(CONFIG.COLOR1, CONFIG.ADDONTITLE), '[COLOR {0}]Add-on updated[/COLOR]'.format(CONFIG.COLOR2)) logging.log("[Auto Update Wizard] Wizard updated to v{0}".format(ver)) tools.remove_file(os.path.join(CONFIG.ADDONDATA, 'settings.xml')) window.show_save_data_settings() if startup: xbmc.executebuiltin('RunScript({0}/startup.py)'.format(CONFIG.PLUGIN)) return else: logging.log("[Auto Update Wizard] Install New Wizard Ignored: {0}".format(ver)) else: if not startup: logging.log_notify("[COLOR {0}]{1}[/COLOR]".format(CONFIG.COLOR1, CONFIG.ADDONTITLE), "[COLOR {0}]No New Version of Wizard[/COLOR]".format(CONFIG.COLOR2)) logging.log("[Auto Update Wizard] No New Version v{0}".format(ver)) else: logging.log("[Auto Update Wizard] Url for wizard file not valid: {0}".format(CONFIG.BUILDFILE))
def wizard_update(): from resources.libs import check from resources.libs.common import logging from resources.libs.common import tools from resources.libs.gui import window dialog = xbmcgui.Dialog() progress_dialog = xbmcgui.DialogProgress() response = tools.open_url(CONFIG.BUILDFILE, check=True) if response: try: wid, ver, zip = check.check_wizard('all') except: return if ver > CONFIG.ADDON_VERSION: yes = dialog.yesno(CONFIG.ADDONTITLE, '[COLOR {0}]Existe uma nova versão do {1}!'.format(CONFIG.COLOR2, CONFIG.ADDONTITLE) +'\n'+'Você gostaria de baixar [COLOR {0}]v{1}[/COLOR]?[/COLOR]'.format(CONFIG.COLOR1, ver), nolabel='[B][COLOR red]Você gostaria de baixar[/COLOR][/B]', yeslabel="[B][COLOR springgreen]Assistente de atualização[/COLOR][/B]") if yes: from resources.libs import db from resources.libs.common import tools logging.log("[Assistente de atualização automática] Assistente de instalação v{0}".format(ver)) progress_dialog.create(CONFIG.ADDONTITLE, '[COLOR {0}]Download da atualização...'.format(CONFIG.COLOR2) +'\n'+'' +'\n'+'Por favor, aguarde...[/COLOR]') lib = os.path.join(CONFIG.PACKAGES, '{0}-{1}.zip'.format(CONFIG.ADDON_ID, ver)) try: os.remove(lib) except: pass from resources.libs.downloader import Downloader from resources.libs import extract Downloader().download(zip, lib) xbmc.sleep(2000) progress_dialog.update(0, '\n'+"Instalando{0} atualizar".format(CONFIG.ADDONTITLE)) percent, errors, error = extract.all(lib, CONFIG.ADDONS, True) progress_dialog.close() xbmc.sleep(1000) db.force_check_updates(auto=True, over=True) xbmc.sleep(1000) logging.log_notify(CONFIG.ADDONTITLE, '[COLOR {0}]Add-on atualizado[/COLOR]'.format(CONFIG.COLOR2)) logging.log("[Assistente de atualização automática] Assistente atualizado para v{0}".format(ver)) tools.remove_file(os.path.join(CONFIG.ADDON_DATA, 'settings.xml')) window.show_save_data_settings() else: logging.log("[Assistente de atualização automática] Instalar novo assistente ignorado: {0}".format(ver)) else: logging.log("[Assistente de atualização automática] Sem nova versão v{0}".format(ver)) else: logging.log("[Assistente de atualização automática] Url para o arquivo do assistente não é válido: {0}".format(CONFIG.BUILDFILE))
# Don't run the script while video is playing :) check_for_video() # Ensure that any needed folders are created tools.ensure_folders() # Stop this script if it's been run more than once # if CONFIG.KODIV < 18: # stop_if_duplicate() # Ensure that the wizard's name matches its folder check.check_paths() # FIRST RUN SETTINGS if CONFIG.get_setting('first_install') == 'true': logging.log("[First Run] Showing Save Data Settings", level=xbmc.LOGINFO) window.show_save_data_settings() else: logging.log("[First Run] Skipping Save Data Settings", level=xbmc.LOGINFO) # BUILD INSTALL PROMPT if tools.open_url(CONFIG.BUILDFILE, check=True) and CONFIG.get_setting('installed') == 'false': logging.log("[Current Build Check] Build Not Installed", level=xbmc.LOGINFO) window.show_build_prompt() else: logging.log("[Current Build Check] Build Installed: {0}".format(CONFIG.BUILDNAME), level=xbmc.LOGINFO) # ENABLE ALL ADDONS AFTER INSTALL if CONFIG.get_setting('enable_all') == 'true': logging.log("[Post Install] Enabling all Add-ons", level=xbmc.LOGINFO) from resources.libs.gui import menu menu.enable_addons(all=True)
def test_save_data_settings(): from resources.libs.gui import window window.show_save_data_settings()
def wizard_update(): from resources.libs import check from resources.libs.common import logging from resources.libs.common import tools from resources.libs.gui import window dialog = xbmcgui.Dialog() progress_dialog = xbmcgui.DialogProgress() response = tools.open_url(CONFIG.BUILDFILE, check=True) if response: try: wid, ver, zip = check.check_wizard('all') except: return if ver > CONFIG.ADDON_VERSION: yes = dialog.yesno( CONFIG.ADDONTITLE, '[COLOR {0}]Hay una nueva versión de{1}!'.format( CONFIG.COLOR2, CONFIG.ADDONTITLE) + '\n' + '¿Quieres descargar la [COLOR {0}]v{1}[/COLOR]?[/COLOR]'. format(CONFIG.COLOR1, ver), nolabel='[B][COLOR red]Recordar Más tarde[/COLOR][/B]', yeslabel="[B][COLOR cyan]Actualizar[/COLOR][/B]") if yes: from resources.libs import db from resources.libs.common import tools progress_dialog.create( CONFIG.ADDONTITLE, '[COLOR {0}]Descargando Actualización...'.format( CONFIG.COLOR2) + '\n' + '' + '\n' + 'Espere por favor[/COLOR]') lib = os.path.join(CONFIG.PACKAGES, '{0}-{1}.zip'.format(CONFIG.ADDON_ID, ver)) try: os.remove(lib) except: pass from resources.libs.downloader import Downloader from resources.libs import extract Downloader().download(zip, lib) xbmc.sleep(2000) progress_dialog.update( 0, '\n' + "Instalando {0} Actualización".format(CONFIG.ADDONTITLE)) percent, errors, error = extract.all(lib, CONFIG.ADDONS, True) progress_dialog.close() xbmc.sleep(1000) db.force_check_updates(auto=True, over=True) xbmc.sleep(1000) logging.log_notify( CONFIG.ADDONTITLE, '[COLOR {0}]Add-on actualizado[/COLOR]'.format( CONFIG.COLOR2)) logging.log( "[Auto Update Wizard] Wizard actualizado a la v{0}".format( ver)) tools.remove_file( os.path.join(CONFIG.ADDON_DATA, 'settings.xml')) window.show_save_data_settings() else: logging.log( "[Auto Update Wizard] Instalación del Nuevo Wizard Ignorada: {0}" .format(ver)) else: logging.log( "[Auto Update Wizard] No hay Nueva Versión v{0}".format(ver)) else: logging.log( "[Auto Update Wizard] URL del Archivo del Wizard no válida: {0}". format(CONFIG.BUILDFILE))
def wizard_update(): from resources.libs import check from resources.libs.common import logging from resources.libs.common import tools from resources.libs.gui import window dialog = xbmcgui.Dialog() progress_dialog = xbmcgui.DialogProgress() response = tools.open_url(CONFIG.BUILDFILE, check=True) if response: try: wid, ver, zip = check.check_wizard('all') except: return if ver > CONFIG.ADDON_VERSION: yes = dialog.yesno( CONFIG.ADDONTITLE, '[COLOR {0}]Hay una nueva versión del {1}!'.format( CONFIG.COLOR2, CONFIG.ADDONTITLE), 'Te gustaria descargar [COLOR {0}]v{1}[/COLOR]?[/COLOR]'. format(CONFIG.COLOR1, ver), nolabel='[B][COLOR red]Recuérdame más tarde[/COLOR][/B]', yeslabel="[B][COLOR springgreen]ACTUALIZAR WIZARD[/COLOR][/B]") if yes: from resources.libs import db from resources.libs.common import tools logging.log( "[Auto Update Wizard] INSTALANDO WIZARD v{0}".format(ver)) progress_dialog.create( CONFIG.ADDONTITLE, '[COLOR {0}]DESCARGANDO ACTUALIZACION...'.format( CONFIG.COLOR2), '', 'Please Wait[/COLOR]') lib = os.path.join(CONFIG.PACKAGES, '{0}-{1}.zip'.format(CONFIG.ADDON_ID, ver)) try: os.remove(lib) except: pass from resources.libs.downloader import Downloader from resources.libs import extract Downloader().download(zip, lib) xbmc.sleep(2000) progress_dialog.update( 0, "", "INSTALANDO {0} ACTUALIZACION".format(CONFIG.ADDONTITLE)) percent, errors, error = extract.all(lib, CONFIG.ADDONS, True) progress_dialog.close() xbmc.sleep(1000) db.force_check_updates(auto=True, over=True) xbmc.sleep(1000) logging.log_notify( CONFIG.ADDONTITLE, '[COLOR {0}]Add-on ACTLUALIZADO[/COLOR]'.format( CONFIG.COLOR2)) logging.log( "[Auto Update Wizard] WIZARD ACTUALIZADO v{0}".format(ver)) tools.remove_file( os.path.join(CONFIG.ADDON_DATA, 'settings.xml')) window.show_save_data_settings() else: logging.log( "[Auto Update Wizard] IGNORAR INSTALACION DEL WIZARD: {0}". format(ver)) else: logging.log( "[Auto Update Wizard] No hay nueva versión v{0}".format(ver)) else: logging.log( "[Auto Update Wizard] La URL del archivo del WIZARD no es válida: {0}" .format(CONFIG.BUILDFILE))