From 76a499f5a4cf5664a0f4b09b56f22978187ab80c Mon Sep 17 00:00:00 2001 From: amcmanu3 Date: Sun, 4 Sep 2022 17:50:08 -0400 Subject: [PATCH] Fix start server after updates Fix update notifs --- app/classes/shared/server.py | 28 +++++------- .../templates/panel/server_config.html | 44 ++++++++----------- 2 files changed, 31 insertions(+), 41 deletions(-) diff --git a/app/classes/shared/server.py b/app/classes/shared/server.py index 6501fb1c..1d37378f 100644 --- a/app/classes/shared/server.py +++ b/app/classes/shared/server.py @@ -1042,6 +1042,7 @@ class ServerInstance: return self.stats_helper.get_server_stats()["updating"] def a_jar_update(self): + server_users = PermissionsServers.get_server_user_list(self.server_id) was_started = "-1" self.backup_server() # checks if server is running. Calls shutdown if it is running. @@ -1060,8 +1061,10 @@ class ServerInstance: message = ( ' UPDATING...' ) - self.helper.websocket_helper.broadcast_page( + for user in server_users: + self.helper.websocket_helper.broadcast_user_page( "/panel/server_detail", + user, "update_button_status", { "isUpdating": self.check_update(), @@ -1070,9 +1073,6 @@ class ServerInstance: "string": message, }, ) - self.helper.websocket_helper.broadcast_page( - "/panel/dashboard", "send_start_reload", {} - ) backup_dir = os.path.join( Helpers.get_os_understandable_path(self.settings["path"]), "crafty_executable_backups", @@ -1114,7 +1114,6 @@ class ServerInstance: # check if backup was successful if self.last_backup_failed: - server_users = PermissionsServers.get_server_user_list(self.server_id) for user in server_users: self.helper.websocket_helper.broadcast_user( user, @@ -1164,7 +1163,6 @@ class ServerInstance: if len(self.helper.websocket_helper.clients) > 0: # There are clients self.check_update() - server_users = PermissionsServers.get_server_user_list(self.server_id) for user in server_users: self.helper.websocket_helper.broadcast_user( user, @@ -1173,8 +1171,10 @@ class ServerInstance: ) # sleep so first notif can completely run time.sleep(3) - self.helper.websocket_helper.broadcast_page( + for user in server_users: + self.helper.websocket_helper.broadcast_user_page( "/panel/server_detail", + user, "update_button_status", { "isUpdating": self.check_update(), @@ -1182,14 +1182,9 @@ class ServerInstance: "wasRunning": was_started, }, ) - self.helper.websocket_helper.broadcast_page( - "/panel/dashboard", "send_start_reload", {} + self.helper.websocket_helper.broadcast_user_page( + user, "/panel/dashboard", "send_start_reload", {} ) - self.helper.websocket_helper.broadcast_page( - "/panel/server_detail", "remove_spinner", {} - ) - server_users = PermissionsServers.get_server_user_list(self.server_id) - for user in server_users: self.helper.websocket_helper.broadcast_user( user, "notification", @@ -1204,9 +1199,8 @@ class ServerInstance: self.settings["server_ip"], ) if was_started: - self.start_server() + self.start_server(HelperUsers.get_user_id_by_name("system")) else: - server_users = PermissionsServers.get_server_user_list(self.server_id) for user in server_users: self.helper.websocket_helper.broadcast_user( user, @@ -1217,6 +1211,8 @@ class ServerInstance: ) logger.error("Executable download failed.") self.stats_helper.set_update(False) + for user in server_users: + self.helper.websocket_helper.broadcast_user(user, "remove_spinner", {}) # ********************************************************************************** # Minecraft Servers Statistics diff --git a/app/frontend/templates/panel/server_config.html b/app/frontend/templates/panel/server_config.html index d6117683..d0c0d42f 100644 --- a/app/frontend/templates/panel/server_config.html +++ b/app/frontend/templates/panel/server_config.html @@ -250,18 +250,16 @@
{% if data['server_stats']['running'] %} - {% if data['server_stats']['updating'] %} - +   {% else %} - +   {% end %} {{ translate('serverConfig', 'deleteServer', data['lang']) }}
@@ -269,14 +267,15 @@ {% else %} {% if not data['failed'] %} {% if data['server_stats']['updating'] %} - +   {% else %} - +   {% end %} {% end %} {% if not data['failed'] %} @@ -384,16 +383,11 @@ success: function (data) { console.log("got response:"); console.log(data); - setTimeout(function () { location.reload(); }, 10000); + if (command != "update_executable") { + setTimeout(function () { location.reload(); }, 10000); + } } }); - if (command != "delete_server" && command != "delete_server_files") { - bootbox.alert({ - backdrop: true, - title: '{% raw translate("serverConfig", "sendingRequest", data['lang']) %}', - message: '
  {% raw translate("serverConfig", "bePatientUpdate", data['lang']) %}
' - }); - } } function deleteServer() {