1.3 from staging #5

Merged
Belupeti merged 6 commits from dev into master 2026-08-22 10:16:40 +02:00
9 changed files with 71 additions and 189 deletions
Showing only changes of commit eca1bf138c - Show all commits
@@ -1,11 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Pages;
use App\Filament\Resources\TlaSuggestions\TlaSuggestionResource;
use Filament\Resources\Pages\CreateRecord;
class CreateTlaSuggestion extends CreateRecord
{
protected static string $resource = TlaSuggestionResource::class;
}
@@ -1,21 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Pages;
use App\Filament\Resources\TlaSuggestions\TlaSuggestionResource;
use Filament\Actions\DeleteAction;
use Filament\Actions\ViewAction;
use Filament\Resources\Pages\EditRecord;
class EditTlaSuggestion extends EditRecord
{
protected static string $resource = TlaSuggestionResource::class;
protected function getHeaderActions(): array
{
return [
ViewAction::make(),
DeleteAction::make(),
];
}
}
@@ -4,9 +4,9 @@ namespace App\Filament\Resources\TlaSuggestions\Pages;
use App\Filament\Resources\TlaSuggestions\TlaSuggestionResource; use App\Filament\Resources\TlaSuggestions\TlaSuggestionResource;
use Filament\Actions\CreateAction; use Filament\Actions\CreateAction;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ManageRecords;
class ListTlaSuggestions extends ListRecords class ManageTlaSuggestions extends ManageRecords
{ {
protected static string $resource = TlaSuggestionResource::class; protected static string $resource = TlaSuggestionResource::class;
@@ -1,19 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Pages;
use App\Filament\Resources\TlaSuggestions\TlaSuggestionResource;
use Filament\Actions\EditAction;
use Filament\Resources\Pages\ViewRecord;
class ViewTlaSuggestion extends ViewRecord
{
protected static string $resource = TlaSuggestionResource::class;
protected function getHeaderActions(): array
{
return [
EditAction::make(),
];
}
}
@@ -1,30 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Schemas;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Textarea;
use Filament\Schemas\Schema;
class TlaSuggestionForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
TextInput::make('acronym')
->required(),
TextInput::make('hint')
->default(null),
Select::make('language')
->options(['hu' => 'Hu', 'en' => 'En'])
->required(),
Textarea::make('context')
->default(null)
->columnSpanFull(),
TextInput::make('submitter')
->default(null),
]);
}
}
@@ -1,32 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Schemas;
use Filament\Infolists\Components\TextEntry;
use Filament\Schemas\Schema;
class TlaSuggestionInfolist
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
TextEntry::make('acronym'),
TextEntry::make('hint')
->placeholder('-'),
TextEntry::make('language')
->badge(),
TextEntry::make('context')
->placeholder('-')
->columnSpanFull(),
TextEntry::make('submitter')
->placeholder('-'),
TextEntry::make('created_at')
->dateTime()
->placeholder('-'),
TextEntry::make('updated_at')
->dateTime()
->placeholder('-'),
]);
}
}
@@ -1,48 +0,0 @@
<?php
namespace App\Filament\Resources\TlaSuggestions\Tables;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Actions\ViewAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class TlaSuggestionsTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('acronym')
->searchable(),
TextColumn::make('hint')
->searchable(),
TextColumn::make('language')
->badge(),
TextColumn::make('submitter')
->searchable(),
TextColumn::make('created_at')
->dateTime()
->sortable()
->toggleable(isToggledHiddenByDefault: true),
TextColumn::make('updated_at')
->dateTime()
->sortable()
->toggleable(isToggledHiddenByDefault: true),
])
->filters([
//
])
->recordActions([
ViewAction::make(),
EditAction::make(),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
}
}
@@ -2,19 +2,22 @@
namespace App\Filament\Resources\TlaSuggestions; namespace App\Filament\Resources\TlaSuggestions;
use App\Filament\Resources\TlaSuggestions\Pages\CreateTlaSuggestion; use App\Filament\Resources\TlaSuggestions\Pages\ManageTlaSuggestions;
use App\Filament\Resources\TlaSuggestions\Pages\EditTlaSuggestion;
use App\Filament\Resources\TlaSuggestions\Pages\ListTlaSuggestions;
use App\Filament\Resources\TlaSuggestions\Pages\ViewTlaSuggestion;
use App\Filament\Resources\TlaSuggestions\Schemas\TlaSuggestionForm;
use App\Filament\Resources\TlaSuggestions\Schemas\TlaSuggestionInfolist;
use App\Filament\Resources\TlaSuggestions\Tables\TlaSuggestionsTable;
use App\Models\TlaSuggestion; use App\Models\TlaSuggestion;
use BackedEnum; use BackedEnum;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Textarea;
use Filament\Resources\Resource; use Filament\Resources\Resource;
use Filament\Schemas\Schema; use Filament\Schemas\Schema;
use Filament\Support\Icons\Heroicon; use Filament\Support\Icons\Heroicon;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table; use Filament\Tables\Table;
use Filament\Actions\Action;
class TlaSuggestionResource extends Resource class TlaSuggestionResource extends Resource
{ {
@@ -22,37 +25,75 @@ class TlaSuggestionResource extends Resource
protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedRectangleStack; protected static string|BackedEnum|null $navigationIcon = Heroicon::OutlinedRectangleStack;
protected static ?string $recordTitleAttribute = 'TlaSuggestion'; protected static ?string $recordTitleAttribute = 'Suggestions';
public static function form(Schema $schema): Schema public static function form(Schema $schema): Schema
{ {
return TlaSuggestionForm::configure($schema); return $schema
} ->components([
TextInput::make('acronym')
public static function infolist(Schema $schema): Schema ->required(),
{ TextInput::make('hint')
return TlaSuggestionInfolist::configure($schema); ->default(null),
Select::make('language')
->options(['hu' => 'Hu', 'en' => 'En'])
->required(),
Textarea::make('context')
->default(null)
->columnSpanFull(),
TextInput::make('submitter')
->default(null),
]);
} }
public static function table(Table $table): Table public static function table(Table $table): Table
{ {
return TlaSuggestionsTable::configure($table); return $table
} ->recordTitleAttribute('Suggestions')
->columns([
public static function getRelations(): array TextColumn::make('acronym')
{ ->searchable(),
return [ TextColumn::make('hint')
->searchable(),
TextColumn::make('language')
->badge(),
TextColumn::make('submitter')
->searchable(),
TextColumn::make('created_at')
->dateTime()
->sortable()
->toggleable(isToggledHiddenByDefault: true),
TextColumn::make('updated_at')
->dateTime()
->sortable()
->toggleable(isToggledHiddenByDefault: true),
])
->filters([
// //
]; ])
->recordActions([
EditAction::make(),
DeleteAction::make(),
Action::make('Approve')
->action(function (Model $record, Collection $selectedRecords) {
$selectedRecords->each(
fn (Model $selectedRecord) => $selectedRecord->update([
'is_active' => $record->is_active,
]),
);
}),
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
} }
public static function getPages(): array public static function getPages(): array
{ {
return [ return [
'index' => ListTlaSuggestions::route('/'), 'index' => ManageTlaSuggestions::route('/'),
'create' => CreateTlaSuggestion::route('/create'),
'view' => ViewTlaSuggestion::route('/{record}'),
'edit' => EditTlaSuggestion::route('/{record}/edit'),
]; ];
} }
} }
+2
View File
@@ -3,9 +3,11 @@
namespace App\Models; namespace App\Models;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
class TlaSuggestion extends Model class TlaSuggestion extends Model
{ {
use HasFactory;
protected $table = 'tla_suggestion'; protected $table = 'tla_suggestion';
protected $fillable = ['acronym', 'hint', 'language', 'context', 'submitter']; protected $fillable = ['acronym', 'hint', 'language', 'context', 'submitter'];