From 8a74f495e702d1f4f57e51faaa66b9544c43b603 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Wed, 12 Jun 2024 10:32:57 +0530 Subject: [PATCH 1/2] fix: event meeting generation --- frappe-ui | 2 +- .../lms_certificate_request/lms_certificate_request.js | 10 ++++++++++ .../lms_certificate_request/lms_certificate_request.py | 5 +++-- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/frappe-ui b/frappe-ui index 38728b80..aa44431c 160000 --- a/frappe-ui +++ b/frappe-ui @@ -1 +1 @@ -Subproject commit 38728b80aaf0cf0a74b2f10e778363c9308c3a1e +Subproject commit aa44431c185b1e4563f2ebf6af380c7743d2cd4c diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.js b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.js index cb024880..65ed42db 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.js +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.js @@ -14,6 +14,16 @@ frappe.ui.form.on("LMS Certificate Request", { } ); } + if (!frm.google_meet_link) { + frm.add_custom_button(__("Generate Google Meet Link"), () => { + frappe.call({ + method: "lms.lms.doctype.lms_certificate_request.lms_certificate_request.setup_calendar_event", + args: { + eval: frm.doc, + }, + }); + }); + } }, onload: function (frm) { diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py index 2484ba24..94016b45 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py @@ -109,16 +109,17 @@ class LMSCertificateRequest(Document): def schedule_evals(): if frappe.db.get_single_value("LMS Settings", "send_calendar_invite_for_evaluations"): - one_hour_ago = add_to_date(get_datetime(), hours=-1) + timelapse = add_to_date(get_datetime(), hours=-5) evals = frappe.get_all( "LMS Certificate Request", - {"creation": [">=", one_hour_ago], "google_meet_link": ["is", "not set"]}, + {"creation": [">=", timelapse], "google_meet_link": ["is", "not set"]}, ["name", "member", "member_name", "evaluator", "date", "start_time", "end_time"], ) for eval in evals: setup_calendar_event(eval) +@frappe.whitelist() def setup_calendar_event(eval): calendar = frappe.db.get_value( "Google Calendar", {"user": eval.evaluator, "enable": 1}, "name" From 479ff037c61e09d66fd0cf5f50120e5e6d458db8 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Wed, 12 Jun 2024 10:42:47 +0530 Subject: [PATCH 2/2] fix: convert eval string to dict --- .../lms_certificate_request/lms_certificate_request.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py index 94016b45..4add3de3 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py @@ -15,6 +15,7 @@ from frappe.utils import ( get_time, ) from lms.lms.utils import get_evaluator +import json class LMSCertificateRequest(Document): @@ -121,6 +122,9 @@ def schedule_evals(): @frappe.whitelist() def setup_calendar_event(eval): + if isinstance(eval, str): + eval = frappe._dict(json.loads(eval)) + calendar = frappe.db.get_value( "Google Calendar", {"user": eval.evaluator, "enable": 1}, "name" )