Merge branch 'hotfix'

This commit is contained in:
Saurabh 2017-10-06 17:28:04 +05:30
commit 5cd9e167d8
6 changed files with 56 additions and 45 deletions

View file

@ -14,7 +14,7 @@ import os, sys, importlib, inspect, json
from .exceptions import *
from .utils.jinja import get_jenv, get_template, render_template, get_email_from_template
__version__ = '9.1.1'
__version__ = '9.1.2'
__title__ = "Frappe Framework"
local = Local()

View file

@ -83,13 +83,15 @@ class RazorpaySettings(Document):
frappe.throw(_("Please select another payment method. Razorpay does not support transactions in currency '{0}'").format(currency))
def get_payment_url(self, **kwargs):
return get_url("./integrations/razorpay_checkout?{0}".format(urlencode(kwargs)))
integration_request = create_request_log(kwargs, "Host", "Razorpay")
return get_url("./integrations/razorpay_checkout?token={0}".format(integration_request.name))
def create_request(self, data):
self.data = frappe._dict(data)
try:
self.integration_request = create_request_log(self.data, "Host", "Razorpay")
self.integration_request = frappe.get_doc("Integration Request", self.data.token)
self.integration_request.update_status(self.data, 'Queued')
return self.authorize_payment()
except Exception:

View file

@ -329,7 +329,8 @@ frappe.ui.form.Timeline = Class.extend({
if(c.subject && c.communication_type==="Communication") {
if(this.frm.doc.subject && !this.frm.doc.subject.includes(c.subject)) {
c.show_subject = true;
} else if(this.frm.meta.title_field && !!this.frm.doc[this.frm.meta.title_field].includes(c.subject)) {
} else if(this.frm.meta.title_field && this.frm.doc[this.frm.meta.title_field]
&& !!this.frm.doc[this.frm.meta.title_field].includes(c.subject)) {
c.show_subject = true;
} else if(!this.frm.doc.name.includes(c.subject)) {
c.show_subject = true;

View file

@ -6,7 +6,7 @@ $(document).ready(function(){
"name": "{{ title }}",
"description": "{{ description }}",
"handler": function (response){
razorpay.make_payment_log(response, options, "{{ reference_doctype }}", "{{ reference_docname }}");
razorpay.make_payment_log(response, options, "{{ reference_doctype }}", "{{ reference_docname }}", "{{ token }}");
},
"prefill": {
"name": "{{ payer_name }}",
@ -24,7 +24,7 @@ $(document).ready(function(){
frappe.provide('razorpay');
razorpay.make_payment_log = function(response, options, doctype, docname){
razorpay.make_payment_log = function(response, options, doctype, docname, token){
$('.razorpay-loading').addClass('hidden');
$('.razorpay-confirming').removeClass('hidden');
@ -36,7 +36,8 @@ razorpay.make_payment_log = function(response, options, doctype, docname){
"razorpay_payment_id": response.razorpay_payment_id,
"options": options,
"reference_doctype": doctype,
"reference_docname": docname
"reference_docname": docname,
"token": token
},
callback: function(r){
if (r.message && r.message.status == 200) {

View file

@ -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())):
for key in expected_keys:
context[key] = frappe.form_dict[key]
try:
doc = frappe.get_doc("Integration Request", frappe.form_dict['token'])
payment_details = json.loads(doc.data)
for key in expected_keys:
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)

View file

@ -13,6 +13,35 @@
"document_type": "Document",
"editable_grid": 0,
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "slideshow_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Slideshow Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
@ -44,35 +73,6 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "slideshow_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Slideshow Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
@ -147,7 +147,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 10,
"modified": "2017-09-18 11:19:31.627585",
"modified": "2017-10-05 18:56:20.094625",
"modified_by": "Administrator",
"module": "Website",
"name": "Website Slideshow",