mirror of
https://gitlab.com/crafty-controller/crafty-4.git
synced 2024-08-30 18:23:09 +00:00
Fix visual file loading order. Fix zip imports where directories were not being copied
This commit is contained in:
parent
10d3afab58
commit
5d6ada23a4
@ -314,6 +314,7 @@ class Stats:
|
|||||||
|
|
||||||
# get our server object, settings and data dictionaries
|
# get our server object, settings and data dictionaries
|
||||||
server_obj = self.controller.get_server_obj(server_id)
|
server_obj = self.controller.get_server_obj(server_id)
|
||||||
|
if server_obj:
|
||||||
server_obj.reload_server_settings()
|
server_obj.reload_server_settings()
|
||||||
server_settings = self.controller.get_server_settings(server_id)
|
server_settings = self.controller.get_server_settings(server_id)
|
||||||
server_data = self.controller.get_server_data(server_id)
|
server_data = self.controller.get_server_data(server_id)
|
||||||
|
@ -652,8 +652,15 @@ class Helpers:
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def generate_tree(folder, output=""):
|
def generate_tree(folder, output=""):
|
||||||
|
dir_list = []
|
||||||
|
unsorted_files = []
|
||||||
file_list = os.listdir(folder)
|
file_list = os.listdir(folder)
|
||||||
file_list = sorted(file_list, key=str.casefold)
|
for item in file_list:
|
||||||
|
if os.path.isdir(os.path.join(folder, item)):
|
||||||
|
dir_list.append(item)
|
||||||
|
else:
|
||||||
|
unsorted_files.append(item)
|
||||||
|
file_list = sorted(dir_list, key=str.casefold) + sorted(unsorted_files, key=str.casefold)
|
||||||
for raw_filename in file_list:
|
for raw_filename in file_list:
|
||||||
filename = html.escape(raw_filename)
|
filename = html.escape(raw_filename)
|
||||||
rel = os.path.join(folder, raw_filename)
|
rel = os.path.join(folder, raw_filename)
|
||||||
@ -673,7 +680,7 @@ class Helpers:
|
|||||||
else:
|
else:
|
||||||
if filename != "crafty_managed.txt":
|
if filename != "crafty_managed.txt":
|
||||||
output += f"""<li
|
output += f"""<li
|
||||||
class="tree-item tree-ctx-item tree-file"
|
class="tree-nested d-block tree-ctx-item tree-file"
|
||||||
data-path="{dpath}"
|
data-path="{dpath}"
|
||||||
data-name="{filename}"
|
data-name="{filename}"
|
||||||
onclick="clickOnFile(event)"><span style="margin-right: 6px;"><i class="far fa-file"></i></span>{filename}</li>"""
|
onclick="clickOnFile(event)"><span style="margin-right: 6px;"><i class="far fa-file"></i></span>{filename}</li>"""
|
||||||
@ -681,8 +688,15 @@ class Helpers:
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def generate_dir(folder, output=""):
|
def generate_dir(folder, output=""):
|
||||||
|
dir_list = []
|
||||||
|
unsorted_files = []
|
||||||
file_list = os.listdir(folder)
|
file_list = os.listdir(folder)
|
||||||
file_list = sorted(file_list, key=str.casefold)
|
for item in file_list:
|
||||||
|
if os.path.isdir(os.path.join(folder, item)):
|
||||||
|
dir_list.append(item)
|
||||||
|
else:
|
||||||
|
unsorted_files.append(item)
|
||||||
|
file_list = sorted(dir_list, key=str.casefold) + sorted(unsorted_files, key=str.casefold)
|
||||||
output += \
|
output += \
|
||||||
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
||||||
|
|
||||||
@ -704,7 +718,7 @@ class Helpers:
|
|||||||
else:
|
else:
|
||||||
if filename != "crafty_managed.txt":
|
if filename != "crafty_managed.txt":
|
||||||
output += f"""<li
|
output += f"""<li
|
||||||
class="tree-item tree-ctx-item tree-file"
|
class="tree-nested d-block tree-ctx-item tree-file"
|
||||||
data-path="{dpath}"
|
data-path="{dpath}"
|
||||||
data-name="{filename}"
|
data-name="{filename}"
|
||||||
onclick="clickOnFile(event)"><span style="margin-right: 6px;"><i class="far fa-file"></i></span>{filename}</li>"""
|
onclick="clickOnFile(event)"><span style="margin-right: 6px;"><i class="far fa-file"></i></span>{filename}</li>"""
|
||||||
|
@ -374,7 +374,10 @@ class Controller:
|
|||||||
if str(item) == 'server.properties':
|
if str(item) == 'server.properties':
|
||||||
has_properties = True
|
has_properties = True
|
||||||
try:
|
try:
|
||||||
|
if not os.path.isdir(os.path.join(tempDir, item)):
|
||||||
file_helper.move_file(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
file_helper.move_file(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
||||||
|
else:
|
||||||
|
file_helper.move_dir(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
logger.error(f'ERROR IN ZIP IMPORT: {ex}')
|
logger.error(f'ERROR IN ZIP IMPORT: {ex}')
|
||||||
if not has_properties:
|
if not has_properties:
|
||||||
@ -457,12 +460,16 @@ class Controller:
|
|||||||
helper.ensure_dir_exists(new_server_dir)
|
helper.ensure_dir_exists(new_server_dir)
|
||||||
helper.ensure_dir_exists(backup_path)
|
helper.ensure_dir_exists(backup_path)
|
||||||
has_properties = False
|
has_properties = False
|
||||||
|
print(os.listdir(tempDir))
|
||||||
#extracts archive to temp directory
|
#extracts archive to temp directory
|
||||||
for item in os.listdir(tempDir):
|
for item in os.listdir(tempDir):
|
||||||
if str(item) == 'server.properties':
|
if str(item) == 'server.properties':
|
||||||
has_properties = True
|
has_properties = True
|
||||||
try:
|
try:
|
||||||
|
if not os.path.isdir(os.path.join(tempDir, item)):
|
||||||
file_helper.move_file(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
file_helper.move_file(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
||||||
|
else:
|
||||||
|
file_helper.move_dir(os.path.join(tempDir, item), os.path.join(new_server_dir, item))
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
logger.error(f'ERROR IN ZIP IMPORT: {ex}')
|
logger.error(f'ERROR IN ZIP IMPORT: {ex}')
|
||||||
if not has_properties:
|
if not has_properties:
|
||||||
|
@ -108,8 +108,15 @@ class AjaxHandler(BaseHandler):
|
|||||||
|
|
||||||
output = ""
|
output = ""
|
||||||
|
|
||||||
|
dir_list = []
|
||||||
|
unsorted_files = []
|
||||||
file_list = os.listdir(folder)
|
file_list = os.listdir(folder)
|
||||||
file_list = sorted(file_list, key=str.casefold)
|
for item in file_list:
|
||||||
|
if os.path.isdir(os.path.join(folder, item)):
|
||||||
|
dir_list.append(item)
|
||||||
|
else:
|
||||||
|
unsorted_files.append(item)
|
||||||
|
file_list = sorted(dir_list, key=str.casefold) + sorted(unsorted_files, key=str.casefold)
|
||||||
output += \
|
output += \
|
||||||
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
||||||
|
|
||||||
@ -133,7 +140,7 @@ class AjaxHandler(BaseHandler):
|
|||||||
|
|
||||||
else:
|
else:
|
||||||
output += f"""<li
|
output += f"""<li
|
||||||
class="tree-item tree-ctx-item tree-file"
|
class="tree-nested d-block tree-ctx-item tree-file"
|
||||||
data-path="{dpath}"
|
data-path="{dpath}"
|
||||||
data-name="{filename}"
|
data-name="{filename}"
|
||||||
onclick=""><input type='checkbox' class="checkBoxClass" name='root_path' value="{dpath}" checked><span style="margin-right: 6px;">
|
onclick=""><input type='checkbox' class="checkBoxClass" name='root_path' value="{dpath}" checked><span style="margin-right: 6px;">
|
||||||
@ -155,7 +162,7 @@ class AjaxHandler(BaseHandler):
|
|||||||
|
|
||||||
else:
|
else:
|
||||||
output += f"""<li
|
output += f"""<li
|
||||||
class="tree-item tree-ctx-item tree-file"
|
class="tree-nested d-block tree-ctx-item tree-file"
|
||||||
data-path="{dpath}"
|
data-path="{dpath}"
|
||||||
data-name="{filename}"
|
data-name="{filename}"
|
||||||
onclick=""><input type='checkbox' class="checkBoxClass" name='root_path' value="{dpath}">
|
onclick=""><input type='checkbox' class="checkBoxClass" name='root_path' value="{dpath}">
|
||||||
@ -169,8 +176,15 @@ class AjaxHandler(BaseHandler):
|
|||||||
folder = self.get_argument('path', None)
|
folder = self.get_argument('path', None)
|
||||||
output = ""
|
output = ""
|
||||||
|
|
||||||
|
dir_list = []
|
||||||
|
unsorted_files = []
|
||||||
file_list = os.listdir(folder)
|
file_list = os.listdir(folder)
|
||||||
file_list = sorted(file_list, key=str.casefold)
|
for item in file_list:
|
||||||
|
if os.path.isdir(os.path.join(folder, item)):
|
||||||
|
dir_list.append(item)
|
||||||
|
else:
|
||||||
|
unsorted_files.append(item)
|
||||||
|
file_list = sorted(dir_list, key=str.casefold) + sorted(unsorted_files, key=str.casefold)
|
||||||
output += \
|
output += \
|
||||||
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
f"""<ul class="tree-nested d-block" id="{folder}ul">"""\
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user