diff --git a/dashmachine/main/utils.py b/dashmachine/main/utils.py index 08dd38a..1015902 100755 --- a/dashmachine/main/utils.py +++ b/dashmachine/main/utils.py @@ -1,8 +1,9 @@ import os +import subprocess from shutil import copyfile from requests import get from configparser import ConfigParser -from dashmachine.paths import dashmachine_folder, images_folder +from dashmachine.paths import dashmachine_folder, images_folder, root_folder from dashmachine.main.models import Apps, ApiCalls, TemplateApps from dashmachine.settings_system.models import Settings from dashmachine.user_system.models import User @@ -164,6 +165,12 @@ def public_route(decorated_function): def dashmachine_init(): + migrate_cmd = "python " + os.path.join(root_folder, "manage_db.py db migrate") + subprocess.run(migrate_cmd, stderr=subprocess.PIPE, shell=True, encoding="utf-8") + + upgrade_cmd = "python " + os.path.join(root_folder, "manage_db.py db upgrade") + subprocess.run(upgrade_cmd, stderr=subprocess.PIPE, shell=True, encoding="utf-8") + read_config() read_template_apps() user_data_folder = os.path.join(dashmachine_folder, "user_data") diff --git a/dashmachine/settings_system/routes.py b/dashmachine/settings_system/routes.py index a6c5719..d447ce7 100644 --- a/dashmachine/settings_system/routes.py +++ b/dashmachine/settings_system/routes.py @@ -7,7 +7,6 @@ from dashmachine.user_system.utils import add_edit_user from dashmachine.main.utils import read_config, row2dict from dashmachine.main.models import Files, TemplateApps from dashmachine.paths import backgrounds_images_folder, icons_images_folder -from dashmachine.update import check_needed, update_dashmachine from dashmachine.version import version from dashmachine.settings_system.utils import load_files_html @@ -56,6 +55,16 @@ def add_images(): return load_files_html() +@settings_system.route("/settings/delete_file", methods=["GET"]) +def delete_file(): + if request.args.get("folder") == "backgrounds": + file = os.path.join(backgrounds_images_folder, request.args.get("file")) + if request.args.get("folder") == "icons": + file = os.path.join(icons_images_folder, request.args.get("file")) + os.remove(file) + return load_files_html() + + @settings_system.route("/settings/get_app_template", methods=["GET"]) def get_app_template(): template_app = TemplateApps.query.filter_by(name=request.args.get("name")).first() @@ -66,17 +75,6 @@ def get_app_template(): return template -@settings_system.route("/settings/update", methods=["GET"]) -def update(): - update_dashmachine() - return "ok" - - -@settings_system.route("/settings/check_update", methods=["GET"]) -def check_update(): - return str(check_needed()) - - @settings_system.route("/settings/edit_user", methods=["POST"]) def edit_user(): form = UserForm() diff --git a/dashmachine/static/js/settings_system/settings.js b/dashmachine/static/js/settings_system/settings.js index fc00bd1..3ce6514 100644 --- a/dashmachine/static/js/settings_system/settings.js +++ b/dashmachine/static/js/settings_system/settings.js @@ -58,33 +58,6 @@ $( document ).ready(function() { } }); - $("#update-btn").on('click', function(e) { - $.ajax({ - url: $(this).attr('data-url'), - type: 'GET', - success: function(data){ - M.toast({html: 'DashMachine Updated'}); - $("#update-btn").addClass('hide'); - $("#check-update-btn").removeClass('hide'); - } - }); - }); - - $("#check-update-btn").on('click', function(e) { - $.ajax({ - url: $(this).attr('data-url'), - type: 'GET', - success: function(data){ - if (data === "True"){ - $("#update-btn").removeClass('hide'); - $("#check-update-btn").addClass('hide'); - } else { - M.toast({html: 'Up to date!'}); - } - } - }); - }); - $("#edit-user-btn").on('click', function(e) { $.ajax({ url: $(this).attr('data-url'), diff --git a/dashmachine/templates/settings_system/files.html b/dashmachine/templates/settings_system/files.html index 6f2309f..49aec0a 100644 --- a/dashmachine/templates/settings_system/files.html +++ b/dashmachine/templates/settings_system/files.html @@ -17,7 +17,12 @@ static/images/backgrounds/{{ background }} - close + + close + filter_none {% endfor %} @@ -39,7 +44,12 @@ static/images/icons/{{ icon }} - close + + close + filter_none {% endfor %} @@ -53,5 +63,16 @@ \ No newline at end of file diff --git a/dashmachine/templates/settings_system/settings.html b/dashmachine/templates/settings_system/settings.html index 4479389..a6ef6ce 100644 --- a/dashmachine/templates/settings_system/settings.html +++ b/dashmachine/templates/settings_system/settings.html @@ -390,23 +390,6 @@
DashMachine

version: {{ version }}

- {{ button( - float="left", - id="update-btn", - icon="system_update_alt", - class="hide", - data={"url": url_for('settings_system.update')}, - text="update available" - ) }} - - {{ button( - float="left", - id="check-update-btn", - icon="security", - data={"url": url_for('settings_system.check_update')}, - text="check for update" - ) }} - diff --git a/dashmachine/update.py b/dashmachine/update.py deleted file mode 100644 index 0c1d757..0000000 --- a/dashmachine/update.py +++ /dev/null @@ -1,33 +0,0 @@ -import os -import subprocess -from dashmachine.paths import root_folder - - -def check_needed(): - subprocess.run("git remote update", shell=True) - out = subprocess.run( - "git status -uno", stdout=subprocess.PIPE, shell=True, encoding="utf-8" - ) - if str(out.stdout).find("Your branch is up to date") > -1: - needed = False - return needed - - elif str(out.stdout).find("Your branch is up-to-date") > -1: - needed = False - return needed - else: - needed = True - return needed - - -def update_dashmachine(): - - subprocess.run( - "git pull origin master", stdout=subprocess.PIPE, shell=True, encoding="utf-8" - ) - - migrate_cmd = "python " + os.path.join(root_folder, "manage_db.py db migrate") - subprocess.run(migrate_cmd, stderr=subprocess.PIPE, shell=True, encoding="utf-8") - - upgrade_cmd = "python " + os.path.join(root_folder, "manage_db.py db upgrade") - subprocess.run(upgrade_cmd, stderr=subprocess.PIPE, shell=True, encoding="utf-8")