KMP PHP API Reference

BestowalTodoTemplateItem extends BaseEntity
in package

A single parallel checklist item within a bestowal to-do template.

Items declare who may complete them (assignee_*) and whether they gate the bestowal's "ready to give" state. Unlike approval steps there is no sequence or threshold — all items are worked in parallel.

Table of Contents

Constants

ASSIGNEE_TYPE_DYNAMIC  : mixed = 'dynamic'
ASSIGNEE_TYPE_MEMBER  : mixed = 'member'
ASSIGNEE_TYPE_OFFICE  : mixed = 'office'
ASSIGNEE_TYPE_OPTIONS  : mixed = [self::ASSIGNEE_TYPE_ROLE => 'Role', self::ASSI...
ASSIGNEE_TYPE_PERMISSION  : mixed = 'permission'
ASSIGNEE_TYPE_ROLE  : mixed = 'role'
ASSIGNEE_TYPE_TO_ACTION_ITEM  : array<string, string> = [self::ASSIGNEE_TYPE_ROLE => \App\Model\Entity\...
Maps template assignee types to the core ActionItem assignee vocabulary.
BRANCH_MODE_ANCESTOR_TYPE  : mixed = 'ancestor_branch_type'
BRANCH_MODE_AWARD  : mixed = 'award_branch'
BRANCH_MODE_OPTIONS  : mixed = [self::BRANCH_MODE_AWARD => 'Award branch', sel...
COMPLETION_PROVIDER_BESTOWAL_COURT_SLOT  : mixed = 'Awards.BestowalCourtSlot'
COMPLETION_PROVIDER_BESTOWAL_GATHERING  : mixed = 'Awards.BestowalGathering'
ITEM_KEY_ADDED_TO_AGENDA  : mixed = 'added_to_agenda'
ITEM_KEY_EVENT_SCHEDULED  : mixed = 'event_scheduled'
REQUIRED_FIELD_COURT_SLOT  : mixed = 'court_slot'
REQUIRED_FIELD_GATHERING  : mixed = 'gathering_id'
REQUIRED_FIELD_OPTIONS  : mixed = ['' => 'None', self::REQUIRED_FIELD_GATHERING =...

Properties

$branch_id  : int|null
$created  : DateTime|null
$id  : int
$modified  : DateTime|null
$_accessible  : array<string, bool>

Methods

getBranchId()  : int|null
Get the branch ID for authorization checks.
getCompletionConfig()  : array<string, mixed>|null
Build completion metadata consumed by core ActionItems.
getDefaultRequiredFieldConfigForSourceRef()  : array<string, mixed>|null
Default required-field metadata for built-in template items.
helpForRequiredField()  : string
labelForRequiredField()  : string
providerForRequiredField()  : string|null
_getAssigneeSummary()  : string
Summarize the configured assignee source for grids and detail views.

Constants

ASSIGNEE_TYPE_OPTIONS

public mixed ASSIGNEE_TYPE_OPTIONS = [self::ASSIGNEE_TYPE_ROLE => 'Role', self::ASSIGNEE_TYPE_PERMISSION => 'Permission', self::ASSIGNEE_TYPE_OFFICE => 'Office', self::ASSIGNEE_TYPE_MEMBER => 'Member', self::ASSIGNEE_TYPE_DYNAMIC => 'Dynamic resolver']

ASSIGNEE_TYPE_TO_ACTION_ITEM

Maps template assignee types to the core ActionItem assignee vocabulary.

public array<string, string> ASSIGNEE_TYPE_TO_ACTION_ITEM = [self::ASSIGNEE_TYPE_ROLE => \App\Model\Entity\ActionItem::ASSIGNEE_TYPE_ROLE, self::ASSIGNEE_TYPE_PERMISSION => \App\Model\Entity\ActionItem::ASSIGNEE_TYPE_PERMISSION, self::ASSIGNEE_TYPE_MEMBER => \App\Model\Entity\ActionItem::ASSIGNEE_TYPE_MEMBER, self::ASSIGNEE_TYPE_OFFICE => \App\Model\Entity\ActionItem::ASSIGNEE_TYPE_DYNAMIC, self::ASSIGNEE_TYPE_DYNAMIC => \App\Model\Entity\ActionItem::ASSIGNEE_TYPE_DYNAMIC]

Office is resolved through a dynamic resolver at materialization time, so it maps to the ActionItem dynamic type.

BRANCH_MODE_OPTIONS

public mixed BRANCH_MODE_OPTIONS = [self::BRANCH_MODE_AWARD => 'Award branch', self::BRANCH_MODE_ANCESTOR_TYPE => 'Ancestor branch type']

COMPLETION_PROVIDER_BESTOWAL_COURT_SLOT

public mixed COMPLETION_PROVIDER_BESTOWAL_COURT_SLOT = 'Awards.BestowalCourtSlot'

COMPLETION_PROVIDER_BESTOWAL_GATHERING

public mixed COMPLETION_PROVIDER_BESTOWAL_GATHERING = 'Awards.BestowalGathering'

REQUIRED_FIELD_OPTIONS

public mixed REQUIRED_FIELD_OPTIONS = ['' => 'None', self::REQUIRED_FIELD_GATHERING => 'Bestowal gathering', self::REQUIRED_FIELD_COURT_SLOT => 'Court assignment']

Properties

$branch_id

public int|null $branch_id

Associated branch ID (when applicable)

$created

public DateTime|null $created

Creation timestamp

$modified

public DateTime|null $modified

Last modification timestamp

$_accessible

protected array<string, bool> $_accessible = ['template_id' => true, 'item_key' => true, 'label' => true, 'description' => true, 'assignee_type' => true, 'assignee_source_id' => true, 'assignee_source_key' => true, 'branch_mode' => true, 'branch_type' => true, 'is_gating' => true, 'is_terminal' => true, 'required_field' => true, 'required_field_config' => true, 'sort_order' => true, 'created' => true, 'modified' => true, 'created_by' => true, 'modified_by' => true, 'deleted' => true, 'bestowal_todo_template' => true]

Methods

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

getCompletionConfig()

Build completion metadata consumed by core ActionItems.

public getCompletionConfig() : array<string, mixed>|null
Return values
array<string, mixed>|null

getDefaultRequiredFieldConfigForSourceRef()

Default required-field metadata for built-in template items.

public static getDefaultRequiredFieldConfigForSourceRef(string|null $sourceRef) : array<string, mixed>|null
Parameters
$sourceRef : string|null

Action item source reference.

Return values
array<string, mixed>|null

helpForRequiredField()

public static helpForRequiredField(string $requiredField) : string
Parameters
$requiredField : string

Required field key.

Return values
string

Help text.

labelForRequiredField()

public static labelForRequiredField(string $requiredField) : string
Parameters
$requiredField : string

Required field key.

Return values
string

Label.

providerForRequiredField()

public static providerForRequiredField(string $requiredField) : string|null
Parameters
$requiredField : string

Required field key.

Return values
string|null

Completion provider key.

_getAssigneeSummary()

Summarize the configured assignee source for grids and detail views.

protected _getAssigneeSummary() : string
Return values
string
On this page

Search results