Finanzverwaltung und Saison-System

Neues Einnahmen-/Ausgaben-Modul mit Kategorie-Filter, Monats-Charts und
Saison-basierter Filterung. Saison-Verwaltung im Admin-Bereich mit
Möglichkeit zum Wechsel der aktuellen Saison.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Rhino
2026-03-02 23:48:20 +01:00
parent 480e2284ba
commit 4eaf2368af
18 changed files with 1270 additions and 1 deletions

View File

@@ -566,6 +566,9 @@ return [
'stats_total_shots' => 'إجمالي التسديدات',
'stats_gk_appearances' => 'مباريات كحارس',
'stats_total_saves' => 'إجمالي التصديات',
'stats_penalties' => 'رميات جزاء',
'stats_cards' => 'عقوبات',
'stats_avg_time' => '⌀ وقت اللعب',
'stats_close' => 'إغلاق',
'player_goals' => 'أهداف',
@@ -576,4 +579,52 @@ return [
'performance_good' => 'جيد',
'performance_average' => 'متوسط',
'performance_below' => 'أقل من المتوسط',
// المالية
'nav_finances' => 'المالية',
'finances_title' => 'المالية',
'new_finance' => 'إدخال جديد',
'finance_edit' => 'تعديل الإدخال',
'finance_created' => 'تم إنشاء الإدخال بنجاح.',
'finance_updated' => 'تم تحديث الإدخال بنجاح.',
'finance_deleted' => 'تم حذف الإدخال بنجاح.',
'finance_income' => 'إيراد',
'finance_expense' => 'مصروف',
'finance_type' => 'النوع',
'finance_category' => 'الفئة',
'finance_title' => 'العنوان',
'finance_amount' => 'المبلغ',
'finance_date' => 'التاريخ',
'finance_notes' => 'ملاحظات',
'finance_no_team' => 'بدون فريق (عام)',
'finance_total_income' => 'إجمالي الإيرادات',
'finance_total_expense' => 'إجمالي المصروفات',
'finance_balance' => 'الرصيد',
'finance_no_entries' => 'لا توجد إدخالات بعد.',
'finance_chart_monthly' => 'نظرة شهرية',
'finance_chart_categories' => 'التوزيع حسب الفئة',
'finance_confirm_delete' => 'هل تريد حذف هذا الإدخال حقاً؟',
'finance_all_types' => 'جميع الأنواع',
'finance_all_categories' => 'جميع الفئات',
// المواسم
'season' => 'الموسم',
'seasons_title' => 'المواسم',
'season_name' => 'الاسم',
'season_start' => 'تاريخ البداية',
'season_end' => 'تاريخ النهاية',
'season_current' => 'الموسم الحالي',
'season_created' => 'تم إنشاء الموسم.',
'season_updated' => 'تم تحديث الموسم.',
'season_deleted' => 'تم حذف الموسم.',
'season_has_data' => 'لا يمكن حذف الموسم (توجد بيانات مالية).',
'season_confirm_delete' => 'هل تريد حذف هذا الموسم حقاً؟',
'all_seasons' => 'جميع المواسم',
'no_seasons_yet' => 'لا توجد مواسم بعد.',
'new_season' => 'إنشاء موسم جديد',
'settings_tab_seasons' => 'المواسم',
'filter_year' => 'السنة',
// الرؤية
'visibility_feature_finances' => 'المالية',
];

View File

@@ -602,6 +602,9 @@ return [
'stats_total_shots' => 'Gesamtwürfe',
'stats_gk_appearances' => 'TW-Einsätze',
'stats_total_saves' => 'Gesamtparaden',
'stats_penalties' => '7-Meter',
'stats_cards' => 'Strafen',
'stats_avg_time' => '⌀ Spielzeit',
'stats_close' => 'Schließen',
'player_goals' => 'Tore',
@@ -612,4 +615,52 @@ return [
'performance_good' => 'Gut',
'performance_average' => 'Mittel',
'performance_below' => 'Unterdurchschnittlich',
// Finanzen
'nav_finances' => 'Finanzen',
'finances_title' => 'Finanzen',
'new_finance' => 'Neuer Eintrag',
'finance_edit' => 'Eintrag bearbeiten',
'finance_created' => 'Eintrag erfolgreich erstellt.',
'finance_updated' => 'Eintrag erfolgreich aktualisiert.',
'finance_deleted' => 'Eintrag erfolgreich gelöscht.',
'finance_income' => 'Einnahme',
'finance_expense' => 'Ausgabe',
'finance_type' => 'Typ',
'finance_category' => 'Kategorie',
'finance_title' => 'Bezeichnung',
'finance_amount' => 'Betrag',
'finance_date' => 'Datum',
'finance_notes' => 'Notizen',
'finance_no_team' => 'Kein Team (vereinsübergreifend)',
'finance_total_income' => 'Einnahmen gesamt',
'finance_total_expense' => 'Ausgaben gesamt',
'finance_balance' => 'Bilanz',
'finance_no_entries' => 'Noch keine Einträge vorhanden.',
'finance_chart_monthly' => 'Monatliche Übersicht',
'finance_chart_categories' => 'Aufschlüsselung nach Kategorie',
'finance_confirm_delete' => 'Diesen Eintrag wirklich löschen?',
'finance_all_types' => 'Alle Typen',
'finance_all_categories' => 'Alle Kategorien',
// Saisons
'season' => 'Saison',
'seasons_title' => 'Saisons',
'season_name' => 'Name',
'season_start' => 'Startdatum',
'season_end' => 'Enddatum',
'season_current' => 'Aktuelle Saison',
'season_created' => 'Saison erstellt.',
'season_updated' => 'Saison aktualisiert.',
'season_deleted' => 'Saison gelöscht.',
'season_has_data' => 'Saison kann nicht gelöscht werden (Finanzdaten vorhanden).',
'season_confirm_delete' => 'Diese Saison wirklich löschen?',
'all_seasons' => 'Alle Saisons',
'no_seasons_yet' => 'Noch keine Saisons angelegt.',
'new_season' => 'Neue Saison anlegen',
'settings_tab_seasons' => 'Saisons',
'filter_year' => 'Jahr',
// Sichtbarkeit
'visibility_feature_finances' => 'Finanzen',
];

View File

@@ -565,6 +565,9 @@ return [
'stats_total_shots' => 'Total shots',
'stats_gk_appearances' => 'GK appearances',
'stats_total_saves' => 'Total saves',
'stats_penalties' => 'Penalties',
'stats_cards' => 'Cards',
'stats_avg_time' => 'Avg. time',
'stats_close' => 'Close',
'player_goals' => 'Goals',
@@ -575,4 +578,52 @@ return [
'performance_good' => 'Good',
'performance_average' => 'Average',
'performance_below' => 'Below average',
// Finances
'nav_finances' => 'Finances',
'finances_title' => 'Finances',
'new_finance' => 'New Entry',
'finance_edit' => 'Edit Entry',
'finance_created' => 'Entry created successfully.',
'finance_updated' => 'Entry updated successfully.',
'finance_deleted' => 'Entry deleted successfully.',
'finance_income' => 'Income',
'finance_expense' => 'Expense',
'finance_type' => 'Type',
'finance_category' => 'Category',
'finance_title' => 'Title',
'finance_amount' => 'Amount',
'finance_date' => 'Date',
'finance_notes' => 'Notes',
'finance_no_team' => 'No team (club-wide)',
'finance_total_income' => 'Total Income',
'finance_total_expense' => 'Total Expenses',
'finance_balance' => 'Balance',
'finance_no_entries' => 'No entries yet.',
'finance_chart_monthly' => 'Monthly Overview',
'finance_chart_categories' => 'Breakdown by Category',
'finance_confirm_delete' => 'Really delete this entry?',
'finance_all_types' => 'All Types',
'finance_all_categories' => 'All Categories',
// Seasons
'season' => 'Season',
'seasons_title' => 'Seasons',
'season_name' => 'Name',
'season_start' => 'Start Date',
'season_end' => 'End Date',
'season_current' => 'Current Season',
'season_created' => 'Season created.',
'season_updated' => 'Season updated.',
'season_deleted' => 'Season deleted.',
'season_has_data' => 'Season cannot be deleted (financial data exists).',
'season_confirm_delete' => 'Really delete this season?',
'all_seasons' => 'All Seasons',
'no_seasons_yet' => 'No seasons created yet.',
'new_season' => 'Create New Season',
'settings_tab_seasons' => 'Seasons',
'filter_year' => 'Year',
// Visibility
'visibility_feature_finances' => 'Finances',
];

View File

@@ -566,6 +566,9 @@ return [
'stats_total_shots' => 'Łączne rzuty',
'stats_gk_appearances' => 'Występy jako bramkarz',
'stats_total_saves' => 'Łączne obrony',
'stats_penalties' => 'Rzuty karne',
'stats_cards' => 'Kary',
'stats_avg_time' => '⌀ Czas gry',
'stats_close' => 'Zamknij',
'player_goals' => 'Bramki',
@@ -576,4 +579,52 @@ return [
'performance_good' => 'Dobrze',
'performance_average' => 'Średnio',
'performance_below' => 'Poniżej średniej',
// Finanse
'nav_finances' => 'Finanse',
'finances_title' => 'Finanse',
'new_finance' => 'Nowy wpis',
'finance_edit' => 'Edytuj wpis',
'finance_created' => 'Wpis został utworzony.',
'finance_updated' => 'Wpis został zaktualizowany.',
'finance_deleted' => 'Wpis został usunięty.',
'finance_income' => 'Przychód',
'finance_expense' => 'Wydatek',
'finance_type' => 'Typ',
'finance_category' => 'Kategoria',
'finance_title' => 'Nazwa',
'finance_amount' => 'Kwota',
'finance_date' => 'Data',
'finance_notes' => 'Notatki',
'finance_no_team' => 'Bez zespołu (ogólne)',
'finance_total_income' => 'Suma przychodów',
'finance_total_expense' => 'Suma wydatków',
'finance_balance' => 'Bilans',
'finance_no_entries' => 'Brak wpisów.',
'finance_chart_monthly' => 'Przegląd miesięczny',
'finance_chart_categories' => 'Podział na kategorie',
'finance_confirm_delete' => 'Czy na pewno usunąć ten wpis?',
'finance_all_types' => 'Wszystkie typy',
'finance_all_categories' => 'Wszystkie kategorie',
// Sezony
'season' => 'Sezon',
'seasons_title' => 'Sezony',
'season_name' => 'Nazwa',
'season_start' => 'Data rozpoczęcia',
'season_end' => 'Data zakończenia',
'season_current' => 'Bieżący sezon',
'season_created' => 'Sezon utworzony.',
'season_updated' => 'Sezon zaktualizowany.',
'season_deleted' => 'Sezon usunięty.',
'season_has_data' => 'Nie można usunąć sezonu (istnieją dane finansowe).',
'season_confirm_delete' => 'Czy na pewno usunąć ten sezon?',
'all_seasons' => 'Wszystkie sezony',
'no_seasons_yet' => 'Brak sezonów.',
'new_season' => 'Utwórz nowy sezon',
'settings_tab_seasons' => 'Sezony',
'filter_year' => 'Rok',
// Widoczność
'visibility_feature_finances' => 'Finanse',
];

View File

@@ -584,6 +584,9 @@ return [
'stats_total_shots' => 'Всего бросков',
'stats_gk_appearances' => 'Игры вратарём',
'stats_total_saves' => 'Всего отражений',
'stats_penalties' => 'Пенальти',
'stats_cards' => 'Наказания',
'stats_avg_time' => '⌀ Время',
'stats_close' => 'Закрыть',
'player_goals' => 'Голы',
@@ -594,4 +597,52 @@ return [
'performance_good' => 'Хорошо',
'performance_average' => 'Средне',
'performance_below' => 'Ниже среднего',
// Финансы
'nav_finances' => 'Финансы',
'finances_title' => 'Финансы',
'new_finance' => 'Новая запись',
'finance_edit' => 'Редактировать запись',
'finance_created' => 'Запись успешно создана.',
'finance_updated' => 'Запись успешно обновлена.',
'finance_deleted' => 'Запись успешно удалена.',
'finance_income' => 'Доход',
'finance_expense' => 'Расход',
'finance_type' => 'Тип',
'finance_category' => 'Категория',
'finance_title' => 'Название',
'finance_amount' => 'Сумма',
'finance_date' => 'Дата',
'finance_notes' => 'Заметки',
'finance_no_team' => 'Без команды (общее)',
'finance_total_income' => 'Всего доходов',
'finance_total_expense' => 'Всего расходов',
'finance_balance' => 'Баланс',
'finance_no_entries' => 'Записей пока нет.',
'finance_chart_monthly' => 'Месячный обзор',
'finance_chart_categories' => 'По категориям',
'finance_confirm_delete' => 'Действительно удалить эту запись?',
'finance_all_types' => 'Все типы',
'finance_all_categories' => 'Все категории',
// Сезоны
'season' => 'Сезон',
'seasons_title' => 'Сезоны',
'season_name' => 'Название',
'season_start' => 'Дата начала',
'season_end' => 'Дата окончания',
'season_current' => 'Текущий сезон',
'season_created' => 'Сезон создан.',
'season_updated' => 'Сезон обновлён.',
'season_deleted' => 'Сезон удалён.',
'season_has_data' => 'Сезон нельзя удалить (есть финансовые данные).',
'season_confirm_delete' => 'Действительно удалить этот сезон?',
'all_seasons' => 'Все сезоны',
'no_seasons_yet' => 'Сезоны ещё не созданы.',
'new_season' => 'Создать новый сезон',
'settings_tab_seasons' => 'Сезоны',
'filter_year' => 'Год',
// Видимость
'visibility_feature_finances' => 'Финансы',
];

View File

@@ -584,6 +584,9 @@ return [
'stats_total_shots' => 'Toplam atışlar',
'stats_gk_appearances' => 'Kaleci maçları',
'stats_total_saves' => 'Toplam kurtarışlar',
'stats_penalties' => 'Penaltılar',
'stats_cards' => 'Cezalar',
'stats_avg_time' => '⌀ Süre',
'stats_close' => 'Kapat',
'player_goals' => 'Goller',
@@ -594,4 +597,52 @@ return [
'performance_good' => 'İyi',
'performance_average' => 'Orta',
'performance_below' => 'Ortalamanın altı',
// Finans
'nav_finances' => 'Finans',
'finances_title' => 'Finans',
'new_finance' => 'Yeni Kayıt',
'finance_edit' => 'Kaydı Düzenle',
'finance_created' => 'Kayıt başarıyla oluşturuldu.',
'finance_updated' => 'Kayıt başarıyla güncellendi.',
'finance_deleted' => 'Kayıt başarıyla silindi.',
'finance_income' => 'Gelir',
'finance_expense' => 'Gider',
'finance_type' => 'Tür',
'finance_category' => 'Kategori',
'finance_title' => 'Başlık',
'finance_amount' => 'Tutar',
'finance_date' => 'Tarih',
'finance_notes' => 'Notlar',
'finance_no_team' => 'Takım yok (genel)',
'finance_total_income' => 'Toplam Gelir',
'finance_total_expense' => 'Toplam Gider',
'finance_balance' => 'Bilanço',
'finance_no_entries' => 'Henüz kayıt yok.',
'finance_chart_monthly' => 'Aylık Genel Bakış',
'finance_chart_categories' => 'Kategoriye Göre Dağılım',
'finance_confirm_delete' => 'Bu kaydı gerçekten silmek istiyor musunuz?',
'finance_all_types' => 'Tüm Türler',
'finance_all_categories' => 'Tüm Kategoriler',
// Sezonlar
'season' => 'Sezon',
'seasons_title' => 'Sezonlar',
'season_name' => 'Ad',
'season_start' => 'Başlangıç Tarihi',
'season_end' => 'Bitiş Tarihi',
'season_current' => 'Mevcut Sezon',
'season_created' => 'Sezon oluşturuldu.',
'season_updated' => 'Sezon güncellendi.',
'season_deleted' => 'Sezon silindi.',
'season_has_data' => 'Sezon silinemez (finansal veriler mevcut).',
'season_confirm_delete' => 'Bu sezonu gerçekten silmek istiyor musunuz?',
'all_seasons' => 'Tüm Sezonlar',
'no_seasons_yet' => 'Henüz sezon oluşturulmamış.',
'new_season' => 'Yeni Sezon Oluştur',
'settings_tab_seasons' => 'Sezonlar',
'filter_year' => 'Yıl',
// Görünürlük
'visibility_feature_finances' => 'Finans',
];