Menu

## TeacherUser extends User
in package

TeacherUser.php : 30

Class TeacherUser

Specialized User model for teacher-specific functionality. Extends the base User model with teacher-focused relationships and scopes.

##### Tags

mixin

### Table of Contents

#### Constants

ACCOUNTANT_USERGROUP_ID = 11
ALUMNI_USERGROUP_ID = 9
LIBRARIAN_USERGROUP_ID = 8
NON_TEACHING_USERGROUP_ID = 13
PARENT_USERGROUP_ID = 7
PAYROLL_TYPE_RETURN_ADVANCE = 3
PAYROLL_TYPE_SALARY_ADVANCE = 2
RECEPTIONIST_USERGROUP_ID = 10
SCHOOLADMIN_USERGROUP_ID = 3
SCHOOLSUBADMIN_USERGROUP_ID = 4
SITEADMIN_USERGROUP_ID = 1
SITESUBADMIN_USERGROUP_ID = 2
STOCK_KEEPER_USERGROUP_ID = 12
STUDENT_USERGROUP_ID = 6
TEACHER_USERGROUP_ID = 5

#### Properties

$activitylog : Collection|array<string|int, ActivityLog>
$approvedUser : Collection|array<string|int, TeacherLeaveApplication>
$assignment : Collection|array<string|int, Assignment>
$attendanceAdmin : Collection|array<string|int, Attendance>
$attendanceUser : Collection|array<string|int, Attendance>
$authentication : Collection|array<string|int, Authentication>
$bankdetail : TransactionAccount
$children : Collection|array<string|int, StudentParentLink>
$created_at : DateTime
$deleted_at : DateTime
$disciplineTeacher : Collection|array<string|int, Discipline>
$disciplineUser : Collection|array<string|int, Discipline>
$document : Collection|array<string|int, Document>
$email : string
$email_verification_code : string|null
$email_verified : bool
$email_verified_at : DateTime|null
$id : int
$is_activated : bool
$latestTeacherProfile : TeacherProfile
$lending : Collection|array<string|int, BookLending>
$librarycard : LibraryCard
$marks : Collection|array<string|int, Mark>
$members : Collection|array<string|int, User>
$mobile_no : string|null
$name : string
$notes : Collection|array<string|int, Notes>
$parentprofile : Collection|array<string|int, ParentProfile>
$parents : Collection|array<string|int, StudentParentLink>
$password : string
$payrolls : Collection|array<string|int, Payroll>
$payrolltransactions : Collection|array<string|int, PayrollTransaction>
$platform_token : string|null
$postComment : Collection|array<string|int, PostComment>
$postCommentDetail : Collection|array<string|int, PostCommentDetail>
$postDetail : Collection|array<string|int, PostDetail>
$promotion : Collection|array<string|int, Promotion>
$ref_id : int|null
$remember_token : string|null
$requestedUser : Collection|array<string|int, TeacherLeaveApplication>
$routeStudent : RouteStudent
$school : School
$school_id : int
$standardLink : StandardLink
$studentAcademic : Collection|array<string|int, StudentAcademic>
$studentAcademicLatest : StudentAcademic
$studentAssignment : Collection|array<string|int, StudentAssignment>
$subscription : Collection|array<string|int, Subscription>
$teacherAssignment : Collection|array<string|int, StudentAssignment>
$teacherlink : Collection|array<string|int, Teacherlink>
$teacherprofile : Collection|array<string|int, TeacherProfile>
$updated_at : DateTime
$usergroup : Usergroup
$usergroup_id : int
$userprofile : Userprofile
$dates : array<string|int, mixed>
  The attributes that should be mutated to dates.
$fillable : array<string|int, mixed>
  The attributes that are mass assignable.
$hidden : array<string|int, mixed>
  The attributes that should be hidden for arrays.
$presenter : mixed
$table : string
  The table associated with the model.
$with : mixed

#### Methods

activitylog() : HasMany
  Get activity logs for this user.
alumniprofile() : HasOne
  Get alumni profile for this user.
approvedLessonPlan() : HasMany
  Get approved lesson plans by this user.
approvedUser() : HasMany
  Get leave applications approved by this user.
assignment() : HasMany
  Get assignments created by this teacher.
attendanceAdmin() : HasMany
  Get attendance records recorded by this user.
attendanceUser() : HasMany
  Get attendance records for this user.
authentication() : HasMany
  Get authentication records for this user.
bankdetail() : HasOne
  Get bank details for this user.
booklending() : BelongsTo
  Get book lending for this user.
children() : HasMany
  Get the child relationships for this parent.
conversations() : BelongsToMany
  Get conversations for this user.
disciplineTeacher() : HasMany
  Get discipline records reported by this user.
disciplineUser() : HasMany
  Get discipline records for this user.
document() : HasMany
  Get documents for this user.
father() : Builder
  Get the father of this student.
feedbackAdmin() : HasMany
  Get feedback submitted to admin by this user.
feedbackParent() : HasMany
  Get feedback submitted by parent user.
feePayment() : HasMany
  Get fee payments for this user.
getAlumniEducation() : array<string|int, mixed>
  Get alumni education details formatted.
getAlumniEducationDetails() : array<string|int, mixed>
  Get alumni education details.
getAlumniWork() : array<string|int, mixed>
  Get alumni work experience details formatted.
getAlumniWorkDetails() : array<string|int, mixed>
  Get alumni work experience details.
getAttendanceUserAbsentAttribute() : Collection
  Get absent attendance records for current academic year.
getChildren() : string
  Get children names in formatted string.
getFullNameAttribute() : string
  Get the full name of this user.
getLeaveCountAttribute() : int
  Get count of approved leave applications.
getParentDetails() : array<string|int, mixed>
  Get parent details for this user.
getSchoolLogoAttribute() : SchoolDetail
  Get the school logo for this user's school.
getSchoolLogoPathAttribute() : string
  Get the school logo path for this user's school.
getSpecializedInstance() : User|TeacherUser|StudentUser|ParentUser|AlumniUser|AdminUser|LibrarianUser|AccountantUser
  Get the appropriate specialized user instance based on usergroup_id.
getTeacherDetails() : array<string|int, mixed>
  Get teacher details for this user.
hasRead() : DateTime|null
  Check if this user has read a conversation.
inConversation() : bool
  Check if this user is in a conversation.
isAccountant() : bool
  Check if this user is an accountant.
isAdmin() : bool
  Check if this user is a school admin.
isAlumni() : bool
  Check if this user is alumni/old student.
isLibrarian() : bool
  Check if this user is a librarian.
isNonTeachingStaff() : bool
  Check if this user is non-teaching staff.
isParent() : bool
  Check if this user is a parent.
isReceptionist() : bool
  Check if this user is a receptionist.
isStaff() : bool
  Check if this user is staff (any staff member except student/parent/admin).
isStockKeeper() : bool
  Check if this user is a stock keeper.
isStudent() : bool
  Check if this user is a student.
isTeacher() : bool
  Check if this user is a teacher.
latestTeacherProfile() : HasOne
  Get the latest teacher profile for this user.
lending() : HasMany
  Get book lending records for this user.
librarycard() : HasOne
  Get the library card for this user.
marks() : HasMany
  Get marks for this user.
members() : HasMany
  Get child users (members) under this user (for parent users).
messages() : HasMany
  Get messages sent by this user.
mother() : HasMany
  Get the mother of this student.
notes() : HasMany
  Get notes associated with this user.
parentprofile() : HasMany
  Get parent profiles for this user.
parents() : HasMany
  Get parent relationships for this student.
payrolls() : HasMany
  Get payroll records for this user.
payrolltransactions() : HasMany
  Get payroll transactions for this user.
permissionUser() : HasMany
  Get permission user records for this user.
postComment() : HasMany
  Get post comments by this user.
postCommentDetail() : HasMany
  Get post comment details by this user.
postDetail() : HasMany
  Get post details created by this user.
present() : UserPresenter
  Get the presenter for this user.
promotion() : HasMany
  Get promotion records for this user.
reportUser() : HasMany
  Get users reporting to this user.
requestedUser() : HasMany
  Get leave applications requested by this user.
roomlinks() : HasMany
  Get room links for this user.
routeNotificationForFcm() : string
  Get the FCM notification token for this user.
routeStudent() : HasOne
  Get route student record for this user.
salarydetail() : array<string|int, mixed>|int
  Get salary details for this user.
school() : mixed
scopeByActive() : Builder
  Scope to filter active users.
scopeByBloodGroup() : Builder
  Scope to filter users by blood group.
scopeByCaste() : Builder
  Scope to filter users by caste.
scopeByDateOfBirth() : Builder
  Scope to filter users by date of birth month.
scopeByDesignation() : Builder
  Scope to filter teachers by designation.
scopeByDriver() : Builder
  Scope to filter users with transport driver role.
scopeByEmailId() : Builder
  Scope to filter users by email.
scopeByEmailParent() : Builder
  Scope to filter parents by email.
scopeByEmployeeId() : Builder
  Scope to filter users by employee ID.
scopeByFirstName() : Builder
  Scope to filter users by first name.
scopeByFirstNameParent() : Builder
  Scope to filter parents by first name.
scopeByFullNameParent() : Builder
  Scope to filter parents by full name.
scopeByGender() : Builder
  Scope to filter users by gender.
scopeByJobType() : Builder
  Scope to filter teachers by job type.
scopeByLastName() : Builder
  Scope to filter users by last name.
scopeByLastNameParent() : Builder
  Scope to filter parents by last name.
scopeByMaritalStatus() : Builder
  Scope to filter users by marital status.
scopeByMobileNo() : Builder
  Scope to filter users by mobile number.
scopeByMobileNoParent() : Builder
  Scope to filter parents by mobile number.
scopeByName() : Builder
  Scope to filter users by name.
scopeByOccupationParent() : Builder
  Scope to filter parents by occupation.
scopeByQualification() : Builder
  Scope to filter teachers by qualification.
scopeByQualificationParent() : Builder
  Scope to filter parents by qualification.
scopeByRelation() : Builder
  Scope to filter users by parent relation type.
scopeByRole() : Builder
  Scope to filter users by role/usergroup.
scopeBySchool() : Builder
  Scope to filter users by school.
scopeByStandardLinkParent() : Builder
  Scope to filter parents by student's standard/grade.
scopeByStandardLinkParentList() : Builder
  Scope to filter parents by student's standard/grade (list variant).
scopeByStatus() : Builder
  Scope to filter users by profile status.
scopeByStudentNameParent() : Builder
  Scope to filter parents by student name.
scopeByUserStatus() : Builder
  Scope to filter users by account status.
sendMail() : HasMany
  Get send mail records for this user.
standardLink() : HasOne
  Get the standard link for this class teacher.
studentAcademic() : HasMany
  Get student academic records for this user.
studentAcademicLatest() : HasOne
  Get the latest student academic record for this user.
studentAssignment() : HasMany
  Get student assignments for this student.
subscription() : HasMany
  Get subscriptions for this user.
task() : BelongsTo
  Get task for this user.
teacherAssignment() : HasMany
  Get student assignments marked by this teacher.
teacherlink() : HasMany
  Get teacher links for this teacher.
teacherlinkCurrentAcademicYear() : HasMany
  Get teacher links for current academic year.
teacherprofile() : HasMany
  Get teacher profiles for this user.
usergroup() : BelongsTo
  Get the user group for this user.
userprofile() : HasOne
  Get the user profile for this user.
userReminder() : HasMany
  Get reminders for this user.
visitor() : BelongsTo
  Get visitor log for this user as student.
visitorlog() : BelongsTo
  Get visitor log for this user as employee.

### Constants

#### ACCOUNTANT_USERGROUP_ID

User.php : 110
`public mixed ACCOUNTANT_USERGROUP_ID = 11`

#### ALUMNI_USERGROUP_ID

User.php : 108
`public mixed ALUMNI_USERGROUP_ID = 9`

#### LIBRARIAN_USERGROUP_ID

User.php : 107
`public mixed LIBRARIAN_USERGROUP_ID = 8`

#### NON_TEACHING_USERGROUP_ID

User.php : 112
`public mixed NON_TEACHING_USERGROUP_ID = 13`

#### PARENT_USERGROUP_ID

User.php : 106
`public mixed PARENT_USERGROUP_ID = 7`

#### PAYROLL_TYPE_RETURN_ADVANCE

User.php : 116
`public mixed PAYROLL_TYPE_RETURN_ADVANCE = 3`

#### PAYROLL_TYPE_SALARY_ADVANCE

User.php : 115
`public mixed PAYROLL_TYPE_SALARY_ADVANCE = 2`

#### RECEPTIONIST_USERGROUP_ID

User.php : 109
`public mixed RECEPTIONIST_USERGROUP_ID = 10`

#### SCHOOLADMIN_USERGROUP_ID

User.php : 102
`public mixed SCHOOLADMIN_USERGROUP_ID = 3`

#### SCHOOLSUBADMIN_USERGROUP_ID

User.php : 103
`public mixed SCHOOLSUBADMIN_USERGROUP_ID = 4`

#### SITEADMIN_USERGROUP_ID

User.php : 100
`public mixed SITEADMIN_USERGROUP_ID = 1`

#### SITESUBADMIN_USERGROUP_ID

User.php : 101
`public mixed SITESUBADMIN_USERGROUP_ID = 2`

#### STOCK_KEEPER_USERGROUP_ID

User.php : 111
`public mixed STOCK_KEEPER_USERGROUP_ID = 12`

#### STUDENT_USERGROUP_ID

User.php : 105
`public mixed STUDENT_USERGROUP_ID = 6`

#### TEACHER_USERGROUP_ID

User.php : 104
`public mixed TEACHER_USERGROUP_ID = 5`

### Properties

#### $activitylog read-only

User.php : 0
`public Collection|array<string|int, ActivityLog> $activitylog`

#### $approvedUser read-only

TeacherUser.php : 0
`public Collection|array<string|int, TeacherLeaveApplication> $approvedUser`

#### $assignment read-only

TeacherUser.php : 0
`public Collection|array<string|int, Assignment> $assignment`

#### $attendanceAdmin read-only

TeacherUser.php : 0
`public Collection|array<string|int, Attendance> $attendanceAdmin`

#### $attendanceUser read-only

User.php : 0
`public Collection|array<string|int, Attendance> $attendanceUser`

#### $authentication read-only

User.php : 0
`public Collection|array<string|int, Authentication> $authentication`

#### $bankdetail read-only

User.php : 0
`public TransactionAccount $bankdetail`

#### $children read-only

User.php : 0
`public Collection|array<string|int, StudentParentLink> $children`

#### $created_at

User.php : 0
`public DateTime $created_at`

#### $deleted_at

User.php : 0
`public DateTime $deleted_at`

#### $disciplineTeacher read-only

TeacherUser.php : 0
`public Collection|array<string|int, Discipline> $disciplineTeacher`

#### $disciplineUser read-only

User.php : 0
`public Collection|array<string|int, Discipline> $disciplineUser`

#### $document read-only

User.php : 0
`public Collection|array<string|int, Document> $document`

#### $email

User.php : 0
`public string $email`

#### $email_verification_code

User.php : 0
`public string|null $email_verification_code`

#### $email_verified

User.php : 0
`public bool $email_verified`

#### $email_verified_at

User.php : 0
`public DateTime|null $email_verified_at`

#### $id

User.php : 0
`public int $id`

#### $is_activated

User.php : 0
`public bool $is_activated`

#### $latestTeacherProfile read-only

TeacherUser.php : 0
`public TeacherProfile $latestTeacherProfile`

#### $lending read-only

User.php : 0
`public Collection|array<string|int, BookLending> $lending`

#### $librarycard read-only

User.php : 0
`public LibraryCard $librarycard`

#### $marks read-only

User.php : 0
`public Collection|array<string|int, Mark> $marks`

#### $members read-only

User.php : 0
`public Collection|array<string|int, User> $members`

#### $mobile_no

User.php : 0
`public string|null $mobile_no`

#### $name

User.php : 0
`public string $name`

#### $notes read-only

User.php : 0
`public Collection|array<string|int, Notes> $notes`

#### $parentprofile read-only

User.php : 0
`public Collection|array<string|int, ParentProfile> $parentprofile`

#### $parents read-only

User.php : 0
`public Collection|array<string|int, StudentParentLink> $parents`

#### $password

User.php : 0
`public string $password`

#### $payrolls read-only

User.php : 0
`public Collection|array<string|int, Payroll> $payrolls`

#### $payrolltransactions read-only

User.php : 0
`public Collection|array<string|int, PayrollTransaction> $payrolltransactions`

#### $platform_token

User.php : 0
`public string|null $platform_token`

#### $postComment read-only

User.php : 0
`public Collection|array<string|int, PostComment> $postComment`

#### $postCommentDetail read-only

User.php : 0
`public Collection|array<string|int, PostCommentDetail> $postCommentDetail`

#### $postDetail read-only

User.php : 0
`public Collection|array<string|int, PostDetail> $postDetail`

#### $promotion read-only

User.php : 0
`public Collection|array<string|int, Promotion> $promotion`

#### $ref_id

User.php : 0
`public int|null $ref_id`

#### $remember_token

User.php : 0
`public string|null $remember_token`

#### $requestedUser read-only

TeacherUser.php : 0
`public Collection|array<string|int, TeacherLeaveApplication> $requestedUser`

#### $routeStudent read-only

User.php : 0
`public RouteStudent $routeStudent`

#### $school read-only

User.php : 0
`public School $school`

#### $school_id

User.php : 0
`public int $school_id`

#### $standardLink read-only

TeacherUser.php : 0
`public StandardLink $standardLink`

#### $studentAcademic read-only

User.php : 0
`public Collection|array<string|int, StudentAcademic> $studentAcademic`

#### $studentAcademicLatest read-only

User.php : 0
`public StudentAcademic $studentAcademicLatest`

#### $studentAssignment read-only

User.php : 0
`public Collection|array<string|int, StudentAssignment> $studentAssignment`

#### $subscription read-only

User.php : 0
`public Collection|array<string|int, Subscription> $subscription`

#### $teacherAssignment read-only

TeacherUser.php : 0
`public Collection|array<string|int, StudentAssignment> $teacherAssignment`

#### $teacherlink read-only

TeacherUser.php : 0
`public Collection|array<string|int, Teacherlink> $teacherlink`

#### $teacherprofile read-only

TeacherUser.php : 0
`public Collection|array<string|int, TeacherProfile> $teacherprofile`

#### $updated_at

User.php : 0
`public DateTime $updated_at`

#### $usergroup read-only

User.php : 0
`public Usergroup $usergroup`

#### $usergroup_id

User.php : 0
`public int $usergroup_id`

#### $userprofile read-only

User.php : 0
`public Userprofile $userprofile`

#### $dates

User.php : 152

The attributes that should be mutated to dates.

`protected array<string|int, mixed> $dates = ['deleted_at', 'email_verified_at']`

#### $fillable

User.php : 132

The attributes that are mass assignable.

`protected array<string|int, mixed> $fillable = ['school_id', 'usergroup_id', 'ref_id', 'name', 'email', 'password', 'mobile_no', 'is_activated', 'email_verification_code', 'email_verified', 'email_verified_at', 'platform_token', 'remember_token']`

#### $hidden

User.php : 141

The attributes that should be hidden for arrays.

`protected array<string|int, mixed> $hidden = ['password', 'remember_token']`

#### $presenter

User.php : 118
`protected mixed $presenter = "App\\Presenters\\UserprofilePresenter"`

#### $table

User.php : 125

The table associated with the model.

`protected string $table = 'users'`

#### $with

User.php : 145
`protected mixed $with = ['userprofile', 'members', 'children', 'parents']`

### Methods

#### activitylog()

User.php : 287

Get activity logs for this user.

`public activitylog() : HasMany`

##### Return values

HasMany

#### alumniprofile()

User.php : 602

Get alumni profile for this user.

`public alumniprofile() : HasOne`

##### Return values

HasOne

#### approvedLessonPlan()

User.php : 1267

Get approved lesson plans by this user.

`public approvedLessonPlan() : HasMany`

##### Return values

HasMany

#### approvedUser()

User.php : 1128

Get leave applications approved by this user.

`public approvedUser() : HasMany`

##### Return values

HasMany

#### assignment()

User.php : 1088

Get assignments created by this teacher.

`public assignment() : HasMany`

##### Return values

HasMany

#### attendanceAdmin()

User.php : 1058

Get attendance records recorded by this user.

`public attendanceAdmin() : HasMany`

##### Return values

HasMany

#### attendanceUser()

User.php : 1037

Get attendance records for this user.

`public attendanceUser() : HasMany`

##### Return values

HasMany

#### authentication()

User.php : 1247

Get authentication records for this user.

`public authentication() : HasMany`

##### Return values

HasMany

#### bankdetail()

User.php : 1327

Get bank details for this user.

`public bankdetail() : HasOne`

##### Return values

HasOne

#### booklending()

User.php : 1068

Get book lending for this user.

`public booklending() : BelongsTo`

##### Return values

BelongsTo

#### children()

User.php : 267

Get the child relationships for this parent.

`public children() : HasMany`

##### Return values

HasMany

#### conversations()

User.php : 1217

Get conversations for this user.

`public conversations() : BelongsToMany`

##### Return values

BelongsToMany

#### disciplineTeacher()

User.php : 986

Get discipline records reported by this user.

`public disciplineTeacher() : HasMany`

##### Return values

HasMany

#### disciplineUser()

User.php : 976

Get discipline records for this user.

`public disciplineUser() : HasMany`

##### Return values

HasMany

#### document()

User.php : 1237

Get documents for this user.

`public document() : HasMany`

##### Return values

HasMany

#### father()

User.php : 214

Get the father of this student.

`public father() : Builder`

##### Return values

Builder

#### feedbackAdmin()

User.php : 552

Get feedback submitted to admin by this user.

`public feedbackAdmin() : HasMany`

##### Return values

HasMany

#### feedbackParent()

User.php : 542

Get feedback submitted by parent user.

`public feedbackParent() : HasMany`

##### Return values

HasMany

#### feePayment()

User.php : 1138

Get fee payments for this user.

`public feePayment() : HasMany`

##### Return values

HasMany

#### getAlumniEducation()

User.php : 923

Get alumni education details formatted.

`public getAlumniEducation() : array<string|int, mixed>`

Backward compatibility method that delegates to AlumniUser.

##### Return values

array<string|int, mixed>

#### getAlumniEducationDetails()

User.php : 908

Get alumni education details.

`public getAlumniEducationDetails() : array<string|int, mixed>`

Backward compatibility method that delegates to AlumniUser.

##### Return values

array<string|int, mixed>

#### getAlumniWork()

User.php : 953

Get alumni work experience details formatted.

`public getAlumniWork() : array<string|int, mixed>`

Backward compatibility method that delegates to AlumniUser.

##### Return values

array<string|int, mixed>

#### getAlumniWorkDetails()

User.php : 938

Get alumni work experience details.

`public getAlumniWorkDetails() : array<string|int, mixed>`

Backward compatibility method that delegates to AlumniUser.

##### Return values

array<string|int, mixed>

#### getAttendanceUserAbsentAttribute()

User.php : 1047

Get absent attendance records for current academic year.

`public getAttendanceUserAbsentAttribute() : Collection`

##### Return values

Collection

#### getChildren()

User.php : 893

Get children names in formatted string.

`public getChildren() : string`

Backward compatibility method that delegates to StudentUser.

##### Return values

string

#### getFullNameAttribute()

User.php : 996

Get the full name of this user.

`public getFullNameAttribute() : string`

##### Return values

string

#### getLeaveCountAttribute()

TeacherUser.php : 122

Get count of approved leave applications.

`public getLeaveCountAttribute() : int`

##### Return values

int

#### getParentDetails()

User.php : 878

Get parent details for this user.

`public getParentDetails() : array<string|int, mixed>`

Backward compatibility method that delegates to ParentUser.

##### Return values

array<string|int, mixed>

#### getSchoolLogoAttribute()

User.php : 1154

Get the school logo for this user's school.

`public getSchoolLogoAttribute() : SchoolDetail`

##### Return values

SchoolDetail

#### getSchoolLogoPathAttribute()

User.php : 1164

Get the school logo path for this user's school.

`public getSchoolLogoPathAttribute() : string`

##### Return values

string

#### getSpecializedInstance()

User.php : 1456

Get the appropriate specialized user instance based on usergroup_id.

`public getSpecializedInstance() : User|TeacherUser|StudentUser|ParentUser|AlumniUser|AdminUser|LibrarianUser|AccountantUser`

Returns specialized class (TeacherUser, StudentUser, etc.) or self.

##### Return values

User|TeacherUser|StudentUser|ParentUser|AlumniUser|AdminUser|LibrarianUser|AccountantUser

#### getTeacherDetails()

TeacherUser.php : 93

Get teacher details for this user.

`public getTeacherDetails() : array<string|int, mixed>`

##### Return values

array<string|int, mixed>

#### hasRead()

User.php : 1196

Check if this user has read a conversation.

`public hasRead(Conversation $conversation) : DateTime|null`

##### Parameters

$conversation : Conversation

##### Return values

DateTime|null

#### inConversation()

User.php : 1185

Check if this user is in a conversation.

`public inConversation(int $id) : bool`

##### Parameters

$id : int

##### Return values

bool

#### isAccountant()

User.php : 1539

Check if this user is an accountant.

`public isAccountant() : bool`

##### Return values

bool

#### isAdmin()

User.php : 1516

Check if this user is a school admin.

`public isAdmin() : bool`

##### Return values

bool

#### isAlumni()

User.php : 1506

Check if this user is alumni/old student.

`public isAlumni() : bool`

##### Return values

bool

#### isLibrarian()

User.php : 1529

Check if this user is a librarian.

`public isLibrarian() : bool`

##### Return values

bool

#### isNonTeachingStaff()

User.php : 1569

Check if this user is non-teaching staff.

`public isNonTeachingStaff() : bool`

##### Return values

bool

#### isParent()

User.php : 1496

Check if this user is a parent.

`public isParent() : bool`

##### Return values

bool

#### isReceptionist()

User.php : 1549

Check if this user is a receptionist.

`public isReceptionist() : bool`

##### Return values

bool

#### isStaff()

User.php : 1579

Check if this user is staff (any staff member except student/parent/admin).

`public isStaff() : bool`

##### Return values

bool

#### isStockKeeper()

User.php : 1559

Check if this user is a stock keeper.

`public isStockKeeper() : bool`

##### Return values

bool

#### isStudent()

User.php : 1486

Check if this user is a student.

`public isStudent() : bool`

##### Return values

bool

#### isTeacher()

User.php : 1476

Check if this user is a teacher.

`public isTeacher() : bool`

##### Return values

bool

#### latestTeacherProfile()

User.php : 1430

Get the latest teacher profile for this user.

`public latestTeacherProfile() : HasOne`

##### Return values

HasOne

#### lending()

User.php : 1078

Get book lending records for this user.

`public lending() : HasMany`

##### Return values

HasMany

#### librarycard()

User.php : 174

Get the library card for this user.

`public librarycard() : HasOne`

##### Return values

HasOne

#### marks()

User.php : 582

Get marks for this user.

`public marks() : HasMany`

##### Return values

HasMany

#### members()

User.php : 194

Get child users (members) under this user (for parent users).

`public members() : HasMany`

##### Return values

HasMany

#### messages()

User.php : 1174

Get messages sent by this user.

`public messages() : HasMany`

##### Return values

HasMany

#### mother()

User.php : 229

Get the mother of this student.

`public mother() : HasMany`

##### Return values

HasMany

#### notes()

User.php : 297

Get notes associated with this user.

`public notes() : HasMany`

##### Return values

HasMany

#### parentprofile()

User.php : 625

Get parent profiles for this user.

`public parentprofile() : HasMany`

##### Return values

HasMany

#### parents()

User.php : 204

Get parent relationships for this student.

`public parents() : HasMany`

##### Return values

HasMany

#### payrolls()

User.php : 1337

Get payroll records for this user.

`public payrolls() : HasMany`

##### Return values

HasMany

#### payrolltransactions()

User.php : 1347

Get payroll transactions for this user.

`public payrolltransactions() : HasMany`

##### Return values

HasMany

#### permissionUser()

User.php : 522

Get permission user records for this user.

`public permissionUser() : HasMany`

##### Return values

HasMany

#### postComment()

User.php : 1287

Get post comments by this user.

`public postComment() : HasMany`

##### Return values

HasMany

#### postCommentDetail()

User.php : 1297

Get post comment details by this user.

`public postCommentDetail() : HasMany`

##### Return values

HasMany

#### postDetail()

User.php : 1277

Get post details created by this user.

`public postDetail() : HasMany`

##### Return values

HasMany

#### present()

User.php : 1207

Get the presenter for this user.

`public present() : UserPresenter`

##### Return values

UserPresenter

#### promotion()

User.php : 966

Get promotion records for this user.

`public promotion() : HasMany`

##### Return values

HasMany

#### reportUser()

User.php : 615

Get users reporting to this user.

`public reportUser() : HasMany`

##### Return values

HasMany

#### requestedUser()

User.php : 1118

Get leave applications requested by this user.

`public requestedUser() : HasMany`

##### Return values

HasMany

#### roomlinks()

User.php : 184

Get room links for this user.

`public roomlinks() : HasMany`

##### Return values

HasMany

#### routeNotificationForFcm()

User.php : 1404

Get the FCM notification token for this user.

`public routeNotificationForFcm(mixed $notification) : string`

##### Parameters

$notification : mixed

##### Return values

string

#### routeStudent()

User.php : 1393

Get route student record for this user.

`public routeStudent() : HasOne`

##### Return values

HasOne

#### salarydetail()

User.php : 1357

Get salary details for this user.

`public salarydetail() : array<string|int, mixed>|int`

##### Return values

array<string|int, mixed>|int

#### school()

User.php : 154
`public school() : mixed`

#### scopeByActive()

User.php : 1418

Scope to filter active users.

`public scopeByActive(Builder $query) : Builder`

##### Parameters

$query : Builder

##### Return values

Builder

#### scopeByBloodGroup()

User.php : 637

Scope to filter users by blood group.

`public scopeByBloodGroup(Builder $query, string $blood_group) : Builder`

##### Parameters

$query : Builder
$blood_group : string

##### Return values

Builder

#### scopeByCaste()

User.php : 483

Scope to filter users by caste.

`public scopeByCaste(Builder $query, string $caste) : Builder`

##### Parameters

$query : Builder
$caste : string

##### Return values

Builder

#### scopeByDateOfBirth()

User.php : 439

Scope to filter users by date of birth month.

`public scopeByDateOfBirth(Builder $query, string $date_of_birth) : Builder`

##### Parameters

$query : Builder
$date_of_birth : string

##### Return values

Builder

#### scopeByDesignation()

TeacherUser.php : 53

Scope to filter teachers by designation.

`public scopeByDesignation(Builder $query, string $designation) : Builder`

##### Parameters

$query : Builder
$designation : string

##### Return values

Builder

#### scopeByDriver()

User.php : 1379

Scope to filter users with transport driver role.

`public static scopeByDriver(Builder $query, int $usergroup_id) : Builder`

##### Parameters

$query : Builder
$usergroup_id : int

##### Return values

Builder

#### scopeByEmailId()

User.php : 469

Scope to filter users by email.

`public scopeByEmailId(Builder $query, string $email) : Builder`

##### Parameters

$query : Builder
$email : string

##### Return values

Builder

#### scopeByEmailParent()

User.php : 728

Scope to filter parents by email.

`public scopeByEmailParent(Builder $query, string $email) : Builder`

##### Parameters

$query : Builder
$email : string

##### Return values

Builder

#### scopeByEmployeeId()

TeacherUser.php : 81

Scope to filter users by employee ID.

`public scopeByEmployeeId(Builder $query, string $employeeId) : Builder`

##### Parameters

$query : Builder
$employeeId : string

##### Return values

Builder

#### scopeByFirstName()

User.php : 375

Scope to filter users by first name.

`public scopeByFirstName(Builder $query, string $firstname) : Builder`

##### Parameters

$query : Builder
$firstname : string

##### Return values

Builder

#### scopeByFirstNameParent()

User.php : 656

Scope to filter parents by first name.

`public scopeByFirstNameParent(Builder $query, string $firstname) : Builder`

##### Parameters

$query : Builder
$firstname : string

##### Return values

Builder

#### scopeByFullNameParent()

User.php : 678

Scope to filter parents by full name.

`public scopeByFullNameParent(Builder $query, string $fullname) : Builder`

##### Parameters

$query : Builder
$fullname : string

##### Return values

Builder

#### scopeByGender()

User.php : 407

Scope to filter users by gender.

`public scopeByGender(Builder $query, string $gender) : Builder`

##### Parameters

$query : Builder
$gender : string

##### Return values

Builder

#### scopeByJobType()

TeacherUser.php : 67

Scope to filter teachers by job type.

`public scopeByJobType(Builder $query, string $job_type) : Builder`

##### Parameters

$query : Builder
$job_type : string

##### Return values

Builder

#### scopeByLastName()

User.php : 391

Scope to filter users by last name.

`public scopeByLastName(Builder $query, string $lastname) : Builder`

##### Parameters

$query : Builder
$lastname : string

##### Return values

Builder

#### scopeByLastNameParent()

User.php : 693

Scope to filter parents by last name.

`public scopeByLastNameParent(Builder $query, string $lastname) : Builder`

##### Parameters

$query : Builder
$lastname : string

##### Return values

Builder

#### scopeByMaritalStatus()

User.php : 423

Scope to filter users by marital status.

`public scopeByMaritalStatus(Builder $query, string $marital_status) : Builder`

##### Parameters

$query : Builder
$marital_status : string

##### Return values

Builder

#### scopeByMobileNo()

User.php : 455

Scope to filter users by mobile number.

`public scopeByMobileNo(Builder $query, string $mobile_no) : Builder`

##### Parameters

$query : Builder
$mobile_no : string

##### Return values

Builder

#### scopeByMobileNoParent()

User.php : 715

Scope to filter parents by mobile number.

`public scopeByMobileNoParent(Builder $query, string $mobile_no) : Builder`

##### Parameters

$query : Builder
$mobile_no : string

##### Return values

Builder

#### scopeByName()

User.php : 361

Scope to filter users by name.

`public scopeByName(Builder $query, string $name) : Builder`

##### Parameters

$query : Builder
$name : string

##### Return values

Builder

#### scopeByOccupationParent()

User.php : 769

Scope to filter parents by occupation.

`public scopeByOccupationParent(Builder $query, string $occupation) : Builder`

##### Parameters

$query : Builder
$occupation : string

##### Return values

Builder

#### scopeByQualification()

TeacherUser.php : 39

Scope to filter teachers by qualification.

`public scopeByQualification(Builder $query, int $qualification) : Builder`

##### Parameters

$query : Builder
$qualification : int

##### Return values

Builder

#### scopeByQualificationParent()

User.php : 747

Scope to filter parents by qualification.

`public scopeByQualificationParent(Builder $query, int $qualification) : Builder`

##### Parameters

$query : Builder
$qualification : int

##### Return values

Builder

#### scopeByRelation()

User.php : 247

Scope to filter users by parent relation type.

`public scopeByRelation(Builder $query, int $student_id, string $relation) : Builder`

##### Parameters

$query : Builder
$student_id : int
$relation : string

##### Return values

Builder

#### scopeByRole()

User.php : 332

Scope to filter users by role/usergroup.

`public scopeByRole(Builder $query, int $usergroup_id) : Builder`

##### Parameters

$query : Builder
$usergroup_id : int

##### Return values

Builder

#### scopeBySchool()

User.php : 319

Scope to filter users by school.

`public scopeBySchool(Builder $query, int $school_id) : Builder`

##### Parameters

$query : Builder
$school_id : int

##### Return values

Builder

#### scopeByStandardLinkParent()

User.php : 791

Scope to filter parents by student's standard/grade.

`public scopeByStandardLinkParent(Builder $query, int $standardlink_id) : Builder`

##### Parameters

$query : Builder
$standardlink_id : int

##### Return values

Builder

#### scopeByStandardLinkParentList()

User.php : 819

Scope to filter parents by student's standard/grade (list variant).

`public scopeByStandardLinkParentList(Builder $query, int $standardlink_id) : Builder`

##### Parameters

$query : Builder
$standardlink_id : int

##### Return values

Builder

#### scopeByStatus()

User.php : 345

Scope to filter users by profile status.

`public scopeByStatus(Builder $query, string $status) : Builder`

##### Parameters

$query : Builder
$status : string

##### Return values

Builder

#### scopeByStudentNameParent()

User.php : 841

Scope to filter parents by student name.

`public scopeByStudentNameParent(Builder $query, string $student_name) : Builder`

##### Parameters

$query : Builder
$student_name : string

##### Return values

Builder

#### scopeByUserStatus()

User.php : 499

Scope to filter users by account status.

`public scopeByUserStatus(Builder $query, string $status) : Builder`

##### Parameters

$query : Builder
$status : string

##### Return values

Builder

#### sendMail()

User.php : 512

Get send mail records for this user.

`public sendMail() : HasMany`

##### Return values

HasMany

#### standardLink()

User.php : 1006

Get the standard link for this class teacher.

`public standardLink() : HasOne`

##### Return values

HasOne

#### studentAcademic()

User.php : 562

Get student academic records for this user.

`public studentAcademic() : HasMany`

##### Return values

HasMany

#### studentAcademicLatest()

User.php : 572

Get the latest student academic record for this user.

`public studentAcademicLatest() : HasOne`

##### Return values

HasOne

#### studentAssignment()

User.php : 1098

Get student assignments for this student.

`public studentAssignment() : HasMany`

##### Return values

HasMany

#### subscription()

User.php : 307

Get subscriptions for this user.

`public subscription() : HasMany`

##### Return values

HasMany

#### task()

User.php : 1257

Get task for this user.

`public task() : BelongsTo`

##### Return values

BelongsTo

#### teacherAssignment()

User.php : 1108

Get student assignments marked by this teacher.

`public teacherAssignment() : HasMany`

##### Return values

HasMany

#### teacherlink()

User.php : 1016

Get teacher links for this teacher.

`public teacherlink() : HasMany`

##### Return values

HasMany

#### teacherlinkCurrentAcademicYear()

User.php : 1026

Get teacher links for current academic year.

`public teacherlinkCurrentAcademicYear() : HasMany`

##### Return values

HasMany

#### teacherprofile()

User.php : 592

Get teacher profiles for this user.

`public teacherprofile() : HasMany`

##### Return values

HasMany

#### usergroup()

User.php : 277

Get the user group for this user.

`public usergroup() : BelongsTo`

##### Return values

BelongsTo

#### userprofile()

User.php : 164

Get the user profile for this user.

`public userprofile() : HasOne`

##### Return values

HasOne

#### userReminder()

User.php : 532

Get reminders for this user.

`public userReminder() : HasMany`

##### Return values

HasMany

#### visitor()

User.php : 1317

Get visitor log for this user as student.

`public visitor() : BelongsTo`

##### Return values

BelongsTo

#### visitorlog()

User.php : 1307

Get visitor log for this user as employee.

`public visitorlog() : BelongsTo`

##### Return values

BelongsTo

## Search results