-
Docs
Backend
-
Behaviors
-
Classes
-
Controllers
-
Database
-
Seeds
-
-
Facades
-
FormWidgets
-
Helpers
-
Exception
- Backend
-
-
Models
-
ReportWidgets
-
Skins
-
Traits
-
Widgets
- ServiceProvider
-
-
Cms
-
Classes
- Asset
- AutoDatasource
- CmsCompoundObject
- CmsController
- CmsException
- CmsObject
- CmsObjectCollection
- CodeBase
- CodeParser
- ComponentBase
- ComponentHelpers
- ComponentManager
- ComponentPartial
- Content
- Controller
- Layout
- LayoutCode
- MediaLibrary
- MediaLibraryItem
- MediaViewHelper
- Meta
- ObjectMemoryCache
- Page
- PageCode
- Partial
- PartialCode
- PartialStack
- Router
- Theme
- ThemeManager
-
Components
-
Contracts
-
Controllers
-
Facades
-
FormWidgets
-
Helpers
-
Models
-
ReportWidgets
-
Traits
-
Twig
- ComponentNode
- ComponentTokenParser
- ContentNode
- ContentTokenParser
- DebugExtension
- DefaultNode
- DefaultTokenParser
- Extension
- FlashNode
- FlashTokenParser
- FrameworkNode
- FrameworkTokenParser
- Loader
- PageNode
- PageTokenParser
- PartialNode
- PartialTokenParser
- PlaceholderNode
- PlaceholderTokenParser
- PutNode
- PutTokenParser
- ScriptsNode
- ScriptsTokenParser
- StylesNode
- StylesTokenParser
-
Widgets
- ServiceProvider
-
-
System
-
Behaviors
-
Classes
-
Console
-
Controllers
-
Database
-
Helpers
-
Models
-
ReportWidgets
-
Traits
-
Twig
- ServiceProvider
-
-
Events
-
backend
-
ajax
-
filter
-
form
-
list
-
menu
-
page
-
user
-
-
cms
-
ajax
-
block
-
combiner
-
component
-
object
-
page
-
router
-
template
-
theme
-
-
halcyon
-
datasource
-
-
mailer
-
media
-
model
-
system
-
assets
-
console
-
mirror
-
theme
-
-
reportwidgets
-
settings
- extendConfigFile
-
-
translator
-
-
Library
-
Argon
-
Auth
-
Models
- AuthException
- Manager
-
-
Config
-
Cookie
-
Middleware
-
-
Database
-
Attach
-
Behaviors
-
Concerns
-
Connections
-
Connectors
-
Models
-
Relations
-
Schema
-
Traits
-
Updates
- README
- Builder
- Collection
- DatabaseServiceProvider
- DataFeed
- Dongle
- MemoryCache
- Model
- ModelBehavior
- ModelException
- NestedTreeScope
- Pivot
- QueryBuilder
- SortableScope
- TreeCollection
- Updater
-
-
Events
-
Exception
-
Extension
-
Filesystem
-
Flash
-
Foundation
-
Bootstrap
-
Console
-
Exception
-
Http
-
Middleware
- Kernel
-
-
Providers
- Application
- Maker
-
-
Halcyon
-
Datasource
-
Exception
-
Processors
-
Traits
- README
- Builder
- Collection
- HalcyonServiceProvider
- MemoryCacheManager
- MemoryRepository
- Model
-
-
Html
-
Mail
-
Network
-
Parse
-
Router
-
Scaffold
-
Support
-
Translation
-
- Documentation
- API
- Cms
- Classes
- ComponentManager
Cms\Classes\ComponentManager
Source: ~/modules/cms/classes/ComponentManager.php
Component manager
Protected properties
protected array $callbacks
Cache of registration callbacks.
protected array $codeMap
An array where keys are codes and values are class names.
protected array $classMap
An array where keys are class names and values are codes.
protected array $pluginMap
An array containing references to a corresponding plugin for each component class.
protected array $detailsCache
A cached array of component details.
protected static $instance
Public methods
public void __clone()
public void __wakeup()
public mixed findComponentPlugin(mixed $component)
Returns a parent plugin for a specific component object.
Parameters
- mixed $component - A component to find the plugin for.
public static void forgetInstance()
Forget this singleton's instance if it exists
public bool hasComponent(string $name)
Checks to see if a component has been registered.
Parameters
- string $name - A component class name or code.
public static void instance()
Create a new instance of this singleton.
public array listComponentDetails()
Returns an array of all component detail definitions.
public array listComponents()
Returns a list of registered components.
public ComponentBase makeComponent(string $name, CmsObject $cmsObject=NULL, array $properties=array())
Makes a component object with properties set.
Parameters
- string $name - A component class name or code.
- CmsObject $cmsObject - The Cms object that spawned this component.
- array $properties - The properties set by the Page or Layout.
public void registerComponent($className, $code=NULL, $plugin=NULL)
Registers a single component.
Parameters
- $className
- $code
- $plugin
public array registerComponents(callable $definitions)
Manually registers a component for consideration. Usage:
ComponentManager::registerComponents(function ($manager) { $manager->registerComponent('October\Demo\Components\Test', 'testComponent'); });
Parameters
- callable $definitions
public string resolve($name)
Returns a class name from a component code Normalizes a class name or converts an code to it's class name.
Parameters
- $name
Protected methods
protected void __construct()
Constructor.
protected void init()
Initialize the singleton free from constructor parameters.
protected void loadComponents()
Scans each plugin an loads it's components.