Files
Epicnabbo-Catalogus-Updated…/Updated_Cms/app/Filament/Tables/Columns/UserAvatarColumn.php
T
2026-01-07 20:31:19 +01:00

48 lines
1.2 KiB
PHP

<?php
namespace App\Filament\Tables\Columns;
use Filament\Tables\Columns\Column;
class UserAvatarColumn extends Column
{
protected ?string $avatarOptions = null;
protected ?string $figurePointer = null;
protected string $view = 'filament.tables.columns.user-avatar';
public function getAvatarUrl(): string
{
$record = $this->getRecord();
$figureImagerUrl = setting('avatar_imager');
if ($figureImagerUrl === '' || $figureImagerUrl === '0') {
return '';
}
$figure = $this->figurePointer
? data_get($record, $this->figurePointer)
: $record->look;
return "{$figureImagerUrl}{$figure}{$this->avatarOptions}";
}
public function options(string $avatarOptions): UserAvatarColumn
{
$this->avatarOptions = $avatarOptions;
return $this;
}
/**
* Used to reference the user's figure string through relationships in a Laravel model. By default it will take the look property of the main class.
*/
public function pointer(string $figurePointer): UserAvatarColumn
{
$this->figurePointer = $figurePointer;
return $this;
}
}