mirror of
https://github.com/Kingsrook/qqq-frontend-material-dashboard.git
synced 2025-07-19 05:40:44 +00:00
Submit date-times in UTC. delete date-times from what gets submitted if it isn't changed (to try to avoid second-truncation); moved frontendLocalZoneDateTimeStringToUTCStringForBackend from FilterUtils to ValueUtils
This commit is contained in:
@ -270,19 +270,6 @@ class FilterUtils
|
||||
};
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
private static zeroPad = (n: number): string =>
|
||||
{
|
||||
if (n < 10)
|
||||
{
|
||||
return ("0" + n);
|
||||
}
|
||||
return (`${n}`);
|
||||
};
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Helper method - take a list of values, which may be possible values, and
|
||||
** either return the original list, or a new list that is just the ids of the
|
||||
@ -314,7 +301,7 @@ class FilterUtils
|
||||
{
|
||||
try
|
||||
{
|
||||
let toPush = this.frontendLocalZoneDateTimeStringToUTCStringForBackend(param[i]);
|
||||
let toPush = ValueUtils.frontendLocalZoneDateTimeStringToUTCStringForBackend(param[i]);
|
||||
rs.push(toPush);
|
||||
}
|
||||
catch (e)
|
||||
@ -333,21 +320,6 @@ class FilterUtils
|
||||
};
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Take a string date (w/o a timezone) like that our calendar widgets make,
|
||||
** and convert it to UTC, e.g., for submitting to the backend.
|
||||
*******************************************************************************/
|
||||
public static frontendLocalZoneDateTimeStringToUTCStringForBackend(param: string)
|
||||
{
|
||||
let localDate = new Date(param);
|
||||
let month = (1 + localDate.getUTCMonth());
|
||||
let zp = FilterUtils.zeroPad;
|
||||
let toPush = localDate.getUTCFullYear() + "-" + zp(month) + "-" + zp(localDate.getUTCDate()) + "T" + zp(localDate.getUTCHours()) + ":" + zp(localDate.getUTCMinutes()) + ":" + zp(localDate.getUTCSeconds()) + "Z";
|
||||
console.log(`Input date was ${localDate}. Sending to backend as ${toPush}`);
|
||||
return toPush;
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
** Convert a filter field's value from the style that qqq uses, to the style that
|
||||
** the grid uses.
|
||||
|
@ -373,6 +373,33 @@ class ValueUtils
|
||||
return (value);
|
||||
}
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
private static zeroPad = (n: number): string =>
|
||||
{
|
||||
if (n < 10)
|
||||
{
|
||||
return ("0" + n);
|
||||
}
|
||||
return (`${n}`);
|
||||
};
|
||||
|
||||
/*******************************************************************************
|
||||
** Take a string date (w/o a timezone) like that our calendar widgets make,
|
||||
** and convert it to UTC, e.g., for submitting to the backend.
|
||||
*******************************************************************************/
|
||||
public static frontendLocalZoneDateTimeStringToUTCStringForBackend(param: string)
|
||||
{
|
||||
let localDate = new Date(param);
|
||||
let month = (1 + localDate.getUTCMonth());
|
||||
let zp = ValueUtils.zeroPad;
|
||||
let toPush = localDate.getUTCFullYear() + "-" + zp(month) + "-" + zp(localDate.getUTCDate()) + "T" + zp(localDate.getUTCHours()) + ":" + zp(localDate.getUTCMinutes()) + ":" + zp(localDate.getUTCSeconds()) + "Z";
|
||||
console.log(`Input date was ${localDate}. Sending to backend as ${toPush}`);
|
||||
return toPush;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
Reference in New Issue
Block a user