KMP PHP API Reference

TableAdminController extends AppController
in package

Simple database administration interface for super users.

Table of Contents

Constants

VIEW_DATA_EVENT  = 'KMP.plugins.callForViewData'
VIEW_PLUGIN_EVENT  = 'KMP.plugins.callForViewCells'

Properties

$isCsvRequest  : bool
$pluginViewCells  : array<string|int, mixed>

Methods

beforeFilter()  : Response|null|void
Pre-action filter for application-wide processing.
index()  : void
Index.
initialize()  : void
Load shared components: Authentication, Authorization, Flash.
isCsvRequest()  : bool
Check if current request is for CSV export.
switchView()  : Response
Switch between mobile and desktop view modes.
authorizeCurrentUrl()  : void
Authorize the current URL/action via Authorization component.
organizeViewCells()  : array<string|int, mixed>
Organize view cells by type and display order.
getConfirmationRequiredType()  : string|null
Get confirmation required type.
getMutationType()  : string|null
Get mutation type.
loadTableSnapshot()  : array{columns: array, rows: array>, totalRows: int}
requireSuperUser()  : void
Require super user.

Constants

VIEW_DATA_EVENT

public string VIEW_DATA_EVENT = 'KMP.plugins.callForViewData'

Event for plugin view data enhancement

VIEW_PLUGIN_EVENT

public string VIEW_PLUGIN_EVENT = 'KMP.plugins.callForViewCells'

Event for plugin view cell registration

Properties

$isCsvRequest

protected bool $isCsvRequest = false

Whether current request is for CSV export (.csv extension)

$pluginViewCells

protected array<string|int, mixed> $pluginViewCells = []

View cells from plugins for current request

Methods

beforeFilter()

Pre-action filter for application-wide processing.

public beforeFilter(EventInterface $event) : Response|null|void

Handles: CSV detection, plugin validation, navigation history, view cell loading, and Turbo Frame detection.

Parameters
$event : EventInterface

The beforeFilter event

Return values
Response|null|void

initialize()

Load shared components: Authentication, Authorization, Flash.

public initialize() : void

isCsvRequest()

Check if current request is for CSV export.

public isCsvRequest() : bool
Return values
bool

switchView()

Switch between mobile and desktop view modes.

public switchView() : Response

Stores preference in session and redirects to appropriate interface. Mobile redirects to viewMobileCard, desktop to profile.

Return values
Response

Redirect response

authorizeCurrentUrl()

Authorize the current URL/action via Authorization component.

protected authorizeCurrentUrl() : void
Tags
throws
ForbiddenException

When authorization fails

organizeViewCells()

Organize view cells by type and display order.

protected organizeViewCells(array<string|int, mixed> $viewCells) : array<string|int, mixed>

Unused - view cells organized in ViewCellRegistry

Parameters
$viewCells : array<string|int, mixed>

Flat array of view cell configurations

Return values
array<string|int, mixed>

Organized array grouped by type and sorted by order

getConfirmationRequiredType()

Get confirmation required type.

private getConfirmationRequiredType(string $sql) : string|null
Parameters
$sql : string
Return values
string|null

getMutationType()

Get mutation type.

private getMutationType(string $sql) : string|null
Parameters
$sql : string
Return values
string|null

loadTableSnapshot()

private loadTableSnapshot(Connection $connection, string $tableName, int $page, int $limit) : array{columns: array, rows: array>, totalRows: int}
Parameters
$connection : Connection
$tableName : string
$page : int
$limit : int
Return values
array{columns: array, rows: array>, totalRows: int}

        
On this page

Search results