diff --git a/src/views/elements.js b/src/views/elements.js index 47aa0f3a9f5634157f16181dddd1dcc1e88ec889..d8e09fde4d995e9ae9197158bd8a4568e58386eb 100644 --- a/src/views/elements.js +++ b/src/views/elements.js @@ -110,9 +110,22 @@ export class datetimeInput { view({ attrs: { label, value } }) { // set display-settings accoridng to error-state const errors = this.getErrors(); - const initialValue = value || 'T'; - const initialDate = initialValue.split('T')[0]; - const initialTime = initialValue.split('T')[1].substring(0, 5); + let initialDate; + let initialTime; + if (value) { + const parsed = new Date(value); + // convert to locale timezone + const locale = { + year: parsed.getFullYear(), + month: `${parsed.getMonth()}`.padStart(2, '0'), + day: `${parsed.getDay()}`.padStart(2, '0'), + hour: `${parsed.getHours()}`.padStart(2, '0'), + minute: `${parsed.getMinutes()}`.padStart(2, '0'), + }; + initialDate = `${locale.year}-${locale.month}-${locale.day}`; + initialTime = `${locale.hour}:${locale.minute}`; + } + console.log({initialDate, initialTime}); const date = { type: 'date',