refactor: auto fetch API key

This commit is contained in:
Shivam Mishra 2019-11-14 11:59:14 +05:30
parent 719119803f
commit ce2dc68308
2 changed files with 18 additions and 2 deletions

View file

@ -351,6 +351,12 @@ def capture_payment(is_sandbox=False, sanbox_response=None):
doc.error = frappe.get_traceback()
frappe.log_error(doc.error, '{0} Failed'.format(doc.name))
@frappe.whitelist(allow_guest=True)
def get_api_key():
controller = frappe.get_doc("Razorpay Settings")
return controller.api_key
@frappe.whitelist(allow_guest=True)
def get_order(doctype, docname):
# Order returned to be consumed by razorpay.js

View file

@ -63,6 +63,7 @@ frappe.require('https://checkout.razorpay.com/v1/checkout.js').then(() => {
init() {
frappe.run_serially([
() => this.getKey(),
() => this.makeOrder(),
() => this.prepareOptions(),
() => this.setupHandler(),
@ -78,9 +79,18 @@ frappe.require('https://checkout.razorpay.com/v1/checkout.js').then(() => {
razorpay.open();
}
getKey() {
return new Promise(resolve => {
frappe.call("frappe.integrations.doctype.razorpay_settings.razorpay_settings.get_api_key").then(res => {
this.key = res.message
resolve(true);
})
});
}
makeOrder() {
return new Promise(resolve => {
frappe.call( "frappe.integrations.doctype.razorpay_settings.razorpay_settings.get_order", {
frappe.call("frappe.integrations.doctype.razorpay_settings.razorpay_settings.get_order", {
doctype: this.doctype,
docname: this.docname
}).then(res => {
@ -91,7 +101,7 @@ frappe.require('https://checkout.razorpay.com/v1/checkout.js').then(() => {
}
orderSuccess(response) {
frappe.call( "frappe.integrations.doctype.razorpay_settings.razorpay_settings.order_payment_success", {
frappe.call("frappe.integrations.doctype.razorpay_settings.razorpay_settings.order_payment_success", {
integration_request: this.order.integration_request,
params: {
razorpay_payment_id: response.razorpay_payment_id,