[fix] fallback-datetime-input
This commit is contained in:
parent
9fdafe3536
commit
05d1d67936
|
|
@ -316,7 +316,11 @@ namespace _dali.helpers
|
|||
date : string;
|
||||
time : string;
|
||||
},
|
||||
lib_plankton.pit.type_datetime
|
||||
(
|
||||
null
|
||||
|
|
||||
lib_plankton.pit.type_datetime
|
||||
)
|
||||
>(
|
||||
new lib_plankton.zoo_input.class_input_group(
|
||||
[
|
||||
|
|
@ -343,50 +347,91 @@ namespace _dali.helpers
|
|||
]
|
||||
),
|
||||
(inner) => {
|
||||
const date_parts : Array<string> = inner.date.split("-");
|
||||
const time_parts : Array<string> = inner.time.split(":");
|
||||
const datetime_raw : lib_plankton.pit.type_datetime = {
|
||||
"timezone_shift": 0,
|
||||
"date": {
|
||||
"year": parseInt(date_parts[0]),
|
||||
"month": parseInt(date_parts[1]),
|
||||
"day": parseInt(date_parts[2]),
|
||||
},
|
||||
"time": {
|
||||
"hour": parseInt(time_parts[0]),
|
||||
"minute": parseInt(time_parts[1]),
|
||||
"second": 0,
|
||||
},
|
||||
};
|
||||
return {
|
||||
"timezone_shift": (
|
||||
_dali.conf.get().misc.use_central_europe_specific_datetime_inputs
|
||||
if (inner === null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
else
|
||||
{
|
||||
const date_parts : Array<string> = ((inner.date === "") ? null : inner.date.split("-"));
|
||||
const time_parts : (null | Array<string>) = ((inner.time === "") ? null : inner.time.split(":"));
|
||||
const datetime_raw : (null | lib_plankton.pit.type_datetime) = (
|
||||
(date_parts === null)
|
||||
?
|
||||
lib_plankton.pit.timezone_shift_ce(lib_plankton.pit.from_datetime(datetime_raw))
|
||||
null
|
||||
:
|
||||
0
|
||||
),
|
||||
"date": datetime_raw.date,
|
||||
"time": datetime_raw.time,
|
||||
};
|
||||
{
|
||||
"timezone_shift": 0,
|
||||
"date": {
|
||||
"year": parseInt(date_parts[0]),
|
||||
"month": parseInt(date_parts[1]),
|
||||
"day": parseInt(date_parts[2]),
|
||||
},
|
||||
"time": (
|
||||
(time_parts === null)
|
||||
?
|
||||
null
|
||||
:
|
||||
{
|
||||
"hour": parseInt(time_parts[0]),
|
||||
"minute": parseInt(time_parts[1]),
|
||||
"second": 0,
|
||||
}
|
||||
),
|
||||
}
|
||||
);
|
||||
return (
|
||||
(datetime_raw === null)
|
||||
?
|
||||
null
|
||||
:
|
||||
{
|
||||
"timezone_shift": (
|
||||
_dali.conf.get().misc.use_central_europe_specific_datetime_inputs
|
||||
?
|
||||
lib_plankton.pit.timezone_shift_ce(lib_plankton.pit.from_datetime(datetime_raw))
|
||||
:
|
||||
0
|
||||
),
|
||||
"date": datetime_raw.date,
|
||||
"time": datetime_raw.time,
|
||||
}
|
||||
);
|
||||
}
|
||||
},
|
||||
(outer) => {
|
||||
return {
|
||||
"date": lib_plankton.string.coin(
|
||||
"{{year}}-{{month}}-{{day}}",
|
||||
{
|
||||
"year": outer.date.year.toFixed(0).padStart(4, "0"),
|
||||
"month": outer.date.month.toFixed(0).padStart(2, "0"),
|
||||
"day": outer.date.day.toFixed(0).padStart(2, "0"),
|
||||
}
|
||||
),
|
||||
"time": lib_plankton.string.coin(
|
||||
"{{hour}}:{{minute}}",
|
||||
{
|
||||
"hour": outer.time.hour.toFixed(0).padStart(2, "0"),
|
||||
"minute": outer.time.minute.toFixed(0).padStart(2, "0"),
|
||||
}
|
||||
),
|
||||
if (outer === null)
|
||||
{
|
||||
return {
|
||||
"date": "",
|
||||
"time": "",
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
return {
|
||||
"date": lib_plankton.string.coin(
|
||||
"{{year}}-{{month}}-{{day}}",
|
||||
{
|
||||
"year": outer.date.year.toFixed(0).padStart(4, "0"),
|
||||
"month": outer.date.month.toFixed(0).padStart(2, "0"),
|
||||
"day": outer.date.day.toFixed(0).padStart(2, "0"),
|
||||
}
|
||||
),
|
||||
"time": (
|
||||
(outer.time === null)
|
||||
?
|
||||
""
|
||||
:
|
||||
lib_plankton.string.coin(
|
||||
"{{hour}}:{{minute}}",
|
||||
{
|
||||
"hour": outer.time.hour.toFixed(0).padStart(2, "0"),
|
||||
"minute": outer.time.minute.toFixed(0).padStart(2, "0"),
|
||||
}
|
||||
)
|
||||
),
|
||||
};
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue