Skip to content

Commit 990f7d1

Browse files
Merge pull request #59 from ludndev/dev/ludndev
Refactor Configuration for Filament Profile Editing and Avatar Handling
2 parents 34bb51a + df19676 commit 990f7d1

File tree

4 files changed

+12
-9
lines changed

4 files changed

+12
-9
lines changed

README.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,8 @@ If needed you can define the disk and visibility of the avatar image. In the con
120120

121121
```php
122122
return [
123-
'disk' => 's3',
124-
'visibility' => 'public',
123+
'disk' => env('FILESYSTEM_DISK', 'public'),
124+
'visibility' => 'public', // or replace by filesystem disk visibility with fallback value
125125
];
126126
```
127127

@@ -147,7 +147,7 @@ protected $fillable = [
147147
'name',
148148
'email',
149149
'password',
150-
'avatar_url',
150+
'avatar_url', // or column name according to config('filament-edit-profile.avatar_column', 'avatar_url')
151151
];
152152
```
153153

@@ -162,7 +162,8 @@ class User extends Authenticatable implements HasAvatar
162162
// ...
163163
public function getFilamentAvatarUrl(): ?string
164164
{
165-
return $this->avatar_url ? Storage::url("$this->avatar_url") : null;
165+
$avatarColumn = config('filament-edit-profile.avatar_column', 'avatar_url');
166+
return $this->$avatarColumn ? Storage::url("$this->$avatarColumn") : null;
166167
}
167168
}
168169
```

config/filament-edit-profile.php

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?php
22

33
return [
4-
4+
'avatar_column' => 'avatar_url',
5+
'disk' => env('FILESYSTEM_DISK', 'public'),
6+
'visibility' => 'public', // or replace by filesystem disk visibility with fallback value
57
];

database/migrations/add_avatar_url_to_users_table.php.stub

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ return new class extends Migration
1212
public function up(): void
1313
{
1414
Schema::table('users', function (Blueprint $table) {
15-
$table->string('avatar_url')->nullable();
15+
$table->string(config('filament-edit-profile.avatar_column', 'avatar_url'))->nullable();
1616
});
1717
}
1818

@@ -22,7 +22,7 @@ return new class extends Migration
2222
public function down(): void
2323
{
2424
Schema::table('users', function (Blueprint $table) {
25-
$table->dropColumn('avatar_url');
25+
$table->dropColumn(config('filament-edit-profile.avatar_column', 'avatar_url'));
2626
});
2727
}
2828
};

src/Livewire/EditProfileForm.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public function mount(): void
2828

2929
$this->userClass = get_class($this->user);
3030

31-
$this->form->fill($this->user->only('avatar_url', 'name', 'email'));
31+
$this->form->fill($this->user->only(config('filament-edit-profile.avatar_column', 'avatar_url'), 'name', 'email'));
3232
}
3333

3434
public function form(Form $form): Form
@@ -39,7 +39,7 @@ public function form(Form $form): Form
3939
->aside()
4040
->description(__('filament-edit-profile::default.profile_information_description'))
4141
->schema([
42-
FileUpload::make('avatar_url')
42+
FileUpload::make(config('filament-edit-profile.avatar_column', 'avatar_url'))
4343
->label(__('filament-edit-profile::default.avatar'))
4444
->avatar()
4545
->imageEditor()

0 commit comments

Comments
 (0)