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..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): @@ -109,17 +110,21 @@ 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): + if isinstance(eval, str): + eval = frappe._dict(json.loads(eval)) + calendar = frappe.db.get_value( "Google Calendar", {"user": eval.evaluator, "enable": 1}, "name" )