浏览代码

Merge branch 'develop' into staging

version-14
Nabin Hait 7 年前
父节点
当前提交
f60967f851
共有 4 个文件被更改,包括 37 次插入5 次删除
  1. +2
    -2
      frappe/core/doctype/user_permission/user_permission.json
  2. +23
    -1
      frappe/public/js/frappe/form/controls/barcode.js
  3. +7
    -1
      frappe/tests/ui/test_control_html.js
  4. +5
    -1
      frappe/utils/data.py

+ 2
- 2
frappe/core/doctype/user_permission/user_permission.json 查看文件

@@ -1,7 +1,7 @@
{ {
"allow_copy": 0, "allow_copy": 0,
"allow_guest_to_view": 0, "allow_guest_to_view": 0,
"allow_import": 0,
"allow_import": 1,
"allow_rename": 0, "allow_rename": 0,
"beta": 0, "beta": 0,
"creation": "2017-07-17 14:25:27.881871", "creation": "2017-07-17 14:25:27.881871",
@@ -148,7 +148,7 @@
"issingle": 0, "issingle": 0,
"istable": 0, "istable": 0,
"max_attachments": 0, "max_attachments": 0,
"modified": "2017-07-27 22:55:58.647315",
"modified": "2017-10-24 13:25:33.258794",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Core", "module": "Core",
"name": "User Permission", "name": "User Permission",


+ 23
- 1
frappe/public/js/frappe/form/controls/barcode.js 查看文件

@@ -27,8 +27,30 @@ frappe.ui.form.ControlBarcode = frappe.ui.form.ControlData.extend({
get_barcode_html(value) { get_barcode_html(value) {
// Get svg // Get svg
const svg = this.barcode_area.find('svg')[0]; const svg = this.barcode_area.find('svg')[0];
JsBarcode(svg, value, {height: 40});
JsBarcode(svg, value, this.get_options(value));
$(svg).attr('data-barcode-value', value); $(svg).attr('data-barcode-value', value);
return this.barcode_area.html(); return this.barcode_area.html();
},

get_options(value) {
// get JsBarcode options
let options = JSON.parse('{ "height" : 40 }');
if (this.isValidJson(this.df.options)) {
options = JSON.parse(this.df.options);
if (options.format && options.format === "EAN") {
options.format = value.length == 8 ? "EAN8" : "EAN13";
}
}
return options;
},

isValidJson(jsonData) {
try {
JSON.parse(jsonData);
return true;
} catch (e) {
return false;
}
} }

}); });

+ 7
- 1
frappe/tests/ui/test_control_html.js 查看文件

@@ -20,7 +20,7 @@ QUnit.test("Test ControlHTML", function(assert) {
{dt: 'ToDo'}, {dt: 'ToDo'},
{fieldtype: 'HTML'}, {fieldtype: 'HTML'},
{label: random_name + "_template"}, {label: random_name + "_template"},
{options: '<h3> Test {%= doc.status %} </h3>'}
{options: '<h3> Test {{ doc.status }} </h3>'}
]); ]);
}, },
() => frappe.set_route('List', 'ToDo'), () => frappe.set_route('List', 'ToDo'),
@@ -34,16 +34,22 @@ QUnit.test("Test ControlHTML", function(assert) {
}, },
() => { () => {
const control = $(`.frappe-control[data-fieldname="${random_name}"]`)[0]; const control = $(`.frappe-control[data-fieldname="${random_name}"]`)[0];

return assert.ok(control.innerHTML === '<h3> Test </h3>'); return assert.ok(control.innerHTML === '<h3> Test </h3>');
}, },
() => { () => {
const control = $(`.frappe-control[data-fieldname="${random_name}_template"]`)[0]; const control = $(`.frappe-control[data-fieldname="${random_name}_template"]`)[0];
// refresh input must be called independently
cur_frm.get_field(`${random_name}_template`).refresh_input();

return assert.ok(control.innerHTML === '<h3> Test Open </h3>'); return assert.ok(control.innerHTML === '<h3> Test Open </h3>');
}, },
() => frappe.tests.set_control("status", "Closed"), () => frappe.tests.set_control("status", "Closed"),
() => frappe.timeout(1), () => frappe.timeout(1),
() => { () => {
const control = $(`.frappe-control[data-fieldname="${random_name}_template"]`)[0]; const control = $(`.frappe-control[data-fieldname="${random_name}_template"]`)[0];
// refresh input must be called independently
cur_frm.get_field(`${random_name}_template`).refresh_input();
return assert.ok(control.innerHTML === '<h3> Test Closed </h3>'); return assert.ok(control.innerHTML === '<h3> Test Closed </h3>');
}, },
() => done() () => done()


+ 5
- 1
frappe/utils/data.py 查看文件

@@ -218,7 +218,11 @@ def formatdate(string_date=None, format_string=None):
* mm-dd-yyyy * mm-dd-yyyy
* dd/mm/yyyy * dd/mm/yyyy
""" """
date = getdate(string_date) if string_date else now_datetime().date()

if not string_date:
return ''

date = getdate(string_date)
if not format_string: if not format_string:
format_string = get_user_format().replace("mm", "MM") format_string = get_user_format().replace("mm", "MM")




正在加载...
取消
保存