diff --git a/ayanova/src/components/date-time-control.vue b/ayanova/src/components/date-time-control.vue
index d434675a..8dd712d0 100644
--- a/ayanova/src/components/date-time-control.vue
+++ b/ayanova/src/components/date-time-control.vue
@@ -55,6 +55,7 @@
ref="theTimePicker"
scrollable
ampm-in-title
+ :format="ampmFormat"
v-model="timeOnly"
>
@@ -103,7 +104,8 @@ export default {
oldDate: null,
dlgdate: false,
dlgtime: false,
- defaultLocale: window.$gz.locale.getFirstBrowserLanguage().split("-", 1)[0]
+ defaultLocale: window.$gz.locale.getFirstBrowserLanguage().split("-", 1)[0],
+ ampmFormat: window.$gz.locale.format().hour12 ? "ampm" : "24hr"
}),
props: {
label: String,
diff --git a/ayanova/src/components/gz-data-table.vue b/ayanova/src/components/gz-data-table.vue
index 5c3a5161..3104997d 100644
--- a/ayanova/src/components/gz-data-table.vue
+++ b/ayanova/src/components/gz-data-table.vue
@@ -445,7 +445,7 @@ function buildRecords(listData, columndefinitions, filters) {
var display = column.v;
switch (dataType) {
case 1: //datetime format to shortdatetime
- display = filters.shortdatelocalized(display);
+ display = filters.shortdateandtimelocalized(display);
break;
case 2: //date only
display = filters.shortdateonlylocalized(display);
diff --git a/ayanova/src/main.js b/ayanova/src/main.js
index 68b864dd..2f90878e 100644
--- a/ayanova/src/main.js
+++ b/ayanova/src/main.js
@@ -148,21 +148,26 @@ Vue.filter("capitalize", function vueFilterCapitalize(value) {
});
//Convert date to offset value and return as short date time based on browser format
-Vue.filter("shortdatelocalized", function vueFilterShortDateAndTimeLocalized(
- value
-) {
- if (!value) return "";
+Vue.filter(
+ "shortdateandtimelocalized",
+ function vueFilterShortDateAndTimeLocalized(value) {
+ if (!value) return "";
- var localizedDate = dayjs
- .utc(value)
- .add(locale.format().timeZoneOffset, "hour")
- .toDate();
- return localizedDate.toLocaleString(undefined, {
- dateStyle: "short",
- timeStyle: "short",
- hour12: locale.format().hour12
- });
-});
+ var localizedDate = dayjs
+ .utc(value)
+ .add(locale.format().timeZoneOffset, "hour")
+ .toDate();
+
+ return localizedDate.toLocaleString(
+ window.$gz.locale.getFirstBrowserLanguage(),
+ {
+ dateStyle: "short",
+ timeStyle: "short",
+ hour12: locale.format().hour12
+ }
+ );
+ }
+);
//Convert date to localized value and return as short date format chosen
Vue.filter("shortdateonlylocalized", function vueFilterShortDateOnlyLocalized(
@@ -170,11 +175,17 @@ Vue.filter("shortdateonlylocalized", function vueFilterShortDateOnlyLocalized(
) {
//TODO NOT DONE
if (!value) return "";
-
- return dayjs
+ var localizedDate = dayjs
.utc(value)
.add(locale.format().timeZoneOffset, "hour")
- .format(locale.format().shortDateAndTime);
+ .toDate();
+
+ return localizedDate.toLocaleDateString(
+ window.$gz.locale.getFirstBrowserLanguage(),
+ {
+ dateStyle: "short"
+ }
+ );
});
//Convert date to localized value and return as short date format chosen
@@ -185,10 +196,18 @@ Vue.filter("shorttimeonlylocalized", function vueFilterShortTimeOnlyLocalized(
if (!value) return "";
//new Date().toLocaleString(undefined,{dateStyle:"short",timeStyle:"short",hour12:false})
//also toLocaleDateString and toLocaleTimeString well supported use similar options
- return dayjs
+ var localizedDate = dayjs
.utc(value)
.add(locale.format().timeZoneOffset, "hour")
- .format(locale.format().shortDateAndTime);
+ .toDate();
+
+ return localizedDate.toLocaleTimeString(
+ window.$gz.locale.getFirstBrowserLanguage(),
+ {
+ timeStyle: "short",
+ hour12: locale.format().hour12
+ }
+ );
});
Vue.filter("currency", function vueFilterCurrency(value) {
diff --git a/ayanova/src/views/ay-about.vue b/ayanova/src/views/ay-about.vue
index e8fb5524..0b63426c 100644
--- a/ayanova/src/views/ay-about.vue
+++ b/ayanova/src/views/ay-about.vue
@@ -25,9 +25,9 @@
- {{ lt("Language") }}:
+ 12h:
- {{ ltFormat().tag }}
+ {{ ltFormat().hour12 }}
@@ -48,7 +48,7 @@
{{ ltFormat().currencySymbol }}
-
+
{{ lt("Browser") }}