diff --git a/foundation/erpnext_foundation/web_form/memberships/memberships.js b/foundation/erpnext_foundation/web_form/memberships/memberships.js index 6dae9b72..d2bcc3f6 100644 --- a/foundation/erpnext_foundation/web_form/memberships/memberships.js +++ b/foundation/erpnext_foundation/web_form/memberships/memberships.js @@ -1,46 +1,46 @@ frappe.ready(function() { - setTimeout(() => { - // bind events here - form = frappe.web_form.fields_dict; + // bind events here + form = frappe.web_form.fields_dict; - // $(".page-header-actions-block .btn-primary, .page-header-actions-block .btn-default").addClass('hidden'); - // $(".text-right .btn-primary").addClass('hidden'); + // $(".page-header-actions-block .btn-primary, .page-header-actions-block .btn-default").addClass('hidden'); + // $(".text-right .btn-primary").addClass('hidden'); - var set_amount = function() { - var membership_type = $('input[data-fieldname="membership_type"]').val(); - amount = { - 'Gold': 300000, - 'Silver': 100000, - 'Individual': 10000 - } - form.amount.set_input(amount[membership_type]); + frappe._set_values = function() { + let from_date = get_date(); + let to_date = get_date(1); + + form.from_date.set_input(from_date); + form.to_date.set_input(to_date); + + let membership_type = $('input[data-fieldname="membership_type"]').val(); + amount = { + 'Gold': 300000, + 'Silver': 100000, + 'Individual': 10000 } + form.amount.set_input(amount[membership_type]); + } - var get_date = (add_year = 0) => { - const today = new Date(); - const year = today.getFullYear() + add_year; - const month = ((today.getMonth() + 1) + '').padStart(2, '0'); - const day = today.getDate(); - return year + '-' + month + '-' + day; - } + var get_date = (add_year = 0) => { + const today = new Date(); + const year = today.getFullYear() + add_year; + const month = ((today.getMonth() + 1) + '').padStart(2, '0'); + const day = today.getDate(); + return year + '-' + month + '-' + day; + } + frappe.web_form.events.on('after_load', () => { + form.currency.set_input('INR'); if(frappe.utils.get_url_arg('name')) { $('input[data-fieldname="membership_type"]').prop('disabled', true); $('input[data-fieldname="currency"]').prop('disabled', true); $('.page-content .btn-form-submit').addClass('hidden'); } else { - const from_date = get_date(); - const to_date = get_date(1); - - form.from_date.set_input(from_date); - form.to_date.set_input(to_date); - $('input[data-fieldname="membership_type"]').on('change', function() { - set_amount(); - }); - - form.currency.set_input('INR'); - set_amount(); + form.membership_type.$input.on('change', () => frappe._set_values()); + form.membership_type.$input.on('focusout', () => frappe._set_values()); + frappe._set_values(); } - }, 1000); -}) + }) + frappe.web_form.validate = () => frappe._set_values(); +}) diff --git a/foundation/erpnext_foundation/web_form/memberships_usd/memberships_usd.js b/foundation/erpnext_foundation/web_form/memberships_usd/memberships_usd.js index 075f460c..40a6eb03 100644 --- a/foundation/erpnext_foundation/web_form/memberships_usd/memberships_usd.js +++ b/foundation/erpnext_foundation/web_form/memberships_usd/memberships_usd.js @@ -1,48 +1,46 @@ frappe.ready(function() { - setTimeout(() => { - // bind events here - form = frappe.web_form.fields_dict; + // bind events here + form = frappe.web_form.fields_dict; - // $(".page-header-actions-block .btn-primary, .page-header-actions-block .btn-default").addClass('hidden'); - // $(".text-right .btn-primary").addClass('hidden'); + // $(".page-header-actions-block .btn-primary, .page-header-actions-block .btn-default").addClass('hidden'); + // $(".text-right .btn-primary").addClass('hidden'); - var set_amount = function() { - var membership_type = $('input[data-fieldname="membership_type"]').val(); + frappe._set_values = function() { + let from_date = get_date(); + let to_date = get_date(1); - amount = { - 'Gold': 5000, - 'Silver': 1500, - 'Individual': 200 - } + form.from_date.set_input(from_date); + form.to_date.set_input(to_date); - form.amount.set_input(amount[membership_type]); + let membership_type = $('input[data-fieldname="membership_type"]').val(); + amount = { + 'Gold': 5000, + 'Silver': 1500, + 'Individual': 200 } + form.amount.set_input(amount[membership_type]); + } - var get_date = (add_year = 0) => { - const today = new Date(); - const year = today.getFullYear() + add_year; - const month = ((today.getMonth() + 1) + '').padStart(2, '0'); - const day = today.getDate(); - return year + '-' + month + '-' + day; - } + var get_date = (add_year = 0) => { + const today = new Date(); + const year = today.getFullYear() + add_year; + const month = ((today.getMonth() + 1) + '').padStart(2, '0'); + const day = today.getDate(); + return year + '-' + month + '-' + day; + } + frappe.web_form.events.on('after_load', () => { + form.currency.set_input('USD'); if(frappe.utils.get_url_arg('name')) { $('input[data-fieldname="membership_type"]').prop('disabled', true); $('input[data-fieldname="currency"]').prop('disabled', true); $('.page-content .btn-form-submit').addClass('hidden'); } else { - const from_date = get_date(); - const to_date = get_date(1); - - form.from_date.set_input(from_date); - form.to_date.set_input(to_date); - $('input[data-fieldname="membership_type"]').on('change', function() { - set_amount(); - }); - - form.currency.set_input('USD'); - set_amount(); + form.membership_type.$input.on('change', () => frappe._set_values()); + form.membership_type.$input.on('focusout', () => frappe._set_values()); + frappe._set_values(); } + }) - }, 1000); + frappe.web_form.validate = () => frappe._set_values(); })