Activity
extends BaseEntity
in package
Activity Entity - Authorization Type Definition
Represents an activity authorization type within KMP requiring member authorization for participation. Activities define approval workflows, age restrictions, and permission requirements.
Comprehensive documentation available in /docs/5.6.4-activity-entity-reference.md.
Tags
Table of Contents
Properties
- $activity_group_id : int
- $branch_id : int|null
- $created : DateTime|null
- $deleted : DateTime|null
- $grants_role_id : int|null
- $id : int
- $maximum_age : int|null
- $minimum_age : int|null
- $modified : DateTime|null
- $name : string
- $num_required_authorizors : int
- $num_required_renewers : int
- $permission_id : int|null
- $term_length : int
- $_accessible : array<string, bool>
- Mass Assignment Security Configuration
Methods
- getApproversQuery() : SelectQuery
- Get Approvers Query for Activity Authorization
- getBranchId() : int|null
- Get the branch ID for authorization checks.
- _getActivityGroupName() : string|null
- Get activity_group_name virtual property
- _getGrantsRoleName() : string
- Get grants_role_name virtual property
Properties
$activity_group_id
public
int
$activity_group_id
Foreign key to ActivityGroup
$branch_id
public
int|null
$branch_id
Associated branch ID (when applicable)
$created
public
DateTime|null
$created
Creation timestamp
$deleted
public
DateTime|null
$deleted
Soft deletion timestamp
$grants_role_id
public
int|null
$grants_role_id
Role auto-granted on authorization approval
$id
public
int
$id
Primary key
$maximum_age
public
int|null
$maximum_age
Maximum age requirement
$minimum_age
public
int|null
$minimum_age
Minimum age requirement
$modified
public
DateTime|null
$modified
Last modification timestamp
$name
public
string
$name
Unique activity identifier
$num_required_authorizors
public
int
$num_required_authorizors
Required approvers for new requests
$num_required_renewers
public
int
$num_required_renewers
Required approvers for renewals
$permission_id
public
int|null
$permission_id
RBAC permission for approver discovery
$term_length
public
int
$term_length
Authorization validity in days
$_accessible
Mass Assignment Security Configuration
protected
array<string, bool>
$_accessible
= ["name" => true, "term_length" => true, "activity_group_id" => true, "minimum_age" => true, "maximum_age" => true, "num_required_authorizors" => true, "deleted" => true, "activity_group" => true, "member_activities" => true, "pending_authorizations" => true, "permission_id" => true, "grants_role_id" => true, "role" => true, "num_required_renewers" => true]
Defines which fields can be safely mass assigned via newEntity() or patchEntity(). Accessible fields allow administrator configuration while protecting timestamps and identifiers.
Protected fields: id, created, created_by, modified, modified_by
See /docs/5.6.5-activity-security-patterns.md for comprehensive security documentation.
Field accessibility configuration
Tags
Methods
getApproversQuery()
Get Approvers Query for Activity Authorization
public
getApproversQuery(int $branch_id) : SelectQuery
Returns a query of members who have permission to authorize this activity within the specified organizational branch. Uses PermissionsLoader for optimized permission-based member discovery with branch scoping.
Comprehensive documentation: See /docs/5.6.5-activity-security-patterns.md for
approvers discovery patterns, error handling, and usage examples.
Parameters
- $branch_id : int
-
Branch scope for approver identification
Tags
Return values
SelectQuery —Query object for eligible approvers
getBranchId()
Get the branch ID for authorization checks.
public
getBranchId() : int|null
Child classes should override for complex branch relationships.
Return values
int|null —The branch ID, or null if no association
_getActivityGroupName()
Get activity_group_name virtual property
protected
_getActivityGroupName() : string|null
Returns the associated activity group name for grid display.
Return values
string|null_getGrantsRoleName()
Get grants_role_name virtual property
protected
_getGrantsRoleName() : string
Returns the granted role name or "None" if no role is assigned.