*/ use HasApiTokens, HasFactory, Notifiable; /** * The attributes that are mass assignable. * * @var list */ protected $fillable = [ 'name', 'username', 'password', 'role', ]; /** * The attributes that should be hidden for serialization. * * @var list */ protected $hidden = [ 'password', 'remember_token', ]; /** * Get the attributes that should be cast. * * @return array */ protected function casts(): array { return [ 'email_verified_at' => 'datetime', 'password' => 'hashed', ]; } /** * Cek apakah user adalah admin */ public function isAdmin() { return $this->role === 'admin'; } /** * Cek apakah user adalah guru */ public function isGuru() { return $this->role === 'guru'; } public function santri() { return $this->hasOne(Santri::class); } public function guru() { return $this->hasOne(Guru::class); } /** * Route notifications for the mail channel. * * @param \Illuminate\Notifications\Notification $notification * @return mixed */ public function routeNotificationForMail($notification) { // Jika ingin mengirim email, return null atau email default return null; } }