Fix user permissions issue

This commit is contained in:
amcmanu3 2022-06-06 17:04:45 -04:00
parent 2696c8eb65
commit d7606f4cc6
2 changed files with 22 additions and 10 deletions

View File

@ -139,15 +139,23 @@ class PermissionsCrafty:
): ):
# http://docs.peewee-orm.com/en/latest/peewee/querying.html#upsert # http://docs.peewee-orm.com/en/latest/peewee/querying.html#upsert
UserCrafty.replace( try:
{ user_crafty = UserCrafty.select().where(UserCrafty.user_id == user_id).get()
UserCrafty.user_id: user_id, user_crafty.permissions = permissions_mask
UserCrafty.permissions: permissions_mask, user_crafty.limit_server_creation = limit_server_creation
UserCrafty.limit_server_creation: limit_server_creation, user_crafty.limit_user_creation = limit_user_creation
UserCrafty.limit_user_creation: limit_user_creation, user_crafty.limit_role_creation = limit_role_creation
UserCrafty.limit_role_creation: limit_role_creation, UserCrafty.save(user_crafty)
} except:
).execute() UserCrafty.insert(
{
UserCrafty.user_id: user_id,
UserCrafty.permissions: permissions_mask,
UserCrafty.limit_server_creation: limit_server_creation,
UserCrafty.limit_user_creation: limit_user_creation,
UserCrafty.limit_role_creation: limit_role_creation,
}
).execute()
@staticmethod @staticmethod
def get_created_quantity_list(user_id): def get_created_quantity_list(user_id):

View File

@ -1,6 +1,7 @@
from contextlib import redirect_stderr from contextlib import redirect_stderr
import os import os
import re import re
import shutil
import time import time
import datetime import datetime
import base64 import base64
@ -842,7 +843,10 @@ class ServerInstance:
args=[temp_dir + "/", backup_filename + ".zip"], args=[temp_dir + "/", backup_filename + ".zip"],
) )
# pylint: disable=unexpected-keyword-arg # pylint: disable=unexpected-keyword-arg
FileHelpers.copy_dir(self.server_path, temp_dir, dirs_exist_ok=True) try:
FileHelpers.copy_dir(self.server_path, temp_dir, dirs_exist_ok=True)
except shutil.Error as e:
logger.error(f"Failed to fully complete backup due to shutil error {e}")
excluded_dirs = HelpersManagement.get_excluded_backup_dirs(self.server_id) excluded_dirs = HelpersManagement.get_excluded_backup_dirs(self.server_id)
server_dir = Helpers.get_os_understandable_path(self.settings["path"]) server_dir = Helpers.get_os_understandable_path(self.settings["path"])