|
|
@@ -17,15 +17,21 @@ def get_context(context): |
|
|
|
context.no_cache = 1 |
|
|
|
context.api_key = get_api_key() |
|
|
|
|
|
|
|
# all these keys exist in form_dict |
|
|
|
if not (set(expected_keys) - set(frappe.form_dict.keys())): |
|
|
|
try: |
|
|
|
doc = frappe.get_doc("Integration Request", frappe.form_dict['token']) |
|
|
|
payment_details = json.loads(doc.data) |
|
|
|
|
|
|
|
for key in expected_keys: |
|
|
|
context[key] = frappe.form_dict[key] |
|
|
|
context[key] = payment_details[key] |
|
|
|
|
|
|
|
context['token'] = frappe.form_dict['token'] |
|
|
|
context['amount'] = flt(context['amount']) |
|
|
|
|
|
|
|
else: |
|
|
|
frappe.redirect_to_message(_('Some information is missing'), _('Looks like someone sent you to an incomplete URL. Please ask them to look into it.')) |
|
|
|
except Exception: |
|
|
|
frappe.redirect_to_message(_('Invalid Token'), |
|
|
|
_('Seems token you are using is invalid!'), |
|
|
|
http_status_code=400, indicator_color='red') |
|
|
|
|
|
|
|
frappe.local.flags.redirect_location = frappe.local.response.location |
|
|
|
raise frappe.Redirect |
|
|
|
|
|
|
@@ -37,7 +43,7 @@ def get_api_key(): |
|
|
|
return api_key |
|
|
|
|
|
|
|
@frappe.whitelist(allow_guest=True) |
|
|
|
def make_payment(razorpay_payment_id, options, reference_doctype, reference_docname): |
|
|
|
def make_payment(razorpay_payment_id, options, reference_doctype, reference_docname, token): |
|
|
|
data = {} |
|
|
|
|
|
|
|
if isinstance(options, string_types): |
|
|
@@ -46,7 +52,8 @@ def make_payment(razorpay_payment_id, options, reference_doctype, reference_docn |
|
|
|
data.update({ |
|
|
|
"razorpay_payment_id": razorpay_payment_id, |
|
|
|
"reference_docname": reference_docname, |
|
|
|
"reference_doctype": reference_doctype |
|
|
|
"reference_doctype": reference_doctype, |
|
|
|
"token": token |
|
|
|
}) |
|
|
|
|
|
|
|
data = frappe.get_doc("Razorpay Settings").create_request(data) |
|
|
|