From a4da4371bfb3321a6e3729ccde96120f3da412c9 Mon Sep 17 00:00:00 2001 From: Michael Woods Date: Sat, 15 Feb 2025 19:48:44 -0500 Subject: [PATCH] Updated db module. --- src/packetserver/server/db.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/packetserver/server/db.py b/src/packetserver/server/db.py index 3e41c30..11b6f65 100644 --- a/src/packetserver/server/db.py +++ b/src/packetserver/server/db.py @@ -22,17 +22,20 @@ def get_user_db(username: str, db: ZODB.DB) -> dict: else: o.data = base64.b64encode(o.data.encode()).decode() udb['objects'][o] = db_conn.root.objects[o].to_dict() - for m in db_conn.root.messages[username]: - for a in m.attachments: - if type(a.data) is bytes: - a.data = base64.b64encode(a.data).decode() - else: - a.data = base64.b64encode(a.data.encode()).decode() - udb['messages'].append(m.to_dict()) + if user in db_conn.root.messages: + for m in db_conn.root.messages[username]: + for a in m.attachments: + if type(a.data) is bytes: + a.data = base64.b64encode(a.data).decode() + else: + a.data = base64.b64encode(a.data.encode()).decode() + udb['messages'].append(m.to_dict()) for b in db_conn.root.bulletins: udb['bulletins'].append(b.to_dict()) - # TODO pack jobs into output + if username in db_conn.root.user_jobs: + for jid in db_conn.root.user_jobs[username]: + udb['jobs'].append(db_conn.root.jobs[jid].to_dict(binary_safe=True)) return udb