diff --git a/app/DataTables/WorklistDataTable.php b/app/DataTables/WorklistDataTable.php
index 23c66d4..196e621 100644
--- a/app/DataTables/WorklistDataTable.php
+++ b/app/DataTables/WorklistDataTable.php
@@ -6,7 +6,6 @@
use App\Models\Study;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Builder as QueryBuilder;
-use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
use Yajra\DataTables\EloquentDataTable;
use Yajra\DataTables\Html\Builder as HtmlBuilder;
@@ -34,7 +33,7 @@ public function dataTable(QueryBuilder $query): EloquentDataTable
return '';
}
- return '
'.$study->readingPhysician->display_name;
+ return '
'.$study->readingPhysician->display_name;
})
->editColumn('images', function (Study $study) {
return $study->numInstances().'
'.human_filesize($study->disk_size).'';
diff --git a/app/Models/User.php b/app/Models/User.php
index 8bc9f78..c82b0bc 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -12,9 +12,11 @@
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
+use Illuminate\Support\Facades\Storage;
use Laravel\Fortify\TwoFactorAuthenticatable;
use Laravel\Jetstream\HasProfilePhoto;
use Laravel\Sanctum\HasApiTokens;
+use Laravolt\Avatar\Avatar;
use Spatie\Permission\Traits\HasRoles;
class User extends Authenticatable
@@ -115,4 +117,22 @@ public function getLastSeenAttribute(): Carbon
{
return $this->lastSeen();
}
+
+ public function getFullNameAttribute(): string
+ {
+ return trim($this->first_name.' '.$this->last_name);
+ }
+
+ public function avatar(): string
+ {
+ if (filled($this->profile_photo_path)) {
+ return Storage::url($this->profile_photo_path);
+ }
+
+ if (filled($this->email)) {
+ return (new Avatar)->create($this->email)->toGravatar();
+ }
+
+ return (new Avatar)->create($this->full_name)->toBase64();
+ }
}
diff --git a/composer.json b/composer.json
index 1756279..ed19748 100644
--- a/composer.json
+++ b/composer.json
@@ -16,6 +16,7 @@
"laravel/sanctum": "^4.0",
"laravel/socialite": "^5.16",
"laravel/tinker": "^2.9",
+ "laravolt/avatar": "^6.0",
"livewire/livewire": "^3.0",
"phpoffice/phpword": "^1.3",
"propaganistas/laravel-phone": "^5.3",