false, 'status' => true, ]; /** * The attributes that are mass assignable. * * @var array */ protected $fillable = [ 'firstname', 'lastname', 'email', 'uuid', 'profile', 'status', 'is_admin', 'password', ]; /** * The attributes that should be hidden for serialization. * * @var array */ protected $hidden = [ 'password', 'remember_token', ]; /** * The attributes that should be cast. * * @var array */ protected $casts = [ 'is_admin' => 'boolean', 'status' => 'boolean', 'password' => 'hashed', ]; public function getFullNameAttribute(): string { return "$this->firstname $this->lastname"; } public function tapActivity(Activity $activity, string $eventName) { switch ($eventName) { case 'created': $activity->description = "User created: {$this->full_name}"; return; case 'deleted': $activity->description = "User deleted: {$this->full_name}"; return; default; return; } } public function getActivityLogOptions(): LogOptions { return LogOptions::defaults() ->logExcept(['password']); } }