diff --git a/app/Nova/BitcoinEvent.php b/app/Nova/BitcoinEvent.php index 40cf314d..9cc49bb3 100644 --- a/app/Nova/BitcoinEvent.php +++ b/app/Nova/BitcoinEvent.php @@ -49,23 +49,22 @@ class BitcoinEvent extends Resource Images::make(__('Logo'), 'logo') ->conversionOnIndexView('thumb'), - DateTime::make('From') + DateTime::make(__('From'), 'from') ->rules('required'), - DateTime::make('To') + DateTime::make(__('To'), 'to') ->rules('required'), - Text::make('Title') + Text::make(__('Title'), 'title') ->rules('required', 'string'), - Text::make('Description') + Text::make(__('Description'), 'description') ->rules('required', 'string')->hideFromIndex(), Text::make('Link') ->rules('required', 'string'), - BelongsTo::make('Venue'), - + BelongsTo::make(__('Venue'), 'venue', Venue::class)->searchable(), ]; } diff --git a/app/Nova/BookCase.php b/app/Nova/BookCase.php index 5a6638dc..caf83858 100644 --- a/app/Nova/BookCase.php +++ b/app/Nova/BookCase.php @@ -23,7 +23,6 @@ class BookCase extends Resource * @var string */ public static $title = 'title'; - /** * The columns that should be searched. * @var array @@ -33,6 +32,11 @@ class BookCase extends Resource 'title', ]; + public static function label() + { + return __('Book Case'); + } + /** * Get the fields displayed by the resource. * diff --git a/app/Nova/Course.php b/app/Nova/Course.php index 19972132..67a2abc4 100644 --- a/app/Nova/Course.php +++ b/app/Nova/Course.php @@ -28,6 +28,16 @@ class Course extends Resource */ public static $title = 'name'; + public static function label() + { + return __('Course'); + } + + public static function singularLabel() + { + return __('Course'); + } + /** * The columns that should be searched. * @var array diff --git a/app/Nova/CourseEvent.php b/app/Nova/CourseEvent.php index aa068d7b..c6cd93cb 100644 --- a/app/Nova/CourseEvent.php +++ b/app/Nova/CourseEvent.php @@ -43,6 +43,11 @@ class CourseEvent extends Resource return $this->from.' - '.$this->venue->name.' - '.$this->course->name; } + public static function label() + { + return __('Course Event'); + } + /** * Get the fields displayed by the resource. * @@ -59,19 +64,19 @@ class CourseEvent extends Resource URL::make('Link') ->rules('required', 'url'), - DateTime::make('From') + DateTime::make(__('From'), 'from') ->rules('required') ->step(CarbonInterval::minutes(30)) ->displayUsing(fn($value) => $value->asDateTime()), - DateTime::make('To') + DateTime::make(__('To'), 'to') ->rules('required') ->step(CarbonInterval::minutes(30)) ->displayUsing(fn($value) => $value->asDateTime()), - BelongsTo::make('Course'), + BelongsTo::make(__('Course'), 'course', Course::class), - BelongsTo::make('Venue') + BelongsTo::make(__('Venue'), 'venue', Venue::class) ->searchable(), ]; diff --git a/app/Nova/Library.php b/app/Nova/Library.php index 5969c683..f64e2b4d 100644 --- a/app/Nova/Library.php +++ b/app/Nova/Library.php @@ -23,6 +23,11 @@ class Library extends Resource */ public static $title = 'name'; + public static function label() + { + return __('Library'); + } + /** * The columns that should be searched. * @var array @@ -48,10 +53,10 @@ class Library extends Resource Text::make('Name') ->rules('required', 'string'), - Boolean::make('Is public', 'is_public') + Boolean::make(__('Is public'), 'is_public') ->rules('required', 'boolean'), - MultiSelect::make('Languages', 'language_codes') + MultiSelect::make(__('Languages'), 'language_codes') ->options( config('languages.languages'), ), diff --git a/app/Nova/LibraryItem.php b/app/Nova/LibraryItem.php index e132523f..c2152d2b 100644 --- a/app/Nova/LibraryItem.php +++ b/app/Nova/LibraryItem.php @@ -29,6 +29,11 @@ class LibraryItem extends Resource */ public static $title = 'name'; + public static function label() + { + return __('Library Item'); + } + /** * The columns that should be searched. * @var array @@ -51,17 +56,17 @@ class LibraryItem extends Resource ID::make() ->sortable(), - Images::make('Main picture', 'main') + Images::make(__('Main picture'), 'main') ->conversionOnIndexView('thumb'), - Images::make('Images', 'images') + Images::make(__('Images'), 'images') ->conversionOnIndexView('thumb') ->help('Lade hier Bilder hoch, um sie eventuell später in der Markdown Description einzufügen. Du musst vorher aber Speichern.'), - Files::make('Downloadable File', 'single_file') + Files::make(__('Downloadable File'), 'single_file') ->help('Für neue Datei-Typen bitte bei den Admins melden. (Derzeit: PDF)'), - Select::make('Language Code', 'language_code') + Select::make(__('Language Code'), 'language_code') ->options( config('languages.languages') ) @@ -74,21 +79,21 @@ class LibraryItem extends Resource Text::make('Name') ->rules('required', 'string'), - Select::make('Type') + Select::make(__('Type')) ->options( Options::forEnum(LibraryItemType::class)->toArray() ) ->rules('required', 'string'), - Code::make('Value') + Code::make(__('Value')) ->rules('nullable', 'string') ->help('Hier bitte die URL zum Video einfügen, oder den Link zum Blog-Artikel, oder den Link zum Buch, oder das Markdown selbst einfügen.'), BelongsTo::make(__('Lecturer/Content Creator'), 'lecturer', Lecturer::class), - BelongsTo::make('Episode')->nullable(), + BelongsTo::make(__('Episode'), 'episode', Episode::class)->nullable(), - BelongsToMany::make('Library', 'libraries', Library::class), + BelongsToMany::make(__('Library'), 'libraries', Library::class), ]; } diff --git a/app/Nova/Podcast.php b/app/Nova/Podcast.php index 95548f2f..60df6dfb 100644 --- a/app/Nova/Podcast.php +++ b/app/Nova/Podcast.php @@ -49,14 +49,14 @@ class Podcast extends Resource ID::make() ->sortable(), - Avatar::make('Image') + Avatar::make(__('Image')) ->squared() ->thumbnail(function () { return $this?->data['image'] ?? ''; }) ->exceptOnForms(), - Boolean::make('Locked', 'locked', fn($value) => $value ?? false), + Boolean::make(__('Locked'), 'locked', fn($value) => $value ?? false), Text::make('Guid', 'guid', function ($value) use ($guid) { if ($value) { @@ -66,20 +66,20 @@ class Podcast extends Resource } }), - Text::make('Title') + Text::make(__('Title'), 'title') ->rules('required', 'string'), - Text::make('Language Code') + Text::make(__('Language Code'), 'language_code') ->rules('required', 'string'), Text::make('Link') ->rules('required', 'string'), - Code::make('Data') + Code::make(__('Data'), 'data') ->rules('required', 'json') ->json(), - HasMany::make('Episodes'), + HasMany::make(__('Episodes'), 'episodes', Episode::class), ]; } diff --git a/app/Providers/NovaServiceProvider.php b/app/Providers/NovaServiceProvider.php index 876acace..1f0bb414 100644 --- a/app/Providers/NovaServiceProvider.php +++ b/app/Providers/NovaServiceProvider.php @@ -18,9 +18,7 @@ use App\Nova\LibraryItem; use App\Nova\Meetup; use App\Nova\MeetupEvent; use App\Nova\OrangePill; -use App\Nova\Participant; use App\Nova\Podcast; -use App\Nova\Registration; use App\Nova\Tag; use App\Nova\Team; use App\Nova\User; @@ -44,7 +42,8 @@ class NovaServiceProvider extends NovaApplicationServiceProvider parent::boot(); Nova::mainMenu(function (Request $request) { - $adminItems = $request->user()->hasRole('super-admin') ? + $adminItems = $request->user() + ->hasRole('super-admin') ? [ MenuSection::make('Comments', [ @@ -107,8 +106,8 @@ class NovaServiceProvider extends NovaApplicationServiceProvider MenuSection::make('Schule', [ MenuItem::resource(Course::class), MenuItem::resource(CourseEvent::class), - MenuItem::resource(Participant::class), - MenuItem::resource(Registration::class), + // MenuItem::resource(Participant::class), + // MenuItem::resource(Registration::class), ]) ->icon('academic-cap') ->collapsable(), diff --git a/lang/de.json b/lang/de.json index 63e48a8f..d08d27f7 100644 --- a/lang/de.json +++ b/lang/de.json @@ -1,13 +1,26 @@ { "Orange Pill Book Case": "Wie viele Bitcoin-Bücher hast du hinzu gefügt?", + "Title": "Titel", "Book": "Buch", "Course Events": "Kurs-Termine", "Course": "Kurs", + "Course Event": "Kurs-Termin", "Bookcase": "Bücher-Schrank", "Article": "Artikel", + "Book Case": "Bücher-Schrank", + "Image": "Bild", + "Address": "Adresse", + "Main picture": "Haupt Bild", + "Language Code": "Sprach Code", + "Locked": "Gesperrt", + "Deactivated": "Deaktiviert", + "Library": "Bibliothek", "Libraries": "Bibliotheken", + "Library Item": "Bibliothekseintrag", "Library Items": "Bibliothekseinträge", "Images": "Bilder", + "Languages": "Sprachen", + "Is public": "Öffentlich", "Episodes": "Episoden", "Book Cases": "Bücher-Schränke", "Inputs": "Eingaben",