Fixed dates
This commit is contained in:
@@ -32,7 +32,7 @@ const chartData = computed(() => {
|
||||
}
|
||||
|
||||
return props.trends.labels.map((label, i) => ({
|
||||
date: new Date(label),
|
||||
date: new Date(label + "T00:00:00"),
|
||||
dateLabel: label,
|
||||
completed: props.trends.field_jobs_completed[i] || 0,
|
||||
assigned: props.trends.field_jobs[i] || 0,
|
||||
@@ -140,7 +140,7 @@ const crosshairLabelFormatter = (value) => {
|
||||
type="x"
|
||||
:tick-line="false"
|
||||
:grid-line="false"
|
||||
:num-ticks="7"
|
||||
:tick-values="chartData.map((d) => d.date)"
|
||||
:tick-format="
|
||||
(d) => {
|
||||
const date = new Date(d);
|
||||
|
||||
@@ -263,10 +263,14 @@ function formatDate(value) {
|
||||
if (isNaN(d)) {
|
||||
return value;
|
||||
}
|
||||
const dd = String(d.getDate()).padStart(2, "0");
|
||||
const mm = String(d.getMonth() + 1).padStart(2, "0");
|
||||
const yyyy = d.getFullYear();
|
||||
return `${dd}.${mm}.${yyyy}`;
|
||||
const parts = new Intl.DateTimeFormat("en-GB", {
|
||||
timeZone: "Europe/Ljubljana",
|
||||
day: "2-digit",
|
||||
month: "2-digit",
|
||||
year: "numeric",
|
||||
}).formatToParts(d);
|
||||
const map = Object.fromEntries(parts.map((p) => [p.type, p.value]));
|
||||
return `${map.day}.${map.month}.${map.year}`;
|
||||
}
|
||||
|
||||
function formatCurrencyEUR(value) {
|
||||
|
||||
@@ -30,6 +30,7 @@ import {
|
||||
Phone,
|
||||
Wallet,
|
||||
} from "lucide-vue-next";
|
||||
import { fmtDateDMY } from "@/Utilities/functions";
|
||||
|
||||
const props = defineProps({
|
||||
jobs: { type: Object, required: true },
|
||||
@@ -89,17 +90,16 @@ function clearSearch() {
|
||||
|
||||
function formatDateDMY(d) {
|
||||
if (!d) return "-";
|
||||
if (/^\d{4}-\d{2}-\d{2}/.test(d)) {
|
||||
const [y, m, rest] = d.split("-");
|
||||
const day = (rest || "").slice(0, 2) || "01";
|
||||
return `${day}.${m}.${y}`;
|
||||
}
|
||||
const dt = new Date(d);
|
||||
if (Number.isNaN(dt.getTime())) return String(d);
|
||||
const dd = String(dt.getDate()).padStart(2, "0");
|
||||
const mm = String(dt.getMonth() + 1).padStart(2, "0");
|
||||
const yyyy = dt.getFullYear();
|
||||
return `${dd}.${mm}.${yyyy}`;
|
||||
const parts = new Intl.DateTimeFormat("en-GB", {
|
||||
timeZone: "Europe/Ljubljana",
|
||||
day: "2-digit",
|
||||
month: "2-digit",
|
||||
year: "numeric",
|
||||
}).formatToParts(dt);
|
||||
const map = Object.fromEntries(parts.map((p) => [p.type, p.value]));
|
||||
return `${map.day}.${map.month}.${map.year}`;
|
||||
}
|
||||
|
||||
function formatAmount(val) {
|
||||
@@ -412,7 +412,7 @@ function changePage(url) {
|
||||
Dodeljeno
|
||||
</p>
|
||||
<p class="font-semibold text-gray-900 dark:text-gray-100">
|
||||
{{ formatDateDMY(job.assigned_at) }}
|
||||
{{ fmtDateDMY(job.assigned_at) }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -430,7 +430,7 @@ function changePage(url) {
|
||||
Zadnja aktivnost
|
||||
</p>
|
||||
<p class="font-semibold text-green-700 dark:text-green-400">
|
||||
{{ formatDateDMY(job.last_activity) || "—" }}
|
||||
{{ fmtDateDMY(job.last_activity) || "—" }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user