GatheringAttendance
extends BaseEntity
in package
GatheringAttendance Entity
Represents a member's attendance record for a gathering, including sharing preferences and optional public notes.
Table of Contents
Properties
- $branch_id : int|null
- $created : DateTime
- $created_by : int|null
- $creator : Member
- $deleted : DateTime|null
- $gathering : Gathering
- $gathering_id : int
- $id : int
- $is_public : bool
- $is_royal_progress : bool
- $member : Member
- $member_id : int
- $modified : DateTime|null
- $modified_by : int|null
- $modifier : Member
- $progress_branch_name : string|null
- $progress_office_id : int|null
- $progress_office_name : string|null
- $public_note : string|null
- $share_with_crown : bool
- $share_with_hosting_group : bool
- $share_with_kingdom : bool
- $_accessible : array<string, bool>
- Fields that can be mass assigned using newEntity() or patchEntity().
- $_virtual : array<string|int, string>
- Virtual fields
Methods
- getBranchId() : int|null
- Get the branch ID for policy scoping
- _getIsShared() : bool
- Virtual field to check if attendance is shared with anyone
- _getProgressTitle() : string|null
- Virtual field with the display title for a royal progress RSVP, built from the office snapshot taken at RSVP time.
- _getSharingDescription() : string
- Virtual field to get sharing description
Properties
$branch_id
public
int|null
$branch_id
Associated branch ID (when applicable)
$created
public
DateTime
$created
$created_by
public
int|null
$created_by
$creator
public
Member
$creator
$deleted
public
DateTime|null
$deleted
$gathering
public
Gathering
$gathering
$gathering_id
public
int
$gathering_id
$id
public
int
$id
$is_public
public
bool
$is_public
$is_royal_progress
public
bool
$is_royal_progress
$member
public
Member
$member
$member_id
public
int
$member_id
$modified
public
DateTime|null
$modified
$modified_by
public
int|null
$modified_by
$modifier
public
Member
$modifier
$progress_branch_name
public
string|null
$progress_branch_name
$progress_office_id
public
int|null
$progress_office_id
$progress_office_name
public
string|null
$progress_office_name
$public_note
public
string|null
$public_note
$share_with_crown
public
bool
$share_with_crown
$share_with_hosting_group
public
bool
$share_with_hosting_group
$share_with_kingdom
public
bool
$share_with_kingdom
$_accessible
Fields that can be mass assigned using newEntity() or patchEntity().
protected
array<string, bool>
$_accessible
= [
'gathering_id' => true,
'member_id' => true,
'public_note' => true,
'share_with_kingdom' => true,
'share_with_hosting_group' => true,
'share_with_crown' => true,
'is_public' => true,
// Set only by the actor-bound offline RSVP endpoint.
'offline_request_id' => false,
// Royal progress fields are set via GatheringAttendancesTable::applyRoyalProgress()
// after the officer assignment is verified; never from request data.
'is_royal_progress' => false,
'progress_office_id' => false,
'progress_office_name' => false,
'progress_branch_name' => false,
'created_by' => true,
'modified_by' => true,
'created' => true,
'modified' => true,
'deleted' => true,
'gathering' => true,
'member' => true,
'creator' => true,
'modifier' => true,
]
$_virtual
Virtual fields
protected
array<string|int, string>
$_virtual
= ['is_shared', 'sharing_description', 'progress_title']
Methods
getBranchId()
Get the branch ID for policy scoping
public
getBranchId() : int|null
Returns the branch_id of the gathering this attendance is for. This is used by the BasePolicy for branch-based permission scoping.
The gathering's branch_id is used because attendance records should follow the same permission scoping as the gathering itself - if you can manage a gathering's branch, you can manage attendance for that gathering.
Return values
int|null_getIsShared()
Virtual field to check if attendance is shared with anyone
protected
_getIsShared() : bool
Return values
bool_getProgressTitle()
Virtual field with the display title for a royal progress RSVP, built from the office snapshot taken at RSVP time.
protected
_getProgressTitle() : string|null
Return values
string|null —e.g. "Crown of Ansteorra", null when not progress
_getSharingDescription()
Virtual field to get sharing description
protected
_getSharingDescription() : string