KMP PHP API Reference

ActivitiesViewCellProvider
in package

Activities View Cell Provider Service

Purpose: Provides view cell configurations for the Activities plugin with comprehensive integration support for member profiles, permission management, and API endpoints.

Core Responsibilities:

  • View Cell Registration - Complete cell configuration for Activities plugin
  • Route-Based Cell Visibility - Context-aware cell display logic
  • Multi-Format Support - Tab, JSON, and modal cell configurations
  • Integration Point Management - Seamless plugin integration with core views
  • Plugin State Management - Conditional cell registration based on availability

Architecture: This service implements the view cell provider pattern for the Activities plugin, registering cells with the ViewCellRegistry for automatic rendering in appropriate contexts. It supports multiple cell types and routing configurations.

View Cell Types Provided:

  1. Permission Activities Tab - Shows activities associated with permissions
  2. Member Authorizations Tab - Displays member authorization status and history
  3. Member Authorization JSON - API endpoint for authorization data

Integration Contexts:

  • Permission Views: Activity listing for permission configuration
  • Member Profiles: Authorization status and management interface
  • Mobile API: JSON data for mobile applications and AJAX requests
  • Card Views: Compact authorization displays for member cards

Cell Configuration Features:

  • Route-based visibility controls
  • Order-based positioning in view
  • Badge support for notification counts
  • Icon and label customization
  • Multi-format rendering support

ViewCellRegistry Integration: Utilizes the KMP ViewCellRegistry system for automatic cell discovery and rendering in appropriate view contexts, enabling seamless plugin integration without core application modifications.

Performance Considerations:

  • Plugin availability checking prevents unnecessary processing
  • Static method design for efficient cell configuration generation
  • Route-based conditional loading for optimal performance
  • Lazy loading of cell content through CakePHP cell system

Usage Examples:

// View cells are automatically registered through ViewCellRegistry
// and appear in appropriate contexts:

// Permission view: Shows "Activities" tab with related activities
// Member profile: Shows "Authorizations" tab with member status
// Mobile API: Provides JSON data for mobile authorization displays

Cell Types:

  • TAB: Tabbed interface integration for multi-section views
  • JSON: API endpoint integration for AJAX and mobile support
  • MODAL: Modal dialog integration for detailed views

Integration Points:

  • StaticHelpers::pluginEnabled() - Plugin availability validation
  • ViewCellRegistry - Cell registration and management system
  • BasePluginCell - Common cell functionality and patterns
  • Activities View Cells - Actual cell implementation classes

Troubleshooting:

  • Verify plugin is enabled in configuration
  • Check ViewCellRegistry registration success
  • Validate cell classes exist and are accessible
  • Monitor cell rendering performance and content loading
Tags
see
ViewCellRegistry

Cell registration and management

see
PermissionActivitiesCell

Permission activity display cell

see
MemberAuthorizationsCell

Member authorization display cell

see
MemberAuthorizationDetailsJSONCell

JSON API cell

see
BasePluginCell

Common plugin cell functionality

Table of Contents

Methods

getViewCells()  : array<string|int, mixed>
Provide view cell configurations for the Activities plugin used across tabs, JSON endpoints, and mobile menus.

Methods

getViewCells()

Provide view cell configurations for the Activities plugin used across tabs, JSON endpoints, and mobile menus.

public static getViewCells(array<string|int, mixed> $urlParams[, mixed|null $user = null ]) : array<string|int, mixed>

Generates an array of cells describing where and how Activities-related UI elements should be rendered. If the Activities plugin is disabled, an empty array is returned.

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

URL parameters from the current request used to determine route-based visibility.

$user : mixed|null = null

Current authenticated user or null.

Return values
array<string|int, mixed>

Array of view cell configuration arrays for the Activities plugin.


        
On this page

Search results