-
Backend
-
Behaviors
-
FormController
-
ImportExportController
-
ListController
-
RelationController
- FormController
- ImportExportController
- ListController
- RelationController
- ReorderController
- UserPreferencesModel
-
-
Classes
-
Dashboard
-
NavigationManager
-
WidgetManager
- AuthManager
- BackendController
- Controller
- ControllerBehavior
- DashboardManager
- DashboardWidgetBase
- FilterScope
- FilterWidgetBase
- FormField
- FormTabs
- FormWidgetBase
- ListColumn
- LoginCustomization
- MainMenuItem
- NavigationManager
- ReportDataSourceBase
- ReportDataSourceManager
- ReportWidgetBase
- RoleManager
- RolePermission
- SettingsController
- SideMenuItem
- Skin
- StaticReportWidgetContainer
- VueComponentBase
- WidgetBase
- WidgetManager
- WildcardController
-
-
Controllers
-
Database
-
Facades
-
FilterWidgets
-
FormWidgets
-
Helpers
-
Models
-
BrandSetting
-
ExportModel
-
ImportModel
- AccessLog
- BrandSetting
- Dashboard
- EditorSetting
- ExportModel
- ImportModel
- Preference
- ReportDataCache
- User
- UserGroup
- UserPreference
- UserPreferenceModel
- UserRole
- UserThrottle
-
-
ReportWidgets
-
Skins
-
Traits
-
VueComponents
-
Widgets
-
Filter
-
Form
-
Lists
-
Table
- Filter
- Form
- Lists
- ListStructure
- ReportContainer
- RoleImpersonator
- Search
- SiteSwitcher
- Table
- Toolbar
-
- ServiceProvider
-
-
Cms
-
Classes
-
Controller
-
EditorExtension
-
Layout
-
Page
-
Partial
-
Theme
- AjaxResponse
- Asset
- CmsCompoundObject
- CmsController
- CmsDemoTrafficDataGenerator
- CmsException
- CmsObject
- CmsObjectCache
- CmsObjectCollection
- CmsReportDataSource
- CmsStatusDataSource
- CodeBase
- CodeParser
- ComponentBase
- ComponentBehavior
- ComponentHelpers
- ComponentManager
- ComponentModuleBase
- ComponentPartial
- Content
- Controller
- EditorExtension
- Layout
- LayoutCode
- Meta
- Page
- PageCode
- PageManager
- Partial
- PartialCode
- PartialStack
- PartialWatcher
- Router
- Snippet
- SnippetManager
- Theme
- ThemeManager
- ThisVariable
- TrafficLogger
-
-
Components
-
Console
-
Controllers
-
Database
-
Facades
-
FormWidgets
-
Helpers
-
Models
-
ReportWidgets
-
Traits
-
Twig
- AjaxPartialTokenParser
- ComponentNode
- ComponentTokenParser
- ContentNode
- ContentTokenParser
- DebugExtension
- DefaultNode
- DefaultTokenParser
- Extension
- FlashNode
- FlashTokenParser
- FrameworkNode
- FrameworkTokenParser
- GetAttrAdjuster
- GetAttrNode
- Loader
- MetaNode
- MetaTokenParser
- PageNode
- PageTokenParser
- PartialNode
- PartialTokenParser
- PlaceholderNode
- PlaceholderTokenParser
- PutNode
- PutTokenParser
- ScriptsNode
- ScriptsTokenParser
- StylesNode
- StylesTokenParser
-
VueComponents
-
Widgets
- ServiceProvider
-
-
Editor
-
Behaviors
-
Classes
-
Controllers
-
Traits
-
VueComponents
- ServiceProvider
-
-
Media
-
Classes
-
Controllers
-
FormWidgets
-
Helpers
-
Twig
-
Widgets
- ServiceProvider
-
-
System
-
Behaviors
-
Classes
-
PresetManager
-
SiteManager
-
UiManager
-
UpdateManager
- AppBase
- CombineAssets
- DependencyResolver
- DriverBehavior
- ErrorHandler
- MailManager
- ManifestCache
- MarkupExtensionItem
- MarkupManager
- ModelBehavior
- PagerElement
- PluginBase
- PluginManager
- PresetManager
- ProductDetail
- RateLimiter
- ResizeImageItem
- ResizeImages
- SettingsManager
- SettingsMenuItem
- SiteManager
- SystemController
- SystemReportDataSource
- UiElement
- UiManager
- UpdateManager
- VersionManager
-
-
Console
- ComposerScript
- OctoberAbout
- OctoberDown
- OctoberFresh
- OctoberMigrate
- OctoberMirror
- OctoberOptimize
- OctoberPasswd
- OctoberUp
- OctoberUpdate
- OctoberUtil
- OctoberUtilCommands
- OctoberUtilPatches
- OctoberUtilRefitLang
- PluginCheck
- PluginDisable
- PluginEnable
- PluginInstall
- PluginList
- PluginRefresh
- PluginRemove
- PluginSeed
- PluginTest
- ProjectSync
-
Controllers
-
Database
-
Facades
-
Helpers
-
Middleware
-
Models
-
ReportWidgets
-
Traits
-
Twig
-
Widgets
- ServiceProvider
-
-
Tailor
-
Behaviors
-
Classes
-
Blueprint
-
BlueprintIndexer
-
EditorExtension
-
Relations
-
SchemaBuilder
-
Scopes
- Blueprint
- BlueprintCollection
- BlueprintErrorData
- BlueprintException
- BlueprintIndexer
- BlueprintModel
- BlueprintVerifier
- ComponentVariable
- ContentFieldBase
- EditorExtension
- FieldManager
- Fieldset
- NavigationItem
- PermissionItem
- RecordIndexer
- SchemaBuilder
- SchemaPruner
-
-
Components
-
Console
-
ContentFields
-
Controllers
-
Models
-
EntryRecord
-
GlobalRecord
-
RecordImport
- ContentSchema
- EntryRecord
- GlobalRecord
- NestedFormItem
- PreviewToken
- RecordExport
- RecordImport
- RepeaterItem
-
-
Traits
-
VueComponents
- ServiceProvider
-
-
Events
-
backend
-
ajax
-
brand
-
files
-
filter
-
form
-
list
-
menu
-
page
-
roles
-
site
-
user
-
-
cms
-
ajax
-
block
-
combiner
-
component
-
internalTrafficStatistics
-
object
-
page
-
pageLookup
-
resizer
-
router
-
sitePicker
-
template
-
theme
- extendTwig
-
-
deferredBinding
-
editor
-
extension
-
-
exception
-
halcyon
-
datasource
-
-
mailer
-
media
-
model
-
auth
-
filter
-
form
-
relation
-
/docs/api/model/relation/add
-
/docs/api/model/relation/associate
- attach
-
/docs/api/model/relation/beforeadd
-
/docs/api/model/relation/beforeassociate
- beforeAttach
- beforeDetach
-
/docs/api/model/relation/beforedissociate
-
/docs/api/model/relation/beforeremove
- detach
-
/docs/api/model/relation/dissociate
-
/docs/api/model/relation/remove
-
-
/docs/api/model/afterboot
-
/docs/api/model/aftercreate
-
/docs/api/model/afterdelete
-
/docs/api/model/afterfetch
-
/docs/api/model/afterinit
- afterRelation
- afterRestore
-
/docs/api/model/aftersave
- afterTrash
-
/docs/api/model/afterupdate
- afterValidate
-
/docs/api/model/beforecreate
-
/docs/api/model/beforedelete
-
/docs/api/model/beforefetch
- beforeGetAttribute
- beforeRelation
- beforeReplicate
- beforeRestore
-
/docs/api/model/beforesave
- beforeSetAttribute
-
/docs/api/model/beforeupdate
- beforeValidate
- extendBlueprint
- getAttribute
- newInstance
- saveInternal
- setAttribute
-
-
pages
-
snippet
-
-
site
-
system
-
assets
- beforeAddAsset
-
/docs/api/system/assets/beforebundleasset
-
console
-
mirror
-
-
mail
-
reportwidgets
-
resizer
-
settings
-
site
-
updater
- extendConfigFile
- extendTwig
-
-
tailor
-
user
-
-
Library
-
Argon
-
Assetic
-
Asset
-
Cache
-
Exception
-
Factory
-
Filter
-
Traits
-
Util
- README
- AsseticServiceProvider
- AssetManager
- AssetWriter
- Combiner
- FilterManager
-
-
Auth
-
Combine
-
Composer
-
Config
-
Database
-
Attach
-
Concerns
-
Connections
-
Connectors
-
Factories
-
Models
-
Relations
-
Schema
-
Scopes
-
Traits
-
Updates
- README
- Builder
- Collection
- DatabaseServiceProvider
- Dongle
- ExpandoModel
- MigrationServiceProvider
- Model
- ModelBehavior
- ModelException
- MorphPivot
- NestedTreeScope
- Pivot
- QueryBuilder
- Replicator
- SortableScope
- TreeCollection
- Updater
-
-
Element
-
Filter
-
Form
-
Lists
-
Navigation
- ElementBase
- ElementHolder
-
-
Events
-
Exception
-
Extension
-
Filesystem
-
Flash
-
Foundation
-
Bootstrap
-
Console
-
Exception
-
Http
-
Middleware
- Kernel
-
-
Providers
- Application
-
-
Halcyon
-
Concerns
-
Datasource
-
Exception
-
Processors
-
Traits
- README
- Builder
- Collection
- HalcyonServiceProvider
- Model
-
-
Html
-
Mail
-
Network
-
Parse
-
Resize
-
Router
-
Scaffold
-
Support
-
Debug
-
Facades
-
Traits
- README
- Arr
- ClassLoader
- Collection
- Facade
- ModuleServiceProvider
- SafeCollection
- ServiceProvider
- Singleton
- Str
-
-
Translation
-
Validation
-
- Documentation
- API
- Cms
- Classes
- ComponentBase
Cms\Classes\ComponentBase
Overview
ComponentBase class
Extends
Implements
- October\Contracts\Twig\CallsAnyMethod
- Stringable
Public Properties
public string $id
id is a unique identifier for this component.
public string $alias
alias used for this component.
public string $name
name as a class name or class alias used in the component declaration in a template.
public boolean $isHidden
isHidden determines whether the component is hidden from the backend UI.
public string $pluginIcon
pluginIcon of the plugin that defines the component. This field is used by the CMS internally.
public string $componentCssClass
componentCssClass name for the backend page/layout component list. This field is used by the CMS internally.
public boolean $inspectorEnabled
inspectorEnabled determines whether Inspector can be used with the component. This field is used by the CMS internally.
public string $assetPath
assetPath specifies the relative path to the asset directory.
public string $assetUrlPath
assetUrlPath specifies the public path to the asset directory.
Show inherited public properties
Inherited Public Properties
- $implement - extensions for this class. (defined in October\Rain\Extension\Extendable)
Protected Properties
protected string $dirName
dirName specifies the component directory name.
protected Cms\Classes\Controller $controller
controller object.
protected Cms\Classes\PageCode $page
page object object.
protected array $externalPropertyNames
externalPropertyNames is a collection of external property names used by this component.
protected string $componentGetPathCache
protected array $assets
Collection of assets to display in the layout.
protected array $assetBundles
Collection of combined and prioritized assets.
protected string $assetDefaults
assetDefaults is the default attributes for assets.
protected array $emitterSingleEventCollection
emitterSingleEventCollection of events to be fired once only
protected array $emitterEventCollection
emitterEventCollection of all registered events
protected array $emitterEventSorted
emitterEventSorted collection
protected DependencyResolver $dependencyResolver
dependencyResolver for AJAX handlers and controller actions.
protected array $properties
properties contains the object property values.
Show inherited protected properties
Inherited Protected Properties
- $extensionData - contains class reflection information, including behaviors. (defined in October\Rain\Extension\Extendable)
- $extendableStaticMethods - is a collection of static methods used by behaviors. (defined in October\Rain\Extension\Extendable)
- $extendableGuardProperties - indicates if dynamic properties can be created. (defined in October\Rain\Extension\Extendable)
Public Methods
public __call()
public __call(string $method, array $parameters): mixed
__call dynamically handles calls into the controller instance.
public __construct()
public __construct( CodeBase|null $cmsObject = null, array $properties = [] ): void
__construct the component, which takes in the page or layout code section object and properties set by the page or layout.
public __toString()
public __toString(): string
toString returns the component's alias, used by SELF__
public addCss()
public addCss($name, $attributes = []): void
addCss includes a StyleSheet asset to the asset list
public addCssBundle()
public addCssBundle($name, $attributes = []): void
addCssBundle includes a CSS asset to the bundled combiner pipeline
public addJs()
public addJs($name, $attributes = []): void
addJs includes a JavaScript asset to the asset list
public addJsBundle()
public addJsBundle($name, $attributes = []): void
addJsBundle includes a JS asset to the bundled combiner pipeline
public addRss()
public addRss($name, $attributes = []): void
addRss adds an RSS link asset to the asset list. Call $this->makeAssets() in a view to output corresponding markup.
public bindEvent()
public bindEvent($event, $callback, $priority = 0): void
bindEvent creates a new event binding
public bindEventOnce()
public bindEventOnce($event, $callback, $priority = 0): void
bindEventOnce creates a new event binding that fires once only
public combineAssets()
public combineAssets($assets, $localPath = ''): string
combineAssets runs asset paths through the Asset Combiner
public componentDetails()
public componentDetails(): void
componentDetails returns information about this component, including name and description
public defineProperties()
public defineProperties(): void
defineProperties used by this class. This method should be used as an override in the extended class.
public fireEvent()
public fireEvent( string $event, array $params = [], boolean $halt = false ): array
fireEvent and call the listeners
public fireSystemEvent()
public fireSystemEvent( string $event, array $params = [], boolean $halt = true ): mixed
fireSystemEvent fires a combination of local and global events. The first segment is removed from the event name locally and the local object is passed as the first argument to the event globally. Halting is also enabled by default.
For example:
$this->fireSystemEvent('backend.list.myEvent', ['my value']);
Is equivalent to:
$this->fireEvent('list.myEvent', ['myvalue'], true); Event::fire('backend.list.myEvent', [$this, 'myvalue'], true);
public fireViewEvent()
public fireViewEvent(string $event, array $params = []): string
fireViewEvent is a special event function used for extending within view files, allowing HTML to be injected multiple times.
For example:
<?= $this->fireViewEvent('backend.auth.extendSigninView') ?>
public flushAssets()
public flushAssets(): void
flushAssets disables the use, and subsequent broadcast, of assets. This is useful to call during an AJAX request to speed things up. This method works by specifically targeting the hasAssetsDefined method.
public getAssetPath()
public getAssetPath( string $fileName, string $assetPath = null ): string
getAssetPath locates a file based on it's definition. If the file starts with a forward slash, it will be returned in context of the application public path, otherwise it will be returned in context of the asset path.
public getAssetPaths()
public getAssetPaths(): array
getAssetPaths returns an array of all registered asset paths.
public getController()
public getController(): void
getController returns the controller using this component.
public getPath()
public getPath(): void
getPath returns the absolute component path
public getProperties()
public getProperties(): array
getProperties returns all properties.
public getPropertyOptions()
public getPropertyOptions(string $property): array
getPropertyOptions returns options for multi-option properties (drop-downs, etc.)
public hasAssetsDefined()
public hasAssetsDefined(): bool
hasAssetsDefined returns true if assets any have been added
public init()
public init(): void
init is executed when this component is first initialized, before AJAX requests.
public makeAssets()
public makeAssets(string $type = null): string
makeAssets outputs <link>
and <script>
tags to load assets previously added with addJs and addCss method calls
public makePrimaryAccessor()
public makePrimaryAccessor(): void
makePrimaryAccessor returns the PHP object variable for the Twig view layer.
public onRender()
public onRender(): void
onRender is executed when this component is rendered on a page or layout.
public onRun()
public onRun(): void
onRun is executed when this component is bound to a page or layout, part of the page life cycle.
public paramName()
public paramName(string $name, mixed $default = null): string
paramName returns the external property name when the property value is a routing parameter reference. Otherwise the default value specified is returned.
public property()
public property(string $name, ?string $default = null): ?string
property returns a defined property value or default if one is not set.
public propertyName()
public propertyName(string $name, mixed $default = null): string
propertyName returns the external property name when the property value is an external property reference. Otherwise the default value specified is returned.
public renderPartial()
public renderPartial(): void
renderPartial renders a requested partial in context of this component, see Cms\Classes\Controller@renderPartial for usage.
public runAjaxHandler()
public runAjaxHandler($handler): boolean
runAjaxHandler executes the event cycle when running an AJAX handler.
public runLifeCycle()
public runLifeCycle(): void
runLifeCycle executes the life cycle for the component.
public setExternalPropertyName()
public setExternalPropertyName(string $name, string $extName): void
setExternalPropertyName sets an external property name.
public setExternalPropertyNames()
public setExternalPropertyNames(array $names): void
setExternalPropertyNames sets names used by external properties.
public setProperties()
public setProperties(array $properties): void
setProperties for multiple values
public setProperty()
public setProperty(string $name, mixed $value): void
setProperty for a single value
public unbindEvent()
public unbindEvent($event = null): void
unbindEvent destroys an event binding
public validateProperties()
public validateProperties(array $properties): array
validateProperties against the defined properties of the class. This method also sets default properties.
Inherited Public Methods
- __callStatic() - calls an undefined static method. (defined in October\Rain\Extension\Extendable)
- __get() - an undefined property. (defined in October\Rain\Extension\Extendable)
- __set() - an undefined property. (defined in October\Rain\Extension\Extendable)
- __sleep() - prepare the object for serialization. (defined in October\Rain\Extension\Extendable)
- __wakeup() - when a model is being unserialized, check if it needs to be booted. (defined in October\Rain\Extension\Extendable)
- addDynamicMethod() - programmatically adds a method to the extendable class. (defined in October\Rain\Extension\Extendable)
- addDynamicProperty() - programmatically adds a property to the extendable class. (defined in October\Rain\Extension\Extendable)
- asExtension() - is short hand for
getClassExtension()
method, except takes the short. (defined in October\Rain\Extension\Extendable) - clearExtendedClasses() - (defined in October\Rain\Extension\Extendable)
- extend() - this class with a closure. (defined in October\Rain\Extension\Extendable)
- extendClassWith() - dynamically extends a class with a specified behavior. (defined in October\Rain\Extension\Extendable)
- extendableCall() - magic method for
__call()
. (defined in October\Rain\Extension\Extendable) - extendableCallStatic() - magic method for
__callStatic()
. (defined in October\Rain\Extension\Extendable) - extendableConstruct() - should be called as part of the constructor. (defined in October\Rain\Extension\Extendable)
- extendableDestruct() - should be called when serializing the object. (defined in October\Rain\Extension\Extendable)
- extendableExtendCallback() - is a helper method for
::extend()
static method. (defined in October\Rain\Extension\Extendable) - extendableGet() - magic method for
__get()
. (defined in October\Rain\Extension\Extendable) - extendableSet() - magic method for
__set()
. (defined in October\Rain\Extension\Extendable) - getClassExtension() - returns a behavior object from an extendable class, example:. (defined in October\Rain\Extension\Extendable)
- getClassMethodAsReflector() - (defined in October\Rain\Extension\Extendable)
- getClassMethods() - gets a list of class methods, extension equivalent of get_class_methods(). (defined in October\Rain\Extension\Extendable)
- getDynamicProperties() - returns all dynamic properties and their values. (defined in October\Rain\Extension\Extendable)
- implementClassWith() - will implement an extension using non-interference and should. (defined in October\Rain\Extension\Extendable)
- isClassExtendedWith() - checks if extendable class is extended with a behavior object. (defined in October\Rain\Extension\Extendable)
- isClassInstanceOf() - checks if the class implements the supplied interface methods. (defined in October\Rain\Extension\Extendable)
- methodExists() - checks if a method exists, extension equivalent of method_exists(). (defined in October\Rain\Extension\Extendable)
- propertyExists() - checks if a property exists, extension equivalent of
property_exists()
. (defined in October\Rain\Extension\Extendable)
Protected Methods
protected combineBundledAssets()
protected combineBundledAssets($type): array
combineBundledAssets spins over every bundle definition and combines them to an asset
protected emitterEventSortEvents()
protected emitterEventSortEvents($eventName, $combined = []): array
emitterEventSortEvents sorts the listeners for a given event by priority
protected getAssetEntryBuildPath()
protected getAssetEntryBuildPath(array $asset): string
Internal helper, attaches a build code to an asset path
protected getAssetScheme()
protected getAssetScheme($asset): string
getAssetScheme is an internal helper to get the asset scheme.
protected getComponentAssetRelativePath()
protected getComponentAssetRelativePath(): string
protected getComponentAssetUrlPath()
protected getComponentAssetUrlPath(): string
getComponentAssetUrlPath returns the public directory for the component assets
protected getLocalPath()
protected getLocalPath($relativePath): string
getLocalPath converts a relative path to a local path
protected makeCallMethod()
protected makeCallMethod($instance, $method, $parameters = []): void
makeCallMethod will prepare method args with DI and call the method
protected processAssetAttributes()
protected processAssetAttributes($attributes): void
protected removeDuplicateAssets()
protected removeDuplicateAssets(): void
removeDuplicateAssets removes duplicate and global assets from the entire collection
protected renderAssetAttributes()
protected renderAssetAttributes($type, $asset): string
renderAssetAttributes takes an asset definition and returns the necessary HTML output
Show inherited protected methods
Inherited Protected Methods
- extendableIsAccessible() - checks if a property is accessible, property equivalent. (defined in October\Rain\Extension\Extendable)
- extendableIsSettingDynamicProperty() - returns true if a dynamic. (defined in October\Rain\Extension\Extendable)
- extensionExtractImplements() - will return classes to implement. (defined in October\Rain\Extension\Extendable)
- extensionExtractMethods() - extracts the available methods from a behavior and adds it. (defined in October\Rain\Extension\Extendable)
- getExtendableMethodFromDynamicMethods() - (defined in October\Rain\Extension\Extendable)
- getExtendableMethodFromExtensions() - (defined in October\Rain\Extension\Extendable)