i18n(reports): wrap Anul curent + auto-translate specialization tokens
- Reports.php periods() had 'this_year' hardcoded; now wrapped in __() - masters tab specialization cell: split by '/' and __()-translate each token so 'Motor / Cutie viteze' auto-renders as «Двигатель / КПП» on RU (and 'Engine / Gearbox' on EN). Users can enter any free-text specialisation; the common keywords now have RU/EN translations. - +12 specialisation vocabulary entries (Motor, Frâne, Suspensie, Anvelope, Cutie viteze, Electrică, Diagnosticare, Vopsitorie, Tinichigerie, Aer condiționat, Roți, Ambreiaj). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -62,7 +62,7 @@ class Reports extends Page
|
|||||||
'this_week' => __('Săptămâna curentă'),
|
'this_week' => __('Săptămâna curentă'),
|
||||||
'this_month' => __('Luna curentă'),
|
'this_month' => __('Luna curentă'),
|
||||||
'last_month' => __('Luna trecută'),
|
'last_month' => __('Luna trecută'),
|
||||||
'this_year' => 'Anul curent',
|
'this_year' => __('Anul curent'),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+7
-3
@@ -131,6 +131,7 @@
|
|||||||
"Adresă email": "Email address",
|
"Adresă email": "Email address",
|
||||||
"Adresă livrare:": "Delivery address:",
|
"Adresă livrare:": "Delivery address:",
|
||||||
"Advance": "Advance",
|
"Advance": "Advance",
|
||||||
|
"Aer condiționat": "Air conditioning",
|
||||||
"Afișează detalii marjă la procesele calculate": "Show margin details in calculations",
|
"Afișează detalii marjă la procesele calculate": "Show margin details in calculations",
|
||||||
"Ai cerut resetarea parolei pentru contul tău de magazin. Apasă linkul de mai jos ca să setezi o parolă nouă:": "You requested a password reset for your shop account. Click the link below to set a new password:",
|
"Ai cerut resetarea parolei pentru contul tău de magazin. Apasă linkul de mai jos ca să setezi o parolă nouă:": "You requested a password reset for your shop account. Click the link below to set a new password:",
|
||||||
"Ai deja cont?": "Already have an account?",
|
"Ai deja cont?": "Already have an account?",
|
||||||
@@ -162,6 +163,7 @@
|
|||||||
"Altele": "Other",
|
"Altele": "Other",
|
||||||
"Altă problemă": "Other problem",
|
"Altă problemă": "Other problem",
|
||||||
"Am salvat token-ul, ascunde-l": "Am salvat token-ul, ascunde-l",
|
"Am salvat token-ul, ascunde-l": "Am salvat token-ul, ascunde-l",
|
||||||
|
"Ambreiaj": "Clutch",
|
||||||
"Amount": "Amount",
|
"Amount": "Amount",
|
||||||
"An": "Year",
|
"An": "Year",
|
||||||
"An fabricație": "Production year",
|
"An fabricație": "Production year",
|
||||||
@@ -180,7 +182,7 @@
|
|||||||
"Anulată": "Cancelled",
|
"Anulată": "Cancelled",
|
||||||
"Anulează": "Cancel",
|
"Anulează": "Cancel",
|
||||||
"Anulează fișa": "Cancel order",
|
"Anulează fișa": "Cancel order",
|
||||||
"Anvelope": "Tires",
|
"Anvelope": "Tyres",
|
||||||
"Apare în magazinul online public.": "Appears in the public online shop.",
|
"Apare în magazinul online public.": "Appears in the public online shop.",
|
||||||
"Apasă „Pornește\" pentru a deschide camera.": "Click \"Start\" to open the camera.",
|
"Apasă „Pornește\" pentru a deschide camera.": "Click \"Start\" to open the camera.",
|
||||||
"Apasă „Recepție\" pe lista de piese pentru a înregistra prima intrare în depozit.": "Click \"Receive\" on the parts list to record the first stock intake.",
|
"Apasă „Recepție\" pe lista de piese pentru a înregistra prima intrare în depozit.": "Click \"Receive\" on the parts list to record the first stock intake.",
|
||||||
@@ -620,7 +622,7 @@
|
|||||||
"Diagnosis": "Diagnosis",
|
"Diagnosis": "Diagnosis",
|
||||||
"Diagnostic": "Diagnostic",
|
"Diagnostic": "Diagnostic",
|
||||||
"Diagnostic AI bazat pe plângerea clientului": "AI diagnosis based on the client complaint",
|
"Diagnostic AI bazat pe plângerea clientului": "AI diagnosis based on the client complaint",
|
||||||
"Diagnosticare": "Diagnosis",
|
"Diagnosticare": "Diagnostics",
|
||||||
"Diagnoza": "Diagnosis",
|
"Diagnoza": "Diagnosis",
|
||||||
"Diagnoză": "Diagnosis",
|
"Diagnoză": "Diagnosis",
|
||||||
"Diametru R": "Diameter R",
|
"Diametru R": "Diameter R",
|
||||||
@@ -1592,6 +1594,7 @@
|
|||||||
"Rolurile sistem (owner/admin/etc.) au numele blocat": "Rolurile sistem (owner/admin/etc.) au numele blocat",
|
"Rolurile sistem (owner/admin/etc.) au numele blocat": "Rolurile sistem (owner/admin/etc.) au numele blocat",
|
||||||
"Română": "Română",
|
"Română": "Română",
|
||||||
"Rotire": "Rotate",
|
"Rotire": "Rotate",
|
||||||
|
"Roți": "Wheels",
|
||||||
"Rulează `php artisan push:vapid` și adaugă cheile în .env.": "Rulează `php artisan push:vapid` și adaugă cheile în .env.",
|
"Rulează `php artisan push:vapid` și adaugă cheile în .env.": "Rulează `php artisan push:vapid` și adaugă cheile în .env.",
|
||||||
"Rând": "Row",
|
"Rând": "Row",
|
||||||
"Rânduri": "Rows",
|
"Rânduri": "Rows",
|
||||||
@@ -1828,7 +1831,7 @@
|
|||||||
"Timp lucrat": "Time worked",
|
"Timp lucrat": "Time worked",
|
||||||
"Timp mediu": "Avg time",
|
"Timp mediu": "Avg time",
|
||||||
"Timp total": "Total time",
|
"Timp total": "Total time",
|
||||||
"Tinichigerie": "Body shop",
|
"Tinichigerie": "Body work",
|
||||||
"Tinichigerie / Detailing": "Body / Detailing",
|
"Tinichigerie / Detailing": "Body / Detailing",
|
||||||
"Tip": "Type",
|
"Tip": "Type",
|
||||||
"Tip daună": "Damage type",
|
"Tip daună": "Damage type",
|
||||||
@@ -1997,6 +2000,7 @@
|
|||||||
"Vizualizează": "View",
|
"Vizualizează": "View",
|
||||||
"Vizualizări": "Views",
|
"Vizualizări": "Views",
|
||||||
"Vopsire": "Painting",
|
"Vopsire": "Painting",
|
||||||
|
"Vopsitorie": "Painting",
|
||||||
"Vânzări": "Vânzări",
|
"Vânzări": "Vânzări",
|
||||||
"Vârstă max (ani)": "Max age (years)",
|
"Vârstă max (ani)": "Max age (years)",
|
||||||
"Vârstă min (ani)": "Min age (years)",
|
"Vârstă min (ani)": "Min age (years)",
|
||||||
|
|||||||
+5
-1
@@ -131,6 +131,7 @@
|
|||||||
"Adresă email": "Email",
|
"Adresă email": "Email",
|
||||||
"Adresă livrare:": "Адрес доставки:",
|
"Adresă livrare:": "Адрес доставки:",
|
||||||
"Advance": "Аванс",
|
"Advance": "Аванс",
|
||||||
|
"Aer condiționat": "Кондиционер",
|
||||||
"Afișează detalii marjă la procesele calculate": "Показать детали маржи в расчётах",
|
"Afișează detalii marjă la procesele calculate": "Показать детали маржи в расчётах",
|
||||||
"Ai cerut resetarea parolei pentru contul tău de magazin. Apasă linkul de mai jos ca să setezi o parolă nouă:": "Вы запросили сброс пароля для вашего аккаунта магазина. Нажмите ссылку ниже, чтобы задать новый пароль:",
|
"Ai cerut resetarea parolei pentru contul tău de magazin. Apasă linkul de mai jos ca să setezi o parolă nouă:": "Вы запросили сброс пароля для вашего аккаунта магазина. Нажмите ссылку ниже, чтобы задать новый пароль:",
|
||||||
"Ai deja cont?": "Уже есть аккаунт?",
|
"Ai deja cont?": "Уже есть аккаунт?",
|
||||||
@@ -162,6 +163,7 @@
|
|||||||
"Altele": "Прочее",
|
"Altele": "Прочее",
|
||||||
"Altă problemă": "Другая проблема",
|
"Altă problemă": "Другая проблема",
|
||||||
"Am salvat token-ul, ascunde-l": "Am salvat token-ul, ascunde-l",
|
"Am salvat token-ul, ascunde-l": "Am salvat token-ul, ascunde-l",
|
||||||
|
"Ambreiaj": "Сцепление",
|
||||||
"Amount": "Сумма",
|
"Amount": "Сумма",
|
||||||
"An": "Год",
|
"An": "Год",
|
||||||
"An fabricație": "Год выпуска",
|
"An fabricație": "Год выпуска",
|
||||||
@@ -1592,6 +1594,7 @@
|
|||||||
"Rolurile sistem (owner/admin/etc.) au numele blocat": "Rolurile sistem (owner/admin/etc.) au numele blocat",
|
"Rolurile sistem (owner/admin/etc.) au numele blocat": "Rolurile sistem (owner/admin/etc.) au numele blocat",
|
||||||
"Română": "Română",
|
"Română": "Română",
|
||||||
"Rotire": "Поворот",
|
"Rotire": "Поворот",
|
||||||
|
"Roți": "Колёса",
|
||||||
"Rulează `php artisan push:vapid` și adaugă cheile în .env.": "Rulează `php artisan push:vapid` și adaugă cheile în .env.",
|
"Rulează `php artisan push:vapid` și adaugă cheile în .env.": "Rulează `php artisan push:vapid` și adaugă cheile în .env.",
|
||||||
"Rând": "Строка",
|
"Rând": "Строка",
|
||||||
"Rânduri": "Строки",
|
"Rânduri": "Строки",
|
||||||
@@ -1828,7 +1831,7 @@
|
|||||||
"Timp lucrat": "Отработано",
|
"Timp lucrat": "Отработано",
|
||||||
"Timp mediu": "Среднее время",
|
"Timp mediu": "Среднее время",
|
||||||
"Timp total": "Общее время",
|
"Timp total": "Общее время",
|
||||||
"Tinichigerie": "Кузовной цех",
|
"Tinichigerie": "Кузовной",
|
||||||
"Tinichigerie / Detailing": "Кузов / Детейлинг",
|
"Tinichigerie / Detailing": "Кузов / Детейлинг",
|
||||||
"Tip": "Тип",
|
"Tip": "Тип",
|
||||||
"Tip daună": "Тип повреждения",
|
"Tip daună": "Тип повреждения",
|
||||||
@@ -1997,6 +2000,7 @@
|
|||||||
"Vizualizează": "Просмотр",
|
"Vizualizează": "Просмотр",
|
||||||
"Vizualizări": "Просмотры",
|
"Vizualizări": "Просмотры",
|
||||||
"Vopsire": "Покраска",
|
"Vopsire": "Покраска",
|
||||||
|
"Vopsitorie": "Покраска",
|
||||||
"Vânzări": "Vânzări",
|
"Vânzări": "Vânzări",
|
||||||
"Vârstă max (ani)": "Макс. возраст (лет)",
|
"Vârstă max (ani)": "Макс. возраст (лет)",
|
||||||
"Vârstă min (ani)": "Мин. возраст (лет)",
|
"Vârstă min (ani)": "Мин. возраст (лет)",
|
||||||
|
|||||||
@@ -179,7 +179,7 @@
|
|||||||
@forelse ($data['rows'] as $r)
|
@forelse ($data['rows'] as $r)
|
||||||
<tr>
|
<tr>
|
||||||
<td class="rp-bold">{{ $r['name'] }}</td>
|
<td class="rp-bold">{{ $r['name'] }}</td>
|
||||||
<td style="color:#6b7280">{{ $r['specialization'] ?? '—' }}</td>
|
<td style="color:#6b7280">{{ $r['specialization'] ? implode(' / ', array_map(fn($p) => __(trim($p)), explode('/', $r['specialization']))) : '—' }}</td>
|
||||||
<td class="rp-right">{{ $r['works'] }}</td>
|
<td class="rp-right">{{ $r['works'] }}</td>
|
||||||
<td class="rp-right">{{ number_format($r['hours'], 1) }}</td>
|
<td class="rp-right">{{ number_format($r['hours'], 1) }}</td>
|
||||||
<td class="rp-right rp-bold rp-success">{{ number_format($r['revenue'], 2, '.', ' ') }}</td>
|
<td class="rp-right rp-bold rp-success">{{ number_format($r['revenue'], 2, '.', ' ') }}</td>
|
||||||
|
|||||||
Reference in New Issue
Block a user