From d8f990ac8ead7f33a5160b901ebdd0af7c43da41 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Mon, 30 Jun 2025 18:43:19 +0530 Subject: [PATCH] fix: added on before create hook in call log modal (cherry picked from commit ac13b7a3bd58021a91793817f07b4703bd8f42b4) --- .../src/components/Modals/CallLogModal.vue | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/frontend/src/components/Modals/CallLogModal.vue b/frontend/src/components/Modals/CallLogModal.vue index 8ab881cd..9b1cbcb0 100644 --- a/frontend/src/components/Modals/CallLogModal.vue +++ b/frontend/src/components/Modals/CallLogModal.vue @@ -85,7 +85,7 @@ const loading = ref(false) const error = ref(null) const editMode = ref(false) -const { document: callLog } = useDocument( +const { document: callLog, triggerOnBeforeCreate } = useDocument( 'CRM Call Log', props.data?.name || '', ) @@ -97,8 +97,7 @@ const dialogOptions = computed(() => { { label: editMode.value ? __('Save') : __('Create'), variant: 'solid', - onClick: () => - editMode.value ? updateCallLog() : createCallLog.submit(), + onClick: () => (editMode.value ? updateCallLog() : createCallLog()), }, ] @@ -135,18 +134,21 @@ async function updateCallLog() { await callLog.save.submit(null, callBacks) } -const createCallLog = createResource({ +async function createCallLog() { + Object.assign(callLog.doc, { + doctype: 'CRM Call Log', + id: getRandom(6), + telephony_medium: 'Manual', + }) + + await triggerOnBeforeCreate?.() + await _createCallLog.submit({ + doc: callLog.doc, + }) +} + +const _createCallLog = createResource({ url: 'frappe.client.insert', - makeParams() { - return { - doc: { - doctype: 'CRM Call Log', - id: getRandom(6), - telephony_medium: 'Manual', - ...callLog.doc, - }, - } - }, onSuccess(doc) { loading.value = false if (doc.name) {