*/ protected $fillable = [ 'fullname', 'password', 'username', 'email', 'email_verified_at', 'birthday', 'address', 'phone', 'department', 'start_date', ]; /** * 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 = [ 'email_verified_at' => 'datetime', 'start_date' => 'date', ]; public function getJWTIdentifier() { return $this->getKey(); } public function getJWTCustomClaims() { return []; } public function getNameAttribute(): string { return trim((string) $this->fullname); } public function staffOnline() { return $this->hasOne(\App\Models\Staff::class, 'user_id', 'id'); } }