From 0ce2878dcb63cdaf877a96345dbe4fa07e9959ea Mon Sep 17 00:00:00 2001
From: Martin Mares <mj@ucw.cz>
Date: Thu, 9 Apr 2020 15:34:13 +0200
Subject: [PATCH] fetch-meetings --user
---
TODO | 7 ++++---
hook/fetch-meetings.py | 14 ++++++++++++--
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/TODO b/TODO
index c56674a..93b7021 100644
--- a/TODO
+++ b/TODO
@@ -1,11 +1,12 @@
DB:
- Trigger na "last modified" u meetingů
- indexy
-- vazby: on delete cascade
Hook:
- Adjust number of workers
- Ztlumit logování
-- další hooky: create/delete user, start/end meeting, participants
+- další hooky: create/delete user
- přehlednější log
-- logování raw JSONů
+
+App:
+- ukončovat transakce
diff --git a/hook/fetch-meetings.py b/hook/fetch-meetings.py
index 873000a..9164346 100755
--- a/hook/fetch-meetings.py
+++ b/hook/fetch-meetings.py
@@ -133,7 +133,6 @@ def get_meetings(uid, user_id):
def fetch_all():
- db.execute('DELETE FROM zoom_schedule')
db.execute('DELETE FROM zoom_meetings')
db.execute("SELECT * FROM zoom_users")
@@ -144,6 +143,17 @@ def fetch_all():
db_conn.commit()
+def fetch_user(user_email):
+ db.execute("SELECT * FROM zoom_users WHERE email=%s", (user_email,))
+ u = db.fetchone()
+ if not u:
+ die("No such user.")
+
+ db.execute('DELETE FROM zoom_meetings WHERE host_uid=%s', (u.uid,))
+ get_meetings(u.uid, u.user_id)
+ db_conn.commit()
+
+
def fetch_single(user_email, meeting_id):
db.execute("SELECT * FROM zoom_meetings WHERE meeting_id=%s", (meeting_id,))
meeting_row = db.fetchone()
@@ -189,6 +199,6 @@ if args.all:
elif args.meeting is not None:
fetch_single(args.user, args.meeting)
elif args.user is not None:
- raise NotImplementedError
+ fetch_user(args.user)
else:
print("Nothing to do.")
--
GitLab