diff --git a/app/classes/web/panel_handler.py b/app/classes/web/panel_handler.py index d436a72a..514ea494 100644 --- a/app/classes/web/panel_handler.py +++ b/app/classes/web/panel_handler.py @@ -677,16 +677,10 @@ class PanelHandler(BaseHandler): page_data["java_versions"] = page_java if subpage == "backup": server_info = self.controller.servers.get_server_data_by_id(server_id) - page_data["backup_config"] = ( - self.controller.management.get_backup_config(server_id) - ) + page_data["backups"] = self.controller.management.get_backups_by_server( server_id, model=True ) - exclusions = [] - page_data["exclusions"] = ( - self.controller.management.get_excluded_backup_dirs(server_id) - ) page_data["backing_up"] = ( self.controller.servers.get_server_instance_by_id( server_id @@ -698,20 +692,8 @@ class PanelHandler(BaseHandler): ).send_backup_status() ) # makes it so relative path is the only thing shown - for file in page_data["exclusions"]: - if Helpers.is_os_windows(): - exclusions.append(file.replace(server_info["path"] + "\\", "")) - else: - exclusions.append(file.replace(server_info["path"] + "/", "")) - page_data["exclusions"] = exclusions + self.controller.servers.refresh_server_settings(server_id) - try: - page_data["backup_list"] = server.list_backups() - except: - page_data["backup_list"] = [] - page_data["backup_path"] = Helpers.wtol_path( - page_data["backup_config"]["backup_path"] - ) if subpage == "metrics": try: @@ -1260,6 +1242,15 @@ class PanelHandler(BaseHandler): template = "panel/server_schedule_edit.html" + elif page == "edit_backup": + exclusions = [] + for file in page_data["exclusions"]: + if Helpers.is_os_windows(): + exclusions.append(file.replace(server_info["path"] + "\\", "")) + else: + exclusions.append(file.replace(server_info["path"] + "/", "")) + page_data["exclusions"] = exclusions + elif page == "edit_user": user_id = self.get_argument("id", None) role_servers = self.controller.servers.get_authorized_servers(user_id) diff --git a/app/frontend/templates/panel/server_backup.html b/app/frontend/templates/panel/server_backup.html index 0ffba3c4..6a8098c4 100644 --- a/app/frontend/templates/panel/server_backup.html +++ b/app/frontend/templates/panel/server_backup.html @@ -43,35 +43,51 @@
{{ translate('serverBackups', 'enabled', data['lang']) }} | -{{ translate('serverBackups', 'name', data['lang']) }} | -{{ translate('serverBackups', 'storageLocation', data['lang']) }} | -{{ translate('serverBackups', 'maxBackups', data['lang']) }} | -{{ translate('serverBackups', 'actions', data['lang']) }} | +{{ translate('serverBackups', 'enabled', + data['lang']) }} | +{{ translate('serverBackups', 'name', + data['lang']) }} | +{{ translate('serverBackups', + 'storageLocation', data['lang']) }} | +{{ translate('serverBackups', + 'maxBackups', data['lang']) }} | +{{ translate('serverBackups', 'actions', + data['lang']) }} |
---|---|---|---|---|---|---|---|---|---|
- | @@ -85,13 +101,17 @@
- |
@@ -101,7 +121,8 @@
{{ translate('serverBackups', 'enabled', @@ -116,7 +137,10 @@ {% for backup in data['backups'] %} | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- |
@@ -124,13 +148,17 @@
- |
@@ -144,207 +172,6 @@
-
{{ translate('serverBackups', 'options', data['lang']) }} | -{{ translate('serverBackups', 'path', data['lang']) }} | -{{ translate('serverBackups', 'size', data['lang']) }} | -
---|---|---|
-
-
- {{ translate('serverBackups', 'download', data['lang']) }}
-
- - - |
- {{ backup['path'] }} | -{{ backup['size'] }} | -
Backing up {{data['server_stats']['world_size']}}
`); - } else { + } else { - bootbox.alert({ - title: responseData.status, - message: responseData.error - }); - } + bootbox.alert({ + title: responseData.status, + message: responseData.error + }); + } return; } async function del_backup(filename, id) { const token = getCookie("_xsrf") - let contents = JSON.stringify({"filename": filename}) + let contents = JSON.stringify({ "filename": filename }) let res = await fetch(`/api/v2/servers/${id}/backups/backup/`, { method: 'DELETE', headers: { @@ -452,15 +279,17 @@ let responseData = await res.json(); if (responseData.status === "ok") { window.location.reload(); - }else{ - bootbox.alert({"title": responseData.status, - "message": responseData.error}) + } else { + bootbox.alert({ + "title": responseData.status, + "message": responseData.error + }) } } async function restore_backup(filename, id) { const token = getCookie("_xsrf") - let contents = JSON.stringify({"filename": filename}) + let contents = JSON.stringify({ "filename": filename }) var dialog = bootbox.dialog({ message: " {{ translate('serverBackups', 'restoring', data['lang']) }}", closeButton: false @@ -475,9 +304,11 @@ let responseData = await res.json(); if (responseData.status === "ok") { window.location.href = "/panel/dashboard"; - }else{ - bootbox.alert({"title": responseData.status, - "message": responseData.error}) + } else { + bootbox.alert({ + "title": responseData.status, + "message": responseData.error + }) } } @@ -529,7 +360,7 @@ $('input.excluded:checkbox:checked').each(function () { excluded.push($(this).val()); }); - if ($("#root_files_button").hasClass("clicked")){ + if ($("#root_files_button").hasClass("clicked")) { formDataObject.exclusions = excluded; } delete formDataObject.root_path @@ -711,54 +542,54 @@ }); } - function getDirView(event){ + function getDirView(event) { let path = event.target.parentElement.getAttribute("data-path"); if (document.getElementById(path).classList.contains('clicked')) { return; - }else{ + } else { getTreeView(path); } } - async function getTreeView(path){ + async function getTreeView(path) { console.log(path) const token = getCookie("_xsrf"); let res = await fetch(`/api/v2/servers/${server_id}/files`, { - method: 'POST', - headers: { - 'X-XSRFToken': token - }, - body: JSON.stringify({"page": "backups", "path": path}), + method: 'POST', + headers: { + 'X-XSRFToken': token + }, + body: JSON.stringify({ "page": "backups", "path": path }), + }); + let responseData = await res.json(); + if (responseData.status === "ok") { + console.log(responseData); + process_tree_response(responseData); + + } else { + + bootbox.alert({ + title: responseData.status, + message: responseData.error }); - let responseData = await res.json(); - if (responseData.status === "ok") { - console.log(responseData); - process_tree_response(responseData); - - } else { - - bootbox.alert({ - title: responseData.status, - message: responseData.error - }); - } + } } function process_tree_response(response) { let path = response.data.root_path.path; let text = `{{ translate('serverBackups', 'enabled', data['lang']) }} | +{{ translate('serverBackups', 'name', data['lang']) }} | +{{ translate('serverBackups', 'storageLocation', data['lang']) }} | +{{ translate('serverBackups', 'maxBackups', data['lang']) }} | +{{ translate('serverBackups', 'actions', data['lang']) }} | +
---|---|---|---|---|
+ |
+
+ {{backup.backup_name}} + |
+
+ {{backup.backup_location}} + |
+
+ {{backup.max_backups}} + |
+
+ |
+
{{ translate('serverBackups', 'enabled', + data['lang']) }} | +Name + | +{{ translate('serverBackups', 'edit', data['lang']) + }} | +
---|---|---|
+ |
+
+ {{backup.backup_name}} + |
+
+ |
+
Backing up {{data['server_stats']['world_size']}}
+ {% end %} + +{{ translate('serverBackups', 'options', data['lang']) }} | +{{ translate('serverBackups', 'path', data['lang']) }} | +{{ translate('serverBackups', 'size', data['lang']) }} | +
---|---|---|
+
+
+ {{ translate('serverBackups', 'download', data['lang']) }}
+
+ + + |
+ {{ backup['path'] }} | +{{ backup['size'] }} | +