瀏覽代碼

Merge branch 'hotfix'

version-14
Saurabh 7 年之前
父節點
當前提交
5cd9e167d8
共有 6 個檔案被更改,包括 38 行新增27 行删除
  1. +1
    -1
      frappe/__init__.py
  2. +4
    -2
      frappe/integrations/doctype/razorpay_settings/razorpay_settings.py
  3. +2
    -1
      frappe/public/js/frappe/form/footer/timeline.js
  4. +4
    -3
      frappe/templates/includes/integrations/razorpay_checkout.js
  5. +14
    -7
      frappe/templates/pages/integrations/razorpay_checkout.py
  6. +13
    -13
      frappe/website/doctype/website_slideshow/website_slideshow.json

+ 1
- 1
frappe/__init__.py 查看文件

@@ -14,7 +14,7 @@ import os, sys, importlib, inspect, json
from .exceptions import * from .exceptions import *
from .utils.jinja import get_jenv, get_template, render_template, get_email_from_template 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" __title__ = "Frappe Framework"


local = Local() local = Local()


+ 4
- 2
frappe/integrations/doctype/razorpay_settings/razorpay_settings.py 查看文件

@@ -83,13 +83,15 @@ class RazorpaySettings(Document):
frappe.throw(_("Please select another payment method. Razorpay does not support transactions in currency '{0}'").format(currency)) frappe.throw(_("Please select another payment method. Razorpay does not support transactions in currency '{0}'").format(currency))


def get_payment_url(self, **kwargs): 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): def create_request(self, data):
self.data = frappe._dict(data) self.data = frappe._dict(data)


try: 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() return self.authorize_payment()


except Exception: except Exception:


+ 2
- 1
frappe/public/js/frappe/form/footer/timeline.js 查看文件

@@ -329,7 +329,8 @@ frappe.ui.form.Timeline = Class.extend({
if(c.subject && c.communication_type==="Communication") { if(c.subject && c.communication_type==="Communication") {
if(this.frm.doc.subject && !this.frm.doc.subject.includes(c.subject)) { if(this.frm.doc.subject && !this.frm.doc.subject.includes(c.subject)) {
c.show_subject = true; 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; c.show_subject = true;
} else if(!this.frm.doc.name.includes(c.subject)) { } else if(!this.frm.doc.name.includes(c.subject)) {
c.show_subject = true; c.show_subject = true;


+ 4
- 3
frappe/templates/includes/integrations/razorpay_checkout.js 查看文件

@@ -6,7 +6,7 @@ $(document).ready(function(){
"name": "{{ title }}", "name": "{{ title }}",
"description": "{{ description }}", "description": "{{ description }}",
"handler": function (response){ "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": { "prefill": {
"name": "{{ payer_name }}", "name": "{{ payer_name }}",
@@ -24,7 +24,7 @@ $(document).ready(function(){


frappe.provide('razorpay'); 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-loading').addClass('hidden');
$('.razorpay-confirming').removeClass('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, "razorpay_payment_id": response.razorpay_payment_id,
"options": options, "options": options,
"reference_doctype": doctype, "reference_doctype": doctype,
"reference_docname": docname
"reference_docname": docname,
"token": token
}, },
callback: function(r){ callback: function(r){
if (r.message && r.message.status == 200) { if (r.message && r.message.status == 200) {


+ 14
- 7
frappe/templates/pages/integrations/razorpay_checkout.py 查看文件

@@ -17,15 +17,21 @@ def get_context(context):
context.no_cache = 1 context.no_cache = 1
context.api_key = get_api_key() 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: 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']) 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 frappe.local.flags.redirect_location = frappe.local.response.location
raise frappe.Redirect raise frappe.Redirect


@@ -37,7 +43,7 @@ def get_api_key():
return api_key return api_key


@frappe.whitelist(allow_guest=True) @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 = {} data = {}


if isinstance(options, string_types): if isinstance(options, string_types):
@@ -46,7 +52,8 @@ def make_payment(razorpay_payment_id, options, reference_doctype, reference_docn
data.update({ data.update({
"razorpay_payment_id": razorpay_payment_id, "razorpay_payment_id": razorpay_payment_id,
"reference_docname": reference_docname, "reference_docname": reference_docname,
"reference_doctype": reference_doctype
"reference_doctype": reference_doctype,
"token": token
}) })


data = frappe.get_doc("Razorpay Settings").create_request(data) data = frappe.get_doc("Razorpay Settings").create_request(data)


+ 13
- 13
frappe/website/doctype/website_slideshow/website_slideshow.json 查看文件

@@ -19,18 +19,16 @@
"bold": 0, "bold": 0,
"collapsible": 0, "collapsible": 0,
"columns": 0, "columns": 0,
"depends_on": "eval:!doc.__islocal",
"description": "Note: For best results, images must be of the same size and width must be greater than height.",
"fieldname": "sb0",
"fieldtype": "Section Break",
"fieldname": "slideshow_name",
"fieldtype": "Data",
"hidden": 0, "hidden": 0,
"ignore_user_permissions": 0, "ignore_user_permissions": 0,
"ignore_xss_filter": 0, "ignore_xss_filter": 0,
"in_filter": 0, "in_filter": 0,
"in_global_search": 0, "in_global_search": 0,
"in_list_view": 0,
"in_list_view": 1,
"in_standard_filter": 0, "in_standard_filter": 0,
"label": "",
"label": "Slideshow Name",
"length": 0, "length": 0,
"no_copy": 0, "no_copy": 0,
"permlevel": 0, "permlevel": 0,
@@ -39,7 +37,7 @@
"read_only": 0, "read_only": 0,
"remember_last_selected_value": 0, "remember_last_selected_value": 0,
"report_hide": 0, "report_hide": 0,
"reqd": 0,
"reqd": 1,
"search_index": 0, "search_index": 0,
"set_only_once": 0, "set_only_once": 0,
"unique": 0 "unique": 0
@@ -50,16 +48,18 @@
"bold": 0, "bold": 0,
"collapsible": 0, "collapsible": 0,
"columns": 0, "columns": 0,
"fieldname": "slideshow_name",
"fieldtype": "Data",
"depends_on": "eval:!doc.__islocal",
"description": "Note: For best results, images must be of the same size and width must be greater than height.",
"fieldname": "sb0",
"fieldtype": "Section Break",
"hidden": 0, "hidden": 0,
"ignore_user_permissions": 0, "ignore_user_permissions": 0,
"ignore_xss_filter": 0, "ignore_xss_filter": 0,
"in_filter": 0, "in_filter": 0,
"in_global_search": 0, "in_global_search": 0,
"in_list_view": 1,
"in_list_view": 0,
"in_standard_filter": 0, "in_standard_filter": 0,
"label": "Slideshow Name",
"label": "",
"length": 0, "length": 0,
"no_copy": 0, "no_copy": 0,
"permlevel": 0, "permlevel": 0,
@@ -68,7 +68,7 @@
"read_only": 0, "read_only": 0,
"remember_last_selected_value": 0, "remember_last_selected_value": 0,
"report_hide": 0, "report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0, "search_index": 0,
"set_only_once": 0, "set_only_once": 0,
"unique": 0 "unique": 0
@@ -147,7 +147,7 @@
"issingle": 0, "issingle": 0,
"istable": 0, "istable": 0,
"max_attachments": 10, "max_attachments": 10,
"modified": "2017-09-18 11:19:31.627585",
"modified": "2017-10-05 18:56:20.094625",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Website", "module": "Website",
"name": "Website Slideshow", "name": "Website Slideshow",


Loading…
取消
儲存