mirror of
https://github.com/InvoiceShelf/InvoiceShelf.git
synced 2026-04-07 13:41:23 +00:00
Complete dashboard translations & small UI improvements (#69)
* fix dropdown action Estimate Dashboard and fix translating full Dasboard page * Update app.php * fix locale in app.php config * Wizard install with translation, customer portal with translation, and fixing hardcoding strings to get translation * fixes asked to review * fixes pint --------- Co-authored-by: Max <contact@agencetwogether.fr> Co-authored-by: Darko Gjorgjijoski <5760249+gdarko@users.noreply.github.com>
This commit is contained in:
@@ -19,7 +19,7 @@
|
||||
:icon-component="InvoiceIcon"
|
||||
:loading="!globalStore.getDashboardDataLoaded"
|
||||
:route="{ name: 'invoices.dashboard' }"
|
||||
:label="$t('dashboard.cards.invoices')"
|
||||
:label="(dashboardStore.invoiceCount <= 1 ? $t('dashboard.cards.invoices', 1) : $t('dashboard.cards.invoices', 2))"
|
||||
>
|
||||
{{ dashboardStore.invoiceCount }}
|
||||
</DashboardStatsItem>
|
||||
@@ -29,7 +29,7 @@
|
||||
:icon-component="EstimateIcon"
|
||||
:loading="!globalStore.getDashboardDataLoaded"
|
||||
:route="{ name: 'estimates.dashboard' }"
|
||||
:label="$t('dashboard.cards.estimates')"
|
||||
:label="(dashboardStore.estimateCount <= 1 ? $t('dashboard.cards.estimates', 1) : $t('dashboard.cards.estimates', 2))"
|
||||
>
|
||||
{{ dashboardStore.estimateCount }}
|
||||
</DashboardStatsItem>
|
||||
@@ -40,7 +40,7 @@
|
||||
:icon-component="PaymentIcon"
|
||||
:loading="!globalStore.getDashboardDataLoaded"
|
||||
:route="{ name: 'payments.dashboard' }"
|
||||
:label="$t('dashboard.cards.payments')"
|
||||
:label="(dashboardStore.paymentCount <= 1 ? $t('dashboard.cards.payments', 1 ) : $t('dashboard.cards.payments', 2))"
|
||||
>
|
||||
{{ dashboardStore.paymentCount }}
|
||||
</DashboardStatsItem>
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
<template #cell-paid_status="{ row }">
|
||||
<BasePaidStatusBadge :status="row.data.paid_status">
|
||||
{{ row.data.paid_status }}
|
||||
<BaseInvoiceStatusLabel :status="row.data.paid_status" />
|
||||
</BasePaidStatusBadge>
|
||||
</template>
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
</template>
|
||||
<template #cell-status="{ row }">
|
||||
<BaseEstimateStatusBadge :status="row.data.status" class="px-3 py-1">
|
||||
{{ row.data.status }}
|
||||
<BaseEstimateStatusLabel :status="row.data.status" />
|
||||
</BaseEstimateStatusBadge>
|
||||
</template>
|
||||
<template #cell-total="{ row }">
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
|
||||
<template #cell-status="{ row }">
|
||||
<BaseEstimateStatusBadge :status="row.data.status" class="px-3 py-1">
|
||||
{{ row.data.status }}
|
||||
<BaseEstimateStatusLabel :status="row.data.status" />
|
||||
</BaseEstimateStatusBadge>
|
||||
</template>
|
||||
|
||||
@@ -156,12 +156,12 @@ let showFilters = ref(false)
|
||||
let isFetchingInitialData = ref(true)
|
||||
|
||||
const status = ref([
|
||||
'DRAFT',
|
||||
'SENT',
|
||||
'VIEWED',
|
||||
'EXPIRED',
|
||||
'ACCEPTED',
|
||||
'REJECTED',
|
||||
{label: t('estimates.draft'), value: 'DRAFT'},
|
||||
{label: t('estimates.sent'), value: 'SENT'},
|
||||
{label: t('estimates.viewed'), value: 'VIEWED'},
|
||||
{label: t('estimates.expired'), value: 'EXPIRED'},
|
||||
{label: t('estimates.accepted'), value: 'ACCEPTED'},
|
||||
{label: t('estimates.rejected'), value: 'REJECTED'},
|
||||
])
|
||||
const filters = reactive({
|
||||
status: '',
|
||||
@@ -240,7 +240,7 @@ function toggleFilter() {
|
||||
|
||||
async function fetchData({ page, sort }) {
|
||||
let data = {
|
||||
status: filters.status,
|
||||
status: filters.status.value,
|
||||
estimate_number: filters.estimate_number,
|
||||
from_date: filters.from_date,
|
||||
to_date: filters.to_date,
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
</div>
|
||||
|
||||
<BaseEstimateStatusBadge :status="estimate.status">
|
||||
{{ estimate.status }}
|
||||
<BaseEstimateStatusLabel :status="estimate.status" />
|
||||
</BaseEstimateStatusBadge>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
|
||||
<template #cell-status="{ row }">
|
||||
<BaseInvoiceStatusBadge :status="row.data.status" class="px-3 py-1">
|
||||
{{ row.data.status }}
|
||||
<BaseInvoiceStatusLabel :status="row.data.status" />
|
||||
</BaseInvoiceStatusBadge>
|
||||
</template>
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
:status="row.data.paid_status"
|
||||
class="px-3 py-1"
|
||||
>
|
||||
{{ row.data.paid_status }}
|
||||
<BaseInvoiceStatusLabel :status="row.data.paid_status" />
|
||||
</BaseInvoiceStatusBadge>
|
||||
</template>
|
||||
|
||||
@@ -160,7 +160,13 @@ const route = useRoute()
|
||||
const table = ref(null)
|
||||
let isFetchingInitialData = ref(true)
|
||||
let showFilters = ref(false)
|
||||
const status = ref(['DRAFT', 'DUE', 'SENT', 'VIEWED', 'COMPLETED'])
|
||||
const status = ref([
|
||||
{label: t('general.draft'), value: 'DRAFT'},
|
||||
{label: t('general.due'), value: 'DUE'},
|
||||
{label: t('general.sent'), value: 'SENT'},
|
||||
{label: t('invoices.viewed'), value: 'VIEWED'},
|
||||
{label: t('invoices.completed'), value: 'COMPLETED'}
|
||||
])
|
||||
const filters = reactive({
|
||||
status: '',
|
||||
from_date: '',
|
||||
@@ -247,7 +253,7 @@ function toggleFilter() {
|
||||
|
||||
async function fetchData({ page, sort }) {
|
||||
let data = {
|
||||
status: filters.status,
|
||||
status: filters.status.value,
|
||||
invoice_number: filters.invoice_number,
|
||||
from_date: filters.from_date,
|
||||
to_date: filters.to_date,
|
||||
|
||||
@@ -175,7 +175,7 @@
|
||||
{{ invoice.invoice_number }}
|
||||
</div>
|
||||
<BaseInvoiceStatusBadge :status="invoice.status">
|
||||
{{ invoice.status }}
|
||||
<BaseInvoiceStatusLabel :status="invoice.status" />
|
||||
</BaseInvoiceStatusBadge>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user