From c0bfe974ade8dc3ac77c44b5f65a3ab37c50583a Mon Sep 17 00:00:00 2001 From: Mekan1206 Date: Sun, 21 Dec 2025 04:20:45 +0500 Subject: [PATCH] Add avatar functionality to User model - Implemented HasAvatar contract in User model to support avatar management. - Added getFilamentAvatarUrl method to return the default avatar URL. --- app/Models/User.php | 11 ++++++++++- public/assets/images/avatar.png | Bin 0 -> 1372 bytes 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 public/assets/images/avatar.png diff --git a/app/Models/User.php b/app/Models/User.php index 73c3889..a2e83f5 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -6,6 +6,7 @@ use App\Modules\UserAdjustments\Traits\UserAdjustments; use Filament\Models\Contracts\FilamentUser; use Filament\Panel; use Illuminate\Database\Eloquent\Factories\HasFactory; +use Filament\Models\Contracts\HasAvatar; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Illuminate\Support\Facades\Date; @@ -20,7 +21,7 @@ use Illuminate\Support\Facades\Date; * @property Date|null $created_at * @property Date|null $updated_at */ -class User extends Authenticatable implements FilamentUser +class User extends Authenticatable implements FilamentUser, HasAvatar { /** @use HasFactory<\Database\Factories\UserFactory> */ use HasFactory; @@ -56,4 +57,12 @@ class User extends Authenticatable implements FilamentUser { return true; } + + /** + * Get the avatar URL for the user. + */ + public function getFilamentAvatarUrl(): ?string + { + return '/assets/images/avatar.png'; + } } diff --git a/public/assets/images/avatar.png b/public/assets/images/avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..cc69a0d26ab830969386bbbede6f520efde8e6b2 GIT binary patch literal 1372 zcmV-i1*7_jP)j8yFeO+Q6 zs5Akd&Cy|{hueVu z9^P5>Y+ey71m;=M>=J<6ywtR(%6K6#uR@pvSYTNZuV>4Gtz~`9ZD0$%_O+(n{=I%+ zO_Apo&~D%kEsE~j53{v^sRr)EM$=9iV@8!R5zJG{u%{cmKc3Pu1AL^6iC`LK%<%^9 zj85Cm4GHG)5KjQWXG4NH4!S+-uuO&fBNo7BAn>{_hJ4@bO@u<&QQ)2e&ON~jW}%uu z&+D`y659kG1`g6|4w?G|!flB~{oz4eIZ9|d3VdgbxsF@aJp+ET*1m!MBpAch&{h}*+k*8x0MBc^09wo8x4_rHNPwmA2yjbc zXmH&E+CA`j1;AwrmZ{`SM2GjABV~NvTHD_dnxmXO1}3ewFH7R=YZ7BpVwSPF9w5L3 z#WT4891i`<$2BGm1rv1(MJb4taU^x5a(1yayvc0Eem)@9{n) zT=H;_Js8PzH1<2ttXjOsy(yfsaF0J46QC@IqyGTss}>!Tg!95}KmPHDqXLrUc>H$N zVpEcEdmrxU$KwK$Rv@tn9IIMrN&=3NzQL1TAmITemB`$wT4aVK+)3b`twcsZI_xcy z+C|3BIy-Jo6D_*RS0p7sab&`QhHtS# zNe?)#RCXB{t6H?jag6u{Qn^xD0Z%HHegT}Rf%r4RCCX2ySlUZM+>@|_8+(sbApD5L z-iiC=vxv`}0553Lg^4b39l3@VSh$f`-54HWE=)uSq+OYL1Y8c02oZi+V#LJ`e`Ura z(;>Z{cpdl_xL76`BKo3Wr7hG7Uz#d)bJQ3!4SWN9nDVigxUu;u@V5x*T5ESASWVn% z?Md9J&^h39Np_O`0o=0I-Y=>_;$UYO_AYaLRJuXg05;2rlXaDz?r-LNm eKLKifeg0og64E9L*^43o0000