Skip to content

Commit e92a83b

Browse files
committed
Fix dates not always being shown on old-code screens
Fixes ledgersmb#9302
1 parent 12c0d43 commit e92a83b

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

UI/src/elements/lsmb-date.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
/** @format */
2+
/* global lsmbConfig */
23

34
import { LsmbBaseInput } from "@/elements/lsmb-base-input";
45

6+
const dojoDateLocale = require("dojo/date/locale");
57
const dojoDateBox = require("lsmb/DateTextBox");
8+
const isoDate = /^\d\d\d\d-\d\d-\d\d$/;
69

710
export class LsmbDate extends LsmbBaseInput {
811
widgetWrapper = null;
@@ -29,6 +32,18 @@ export class LsmbDate extends LsmbBaseInput {
2932
let props = super._collectProps();
3033
if (props.value === "today") {
3134
props.value = new Date();
35+
} else if (typeof props.value === typeof "") {
36+
if (!isoDate.test(props.value)) {
37+
props.value = dojoDateLocale.parse(props.value, {
38+
datePattern: "yyyy-MM-dd",
39+
selector: "date"
40+
});
41+
} else {
42+
props.value = dojoDateLocale.parse(props.value, {
43+
datePattern: lsmbConfig.dateformat.replace(/mm/, "MM"),
44+
selector: "date"
45+
});
46+
}
3247
}
3348
return props;
3449
}

0 commit comments

Comments
 (0)