def set_privileges(username, level, sender): all_user_data = GetDB.get_all_user_data(get_memory_db().cursor()) user_names_list = [x[0] for x in all_user_data] if username in user_names_list: for user in all_user_data: if user[0] == username and username == sender: dprint( f"This user: [{username}] tried to modify their own user privileges. Modification denied.", origin=L_USER_PRIV) log(WARNING, f"This user: [{username}] tried to modify their own user privileges, the modification was denied.", origin=L_USER_PRIV) return False if user[0] == username and privileges_check(sender) <= user[1]: dprint( f"This user: [{sender['name']}] tried to modify privileges for a user with equal/higher privileges: [{username}]", origin=L_USER_PRIV) log(WARNING, f"This user: [{sender['name']}] tried to modify privileges for a user with equal/higher privileges: [{username}]", origin=L_USER_PRIV) return False if UpdateDB.update_user_privileges(db_conn=get_memory_db(), user_name=username, level=int(level)): return True return False
def remove_from_blacklist(username): all_user_data = GetDB.get_all_user_data(get_memory_db().cursor()) user_names_list = [x[0] for x in all_user_data] if username in user_names_list: for user in all_user_data: if user[0] == username and user[1] == Privileges.BLACKLIST.value: if UpdateDB.update_user_privileges(db_conn=get_memory_db(), user_name=username, level=int(Privileges.DEFAULT.value)): return True return False
def get_blacklist(): blklist_txt = f"<font color='{GS.cfg[C_PGUI_SETTINGS][P_TXT_HEAD_COL]}'>Blacklisted Users:</font>" counter = 0 all_user_data = GetDB.get_all_user_data(get_memory_db().cursor()) for i, user in enumerate(all_user_data): if int(user[1]) == int(Privileges.BLACKLIST.value): blklist_txt += f"<br><font color='{GS.cfg[C_PGUI_SETTINGS][P_TXT_IND_COL]}'>[{counter}]</font> - {user[0]}" counter += 1 if counter == 0: blklist_txt += " The blacklist is empty!" return blklist_txt
def add_to_blacklist(username): all_user_data = GetDB.get_all_user_data(get_memory_db().cursor()) user_names_list = [x[0] for x in all_user_data] if username in user_names_list: for user in all_user_data: if user[0] == username and user[1] == Privileges.BLACKLIST.value: rprint(f"The user: {username} is already in the blacklist.", origin=L_USER_PRIV) log(INFO, f"The user: {username} is already in the blacklist.", origin=L_USER_PRIV) return False if UpdateDB.update_user_privileges(db_conn=get_memory_db(), user_name=username, level=int(Privileges.BLACKLIST.value)): return True return False
def add_to_blacklist(username): all_user_data = GetDB.get_all_user_data(get_memory_db().cursor()) user_names_list = [x[0] for x in all_user_data] if username in user_names_list: for user in all_user_data: if user[0] == username and user[1] == Privileges.BLACKLIST.value: log(WARNING, f"Could not add the user: {username} to the blacklist since the user is already in the blacklist.", origin=L_USER_PRIV, error_type=GEN_PROCESS_WARN, print_mode=PrintMode.VERBOSE_PRINT.value) return False if UpdateDB.update_user_privileges(db_conn=get_memory_db(), user_name=username, level=int(Privileges.BLACKLIST.value)): return True return False
def get_all_privileges(): priv_text = f"<font color='{GS.cfg[C_PGUI_SETTINGS][P_TXT_HEAD_COL]}'>All User Privileges:</font>" for i, user in enumerate(GetDB.get_all_user_data(get_memory_db().cursor())): priv_text += f"<br><font color='{GS.cfg[C_PGUI_SETTINGS][P_TXT_IND_COL]}'>[{user[0]}]</font> - {user[1]}" return priv_text