From f8962d0636c6ed72298bdcec8ab1d11b3473317a Mon Sep 17 00:00:00 2001 From: jojorne Date: Thu, 22 Jun 2023 18:04:43 -0300 Subject: [PATCH] Fix WI for UI1 --- aiserver.py | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/aiserver.py b/aiserver.py index 4079e561..a457ce58 100644 --- a/aiserver.py +++ b/aiserver.py @@ -2560,7 +2560,7 @@ def execute_outmod(): # Event triggered when browser SocketIO is loaded and connects to server #==================================================================# @socketio.on('connect') -def do_connect(): +def do_connect(_): print("Connection Attempt: " + request.remote_addr) if allowed_ips: print("Allowed?: ", request.remote_addr in allowed_ips) @@ -4279,7 +4279,7 @@ def togglewimode(): # #==================================================================# def addwiitem(folder_uid=None): - assert folder_uid is None or folder_uid in koboldai_vars.wifolders_d + assert folder_uid is None or str(folder_uid) in koboldai_vars.wifolders_d ob = {"key": "", "keysecondary": "", "content": "", "comment": "", "folder": folder_uid, "num": len(koboldai_vars.worldinfo), "init": False, "selective": False, "constant": False} koboldai_vars.worldinfo.append(ob) while(True): @@ -4289,7 +4289,7 @@ def addwiitem(folder_uid=None): koboldai_vars.worldinfo_u[uid] = koboldai_vars.worldinfo[-1] koboldai_vars.worldinfo[-1]["uid"] = uid if(folder_uid is not None): - koboldai_vars.wifolders_u[folder_uid].append(koboldai_vars.worldinfo[-1]) + koboldai_vars.wifolders_u[str(folder_uid)].append(koboldai_vars.worldinfo[-1]) emit('from_server', {'cmd': 'addwiitem', 'data': ob}, broadcast=True, room="UI_1") #==================================================================# @@ -4313,19 +4313,20 @@ def addwifolder(): #==================================================================# def movewiitem(dst, src): setgamesaved(False) - if(koboldai_vars.worldinfo_u[src]["folder"] is not None): - for i, e in enumerate(koboldai_vars.wifolders_u[koboldai_vars.worldinfo_u[src]["folder"]]): - if(e is koboldai_vars.worldinfo_u[src]): - koboldai_vars.wifolders_u[koboldai_vars.worldinfo_u[src]["folder"]].pop(i) + if(koboldai_vars.worldinfo_u[str(src)]["folder"] is not None): + for i, e in enumerate(koboldai_vars.wifolders_u[str(koboldai_vars.worldinfo_u[str(src)]["folder"])]): + if(e == koboldai_vars.worldinfo_u[str(src)]): + koboldai_vars.wifolders_u[str(koboldai_vars.worldinfo_u[str(src)]["folder"])].pop(i) break - if(koboldai_vars.worldinfo_u[dst]["folder"] is not None): - koboldai_vars.wifolders_u[koboldai_vars.worldinfo_u[dst]["folder"]].append(koboldai_vars.worldinfo_u[src]) - koboldai_vars.worldinfo_u[src]["folder"] = koboldai_vars.worldinfo_u[dst]["folder"] + if(koboldai_vars.worldinfo_u[str(dst)]["folder"] is not None): + koboldai_vars.wifolders_u[str(koboldai_vars.worldinfo_u[str(dst)]["folder"])].append(koboldai_vars.worldinfo_u[str(src)]) + koboldai_vars.worldinfo_u[str(src)]["folder"] = koboldai_vars.worldinfo_u[str(dst)]["folder"] for i, e in enumerate(koboldai_vars.worldinfo): - if(e is koboldai_vars.worldinfo_u[src]): + if(e["uid"] == koboldai_vars.worldinfo_u[str(src)]["uid"]): _src = i - elif(e is koboldai_vars.worldinfo_u[dst]): + elif(e["uid"] == koboldai_vars.worldinfo_u[str(dst)]["uid"]): _dst = i + koboldai_vars.worldinfo[_src]["folder"] = koboldai_vars.worldinfo[_dst]["folder"] koboldai_vars.worldinfo.insert(_dst - (_dst >= _src), koboldai_vars.worldinfo.pop(_src)) sendwi() @@ -4335,12 +4336,12 @@ def movewiitem(dst, src): #==================================================================# def movewifolder(dst, src): setgamesaved(False) - koboldai_vars.wifolders_l.remove(src) + koboldai_vars.wifolders_l.remove(str(src)) if(dst is None): # If dst is None, that means we should move src to be the last folder - koboldai_vars.wifolders_l.append(src) + koboldai_vars.wifolders_l.append(str(src)) else: - koboldai_vars.wifolders_l.insert(koboldai_vars.wifolders_l.index(dst), src) + koboldai_vars.wifolders_l.insert(koboldai_vars.wifolders_l.index(str(dst)), str(src)) sendwi() #==================================================================# @@ -4388,7 +4389,7 @@ def requestwi(): #==================================================================# def stablesortwi(): mapping = {uid: index for index, uid in enumerate(koboldai_vars.wifolders_l)} - koboldai_vars.worldinfo.sort(key=lambda x: mapping[x["folder"]] if x["folder"] is not None else float("inf")) + koboldai_vars.worldinfo.sort(key=lambda x: mapping[str(x["folder"])] if x["folder"] is not None else float("inf")) last_folder = ... last_wi = None for i, wi in enumerate(koboldai_vars.worldinfo): @@ -4432,9 +4433,9 @@ def deletewi(uid): koboldai_vars.deletewi = uid if(koboldai_vars.deletewi is not None): if(koboldai_vars.worldinfo_u[koboldai_vars.deletewi]["folder"] is not None): - for i, e in enumerate(koboldai_vars.wifolders_u[koboldai_vars.worldinfo_u[koboldai_vars.deletewi]["folder"]]): + for i, e in enumerate(koboldai_vars.wifolders_u[str(koboldai_vars.worldinfo_u[koboldai_vars.deletewi]["folder"])]): if(e is koboldai_vars.worldinfo_u[koboldai_vars.deletewi]): - koboldai_vars.wifolders_u[koboldai_vars.worldinfo_u[koboldai_vars.deletewi]["folder"]].pop(i) + koboldai_vars.wifolders_u[str(koboldai_vars.worldinfo_u[koboldai_vars.deletewi]["folder"])].pop(i) for i, e in enumerate(koboldai_vars.worldinfo): if(e is koboldai_vars.worldinfo_u[koboldai_vars.deletewi]): del koboldai_vars.worldinfo[i] @@ -4455,12 +4456,12 @@ def deletewifolder(uid): del koboldai_vars.wifolders_l[koboldai_vars.wifolders_l.index(uid)] setgamesaved(False) # Delete uninitialized entries in the folder we're going to delete - koboldai_vars.worldinfo = [wi for wi in koboldai_vars.worldinfo if wi["folder"] != uid or wi["init"]] + koboldai_vars.worldinfo = [wi for wi in koboldai_vars.worldinfo if str(wi["folder"]) != uid or wi["init"]] koboldai_vars.worldinfo_i = [wi for wi in koboldai_vars.worldinfo if wi["init"]] # Move WI entries that are inside of the folder we're going to delete # so that they're outside of all folders for wi in koboldai_vars.worldinfo: - if(wi["folder"] == uid): + if(str(wi["folder"]) == uid): wi["folder"] = None sendwi()