From 2659aae2784e326965851f42fd2cad4591360b38 Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Thu, 13 Nov 2025 22:46:19 +0500 Subject: [PATCH] Refactor CurrencyRateResource and VisaMasterSettings: remove unnecessary whitespace, add property annotations, and define possible setting types. Update Turkish translations for warning text and content. --- .../CurrencyRates/CurrencyRateResource.php | 2 - .../Pages/CreateVisaMasterSettings.php | 11 +++ .../Pages/EditVisaMasterSettings.php | 19 ++++++ .../Pages/ListVisaMasterSettings.php | 19 ++++++ .../Schemas/VisaMasterSettingsForm.php | 37 ++++++++++ .../Tables/VisaMasterSettingsTable.php | 42 ++++++++++++ .../VisaMasterSettingsResource.php | 68 +++++++++++++++++++ .../Models/VisaMasterSettings.php | 18 +++++ lang/tk.json | 4 +- 9 files changed, 217 insertions(+), 3 deletions(-) create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/CreateVisaMasterSettings.php create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/EditVisaMasterSettings.php create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/ListVisaMasterSettings.php create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Schemas/VisaMasterSettingsForm.php create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Tables/VisaMasterSettingsTable.php create mode 100644 app/Filament/Clusters/Settings/Resources/VisaMasterSettings/VisaMasterSettingsResource.php diff --git a/app/Filament/Clusters/Settings/Resources/CurrencyRates/CurrencyRateResource.php b/app/Filament/Clusters/Settings/Resources/CurrencyRates/CurrencyRateResource.php index 458fe5d..264712b 100644 --- a/app/Filament/Clusters/Settings/Resources/CurrencyRates/CurrencyRateResource.php +++ b/app/Filament/Clusters/Settings/Resources/CurrencyRates/CurrencyRateResource.php @@ -23,7 +23,6 @@ class CurrencyRateResource extends Resource protected static ?string $cluster = SettingsCluster::class; - protected static ?string $recordTitleAttribute = 'name'; public static function getNavigationGroup(): ?string @@ -41,7 +40,6 @@ class CurrencyRateResource extends Resource return __('Currency rates'); } - public static function form(Schema $schema): Schema { return CurrencyRateForm::configure($schema); diff --git a/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/CreateVisaMasterSettings.php b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/CreateVisaMasterSettings.php new file mode 100644 index 0000000..13134c1 --- /dev/null +++ b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Pages/CreateVisaMasterSettings.php @@ -0,0 +1,11 @@ +components([ + Select::make('name') + ->label(__('Type')) + ->options(VisaMasterSettings::types()) + ->native(false) + ->required(), + + TextInput::make('display_name') + ->label(__('Name')) + ->required() + ->string() + ->maxLength(255) + ->readonly(! user()->isMe()), + + RichEditor::make('value') + ->label(__('Content')) + ->required() + ->columnSpanFull(), + ]); + } +} diff --git a/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Tables/VisaMasterSettingsTable.php b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Tables/VisaMasterSettingsTable.php new file mode 100644 index 0000000..8f85364 --- /dev/null +++ b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/Tables/VisaMasterSettingsTable.php @@ -0,0 +1,42 @@ +columns([ + TextColumn::make('name') + ->searchable(), + TextColumn::make('display_name') + ->searchable(), + TextColumn::make('created_at') + ->dateTime() + ->sortable() + ->toggleable(isToggledHiddenByDefault: true), + TextColumn::make('updated_at') + ->dateTime() + ->sortable() + ->toggleable(isToggledHiddenByDefault: true), + ]) + ->filters([ + // + ]) + ->recordActions([ + EditAction::make(), + ]) + ->toolbarActions([ + BulkActionGroup::make([ + DeleteBulkAction::make(), + ]), + ]); + } +} diff --git a/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/VisaMasterSettingsResource.php b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/VisaMasterSettingsResource.php new file mode 100644 index 0000000..dd0ff21 --- /dev/null +++ b/app/Filament/Clusters/Settings/Resources/VisaMasterSettings/VisaMasterSettingsResource.php @@ -0,0 +1,68 @@ + ListVisaMasterSettings::route('/'), + 'create' => CreateVisaMasterSettings::route('/create'), + 'edit' => EditVisaMasterSettings::route('/{record}/edit'), + ]; + } +} diff --git a/app/Modules/VisaMasterPaymentOrder/Models/VisaMasterSettings.php b/app/Modules/VisaMasterPaymentOrder/Models/VisaMasterSettings.php index d9035ab..6900d71 100644 --- a/app/Modules/VisaMasterPaymentOrder/Models/VisaMasterSettings.php +++ b/app/Modules/VisaMasterPaymentOrder/Models/VisaMasterSettings.php @@ -4,7 +4,25 @@ namespace App\Modules\VisaMasterPaymentOrder\Models; use Illuminate\Database\Eloquent\Model; +/** + * @property int $id + * @property string $name + * @property string $display_name + * @property string $value + */ class VisaMasterSettings extends Model { protected $table = 'visa_master_settings'; + + /** + * The possible types of settings. + * + * @return array + */ + public static function types(): array + { + return [ + 'payment_warning_text' => __('Warning text'), + ]; + } } diff --git a/lang/tk.json b/lang/tk.json index ee28588..7f5c371 100644 --- a/lang/tk.json +++ b/lang/tk.json @@ -709,5 +709,7 @@ "Currency from": "Walýuta girişi", "Currency to": "Walýuta çykýan", "Currency value": "Kursy", - "Currency rates": "Walýuta kurslary" + "Currency rates": "Walýuta kurslary", + "Warning text": "Duýduruş teksti", + "Content": "Mazmuny" }