KMP PHP API Reference

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
see
ActivityGroup

Parent categorization entity

see
Authorization

Child authorization records

see
Permission

RBAC permission integration

see
Role

Role granting functionality

since

KMP 1.0

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

$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
since

KMP 1.0

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
throws
Exception

When permission_id is not configured for activity

see
PermissionsLoader::getMembersWithPermissionsQuery()

Core permission query

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.

Return values
string

        
On this page

Search results