This commit is contained in:
@@ -673,7 +673,7 @@ export default {
|
||||
UserName: window.$gz.store.state.userName,
|
||||
Authorization: "Bearer " + window.$gz.store.state.apiToken, //api token for using api methods as current user viewing report
|
||||
DownloadToken: window.$gz.store.state.downloadToken,
|
||||
TimeZoneName: window.$gz.locale.getBrowserTimeZoneName(),
|
||||
TimeZoneName: window.$gz.locale.getResolvedTimeZoneName(),
|
||||
LanguageName: window.$gz.locale.getBrowserLanguages(),
|
||||
Hour12: window.$gz.locale.getHour12(),
|
||||
CurrencyName: window.$gz.locale.getCurrencyName(),
|
||||
|
||||
@@ -771,7 +771,7 @@ async function getUserOptions() {
|
||||
|
||||
l.timeZoneOverride =
|
||||
res.data.timeZoneOverride ||
|
||||
window.$gz.locale.getBrowserTimeZoneName() ||
|
||||
window.$gz.locale.getResolvedTimeZoneName() ||
|
||||
"America/New_York";
|
||||
|
||||
//No browser setting for this so meh
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
/* ZZeslint-disable */
|
||||
//Browser Locale conversion utilities
|
||||
|
||||
import { faYinYang } from "@fortawesome/free-solid-svg-icons";
|
||||
|
||||
//dates,numbers currency etc
|
||||
export default {
|
||||
////////////////////////////////////////////////////////
|
||||
@@ -25,8 +28,13 @@ export default {
|
||||
// Get users default time zone
|
||||
//https://www.iana.org/time-zones
|
||||
//https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
getBrowserTimeZoneName() {
|
||||
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
||||
getResolvedTimeZoneName() {
|
||||
let ov = window.$gz.store.state.userOptions.timeZoneOverride;
|
||||
if (!window.$gz.util.stringIsNullOrEmpty(ov)) {
|
||||
return window.$gz.store.state.userOptions.timeZoneOverride;
|
||||
} else {
|
||||
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
||||
}
|
||||
},
|
||||
//////////////////////////////////////////////////
|
||||
// Get the user's chosen currency name
|
||||
@@ -55,7 +63,7 @@ export default {
|
||||
return "";
|
||||
}
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
if (!languageName) {
|
||||
languageName = this.getBrowserLanguages();
|
||||
@@ -88,7 +96,7 @@ export default {
|
||||
return "";
|
||||
}
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
if (!languageName) {
|
||||
languageName = this.getBrowserLanguages();
|
||||
@@ -115,7 +123,7 @@ export default {
|
||||
return "";
|
||||
}
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
if (!languageName) {
|
||||
languageName = this.getBrowserLanguages();
|
||||
@@ -153,7 +161,7 @@ export default {
|
||||
//also fr-CA does as well as possibly en-CA
|
||||
//https://stackoverflow.com/a/58633686/8939
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
return new Date(value).toLocaleTimeString("sv-SE", {
|
||||
timeZone: timeZoneName
|
||||
@@ -168,7 +176,7 @@ export default {
|
||||
localTimeDateStringToUTC8601String(value, timeZoneName) {
|
||||
//https://moment.github.io/luxon/docs/manual/zones.html#creating-datetimes-in-a-zone
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
//parse in the time in the currently used timezone
|
||||
return window.$gz.DateTime.fromISO(value, {
|
||||
@@ -194,11 +202,31 @@ export default {
|
||||
//
|
||||
clientLocalZoneTimeStamp(timeZoneName) {
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
return window.$gz.DateTime.local()
|
||||
.setZone(timeZoneName)
|
||||
.toString();
|
||||
// let ret = window.$gz.DateTime.local()
|
||||
// .setZone(timeZoneName, { keepLocalTime: true })
|
||||
// .toString();
|
||||
|
||||
let l = new Date();
|
||||
|
||||
//DateTime.fromISO("2017-05-15T09:10:23", { zone: "Europe/Paris" });
|
||||
let ret = window.$gz.DateTime.fromObject({
|
||||
zone: timeZoneName,
|
||||
year: l.getFullYear(),
|
||||
month: l.getMonth() + 1,
|
||||
day: l.getDate(),
|
||||
hour: l.getHours(),
|
||||
minute: l.getMinutes(),
|
||||
second: l.getSeconds(),
|
||||
millisecond: l.getMilliseconds()
|
||||
});
|
||||
|
||||
console.log("clientLocalZoneTimeStamp", {
|
||||
zoneName: timeZoneName,
|
||||
ret: ret
|
||||
});
|
||||
return ret;
|
||||
},
|
||||
///////////////////////////////////////////////
|
||||
// Get default start date time in api format
|
||||
@@ -233,7 +261,7 @@ export default {
|
||||
//also fr-CA does as well as possibly en-CA
|
||||
//https://stackoverflow.com/a/58633686/8939
|
||||
if (!timeZoneName) {
|
||||
timeZoneName = this.getBrowserTimeZoneName();
|
||||
timeZoneName = this.getResolvedTimeZoneName();
|
||||
}
|
||||
return new Date(value).toLocaleDateString("sv-SE", {
|
||||
timeZone: timeZoneName
|
||||
|
||||
Reference in New Issue
Block a user