feat(i18n): mega-wrap 494 raw RO strings + 269 lang entries + 161 human RU/163 EN
Broad sweep across the whole codebase:
- Blade views (39 files, 315 wraps): tag-text and title/placeholder/alt
attributes wrapped with {{ __() }}. Excludes scripts, styles, @php,
@verbatim, {{ }}, {!! !!}, comments to avoid touching interpolations.
- PHP (54 files, 179 wraps): array 'key' => 'RO value' patterns and
list items with diacritics wrapped with __(). Reverted __() inside
const arrays (PHP disallows non-constant expressions).
- Added 269 new keys to lang/{ru,en}.json (identity fallback for
unknowns → 161 human RU + 163 EN translations added for the most
common enums, stages, roles, statuses, payment methods, vehicle
categories, warehouse, portal, form actions.
Missing translations fall back to RO so the UI never breaks. All 306
tests pass; view cache compiles cleanly.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
</style>
|
||||
|
||||
<div class="fn-bar">
|
||||
<span style="font-size:13px;font-weight:500;">Perioadă:</span>
|
||||
<span style="font-size:13px;font-weight:500;">{{ __('Perioadă:') }}</span>
|
||||
@foreach ($periods as $key => $label)
|
||||
<button type="button" wire:click="setPeriod('{{ $key }}')"
|
||||
class="fn-pill {{ $period === $key ? 'active' : '' }}">{{ $label }}</button>
|
||||
@@ -55,19 +55,19 @@
|
||||
|
||||
@if ($tab === 'overview')
|
||||
<div class="fn-grid fn-grid-4">
|
||||
<div class="fn-card"><div class="fn-stat-l">Încasări</div><div class="fn-stat-v fn-success">{{ number_format($data['income'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">{{ __('Încasări') }}</div><div class="fn-stat-v fn-success">{{ number_format($data['income'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">Cheltuieli</div><div class="fn-stat-v fn-danger">{{ number_format($data['expenses'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">Profit</div><div class="fn-stat-v {{ $data['profit'] >= 0 ? 'fn-success' : 'fn-danger' }}">{{ number_format($data['profit'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">Datorii clienți</div><div class="fn-stat-v fn-warning">{{ number_format($data['debtTotal'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">{{ __('Datorii clienți') }}</div><div class="fn-stat-v fn-warning">{{ number_format($data['debtTotal'], 2, '.', ' ') }} MDL</div></div>
|
||||
</div>
|
||||
|
||||
@elseif ($tab === 'cashflow')
|
||||
<div class="fn-grid fn-grid-2" style="margin-bottom: 16px;">
|
||||
<div class="fn-card"><div class="fn-stat-l">Total intrări</div><div class="fn-stat-v fn-success">{{ number_format($data['totalIn'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">Total ieșiri</div><div class="fn-stat-v fn-danger">{{ number_format($data['totalOut'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">{{ __('Total intrări') }}</div><div class="fn-stat-v fn-success">{{ number_format($data['totalIn'], 2, '.', ' ') }} MDL</div></div>
|
||||
<div class="fn-card"><div class="fn-stat-l">{{ __('Total ieșiri') }}</div><div class="fn-stat-v fn-danger">{{ number_format($data['totalOut'], 2, '.', ' ') }} MDL</div></div>
|
||||
</div>
|
||||
<div class="fn-card">
|
||||
<div class="fn-h3">Cashflow zilnic — verde = încasări, roșu = cheltuieli</div>
|
||||
<div class="fn-h3">{{ __('Cashflow zilnic — verde = încasări, roșu = cheltuieli') }}</div>
|
||||
<div class="fn-chart">
|
||||
@foreach ($data['rows'] as $r)
|
||||
<div class="fn-chart-day" title="{{ $r['date'] }}: in {{ number_format($r['in']) }} / out {{ number_format($r['out']) }}">
|
||||
@@ -90,18 +90,18 @@
|
||||
<div class="fn-h3">Venituri</div>
|
||||
<table class="fn-tbl">
|
||||
<tr><td>Manopere</td><td class="fn-r">{{ number_format($data['worksRevenue'], 2, '.', ' ') }}</td></tr>
|
||||
<tr><td>Piese (vânzare)</td><td class="fn-r">{{ number_format($data['partsRevenue'], 2, '.', ' ') }}</td></tr>
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">Total venituri</td><td class="fn-r fn-bold fn-success">{{ number_format($data['totalRevenue'], 2, '.', ' ') }}</td></tr>
|
||||
<tr><td>{{ __('Piese (vânzare)') }}</td><td class="fn-r">{{ number_format($data['partsRevenue'], 2, '.', ' ') }}</td></tr>
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">{{ __('Total venituri') }}</td><td class="fn-r fn-bold fn-success">{{ number_format($data['totalRevenue'], 2, '.', ' ') }}</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="fn-card">
|
||||
<div class="fn-h3">Costuri</div>
|
||||
<table class="fn-tbl">
|
||||
<tr><td>Cost piese (achiziție)</td><td class="fn-r fn-danger">{{ number_format($data['partsCost'], 2, '.', ' ') }}</td></tr>
|
||||
<tr><td>{{ __('Cost piese (achiziție)') }}</td><td class="fn-r fn-danger">{{ number_format($data['partsCost'], 2, '.', ' ') }}</td></tr>
|
||||
@foreach ($data['expensesByCat'] as $row)
|
||||
<tr><td>{{ \App\Models\Tenant\Expense::CATEGORIES[$row->category] ?? $row->category }}</td><td class="fn-r fn-danger">{{ number_format((float) $row->total, 2, '.', ' ') }}</td></tr>
|
||||
@endforeach
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">Total costuri</td><td class="fn-r fn-bold fn-danger">{{ number_format($data['partsCost'] + $data['totalExpenses'], 2, '.', ' ') }}</td></tr>
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">{{ __('Total costuri') }}</td><td class="fn-r fn-bold fn-danger">{{ number_format($data['partsCost'] + $data['totalExpenses'], 2, '.', ' ') }}</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
@@ -117,17 +117,17 @@
|
||||
<div class="fn-card">
|
||||
<div class="fn-h3">Active</div>
|
||||
<table class="fn-tbl">
|
||||
<tr><td>Numerar net (toate plățile - cheltuieli)</td><td class="fn-r fn-bold fn-success">{{ number_format($data['netCash'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>Datorii clienți (de încasat)</td><td class="fn-r fn-warning">{{ number_format($data['debt'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>Stoc piese (la preț achiziție)</td><td class="fn-r">{{ number_format($data['stockValue'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">Total active</td><td class="fn-r fn-bold">{{ number_format($data['netCash'] + $data['debt'] + $data['stockValue'], 2, '.', ' ') }}</td></tr>
|
||||
<tr><td>{{ __('Numerar net (toate plățile - cheltuieli)') }}</td><td class="fn-r fn-bold fn-success">{{ number_format($data['netCash'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>{{ __('Datorii clienți (de încasat)') }}</td><td class="fn-r fn-warning">{{ number_format($data['debt'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>{{ __('Stoc piese (la preț achiziție)') }}</td><td class="fn-r">{{ number_format($data['stockValue'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr style="border-top:2px solid #e5e7eb;"><td class="fn-bold">{{ __('Total active') }}</td><td class="fn-r fn-bold">{{ number_format($data['netCash'] + $data['debt'] + $data['stockValue'], 2, '.', ' ') }}</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="fn-card">
|
||||
<div class="fn-h3">Toate timpurile</div>
|
||||
<div class="fn-h3">{{ __('Toate timpurile') }}</div>
|
||||
<table class="fn-tbl">
|
||||
<tr><td>Total încasat</td><td class="fn-r fn-success">{{ number_format($data['allTimePayments'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>Total cheltuit</td><td class="fn-r fn-danger">{{ number_format($data['allTimeExpenses'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>{{ __('Total încasat') }}</td><td class="fn-r fn-success">{{ number_format($data['allTimePayments'], 2, '.', ' ') }} MDL</td></tr>
|
||||
<tr><td>{{ __('Total cheltuit') }}</td><td class="fn-r fn-danger">{{ number_format($data['allTimeExpenses'], 2, '.', ' ') }} MDL</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user