-
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
- System
- Classes
- UpdateManager
System\Classes\UpdateManager
Overview
UpdateManager handles the CMS install and update process.
Protected Properties
protected string $baseDirectory
baseDirectory for application.
protected string $tempDirectory
tempDirectory for working.
protected PluginManager $pluginManager
protected ThemeManager $themeManager
protected VersionManager $versionManager
protected int $migrateCount
migrateCount number of migrations that occurred.
protected Illuminate\Console\OutputStyle $notesOutput
protected Illuminate\Console\Command $notesCommand
protected string $key
Secure API Key
protected string $secret
Secure API Secret
Public Methods
public __construct()
public __construct(): void
__construct this class
public canUpdateProject()
public canUpdateProject(): bool
canUpdateProject checks if composer is ready to access the gateway using authentication
public check()
public check($force = false): int
check for new updates and returns the amount of unapplied updates
public checkVersions()
public checkVersions($force = false): array
checkVersions checks for available versions
public getComposerProjectKey()
public getComposerProjectKey(): string|null
getComposerProjectKey returns the project key used by composer
public getComposerUrl()
public getComposerUrl($withProtocol = true): string
getComposerUrl returns the endpoint for composer
public getCurrentBuildNumber()
public getCurrentBuildNumber(): string|null
getCurrentBuildNumber return the current build number
public getCurrentVersion()
public getCurrentVersion(): string
getCurrentVersion returns the current version, with or without build
public getMigrationTableName()
public getMigrationTableName(): string
getMigrationTableName returns the migration table name
public getNotesCommand()
public getNotesCommand(): Illuminate\Console\Command|null
getNotesOutput returns the note command object, if available.
public getNotesOutput()
public getNotesOutput(): Illuminate\Console\OutputStyle|null
getNotesOutput returns the note output, used by command line.
public getProjectDetails()
public getProjectDetails(): object|null
getProjectDetails returns the active project details
public getProjectKey()
public getProjectKey(): void
getProjectKey locates the project key from the file system and seeds the parameter
public installPlugin()
public installPlugin($name): void
installPlugin using composer
public installTheme()
public installTheme($name): void
installTheme using composer
public static instance()
public static instance(): static
instance creates a new instance of this singleton
public migrateApp()
public migrateApp(): void
migrateApp runs migrations on the app directory
public migrateModule()
public migrateModule($module): void
migrateModule runs migrations on a single module
public migrateModules()
public migrateModules(): void
migrateModules migrates all modules
public migratePlugin()
public migratePlugin($name): void
migratePlugin runs update on a single plugin
public migratePlugins()
public migratePlugins(): void
migratePlugins migrates all plugins
public requestBrowseProducts()
public requestBrowseProducts($type = null, $page = null): void
requestBrowseProducts will list available products
public requestBrowseProject()
public requestBrowseProject(): void
requestBrowseProject will list project details and cache it
public requestChangelog()
public requestChangelog(): void
requestChangelog returns the latest changelog information.
public requestPluginContent()
public requestPluginContent($name): array
requestPluginContent looks up content for a plugin from the update server
public requestPluginDetails()
public requestPluginDetails($name): array
requestPluginDetails looks up a plugin from the update server
public requestProjectDetails()
public requestProjectDetails($projectKey = null): array
requestProjectDetails requests details about a project based on its identifier
public requestServerData()
public requestServerData(string $uri, array $postData = []): array
requestServerData contacts the update server for a response.
public requestThemeContent()
public requestThemeContent($name): array
requestThemeContent looks up content for a theme from the update server
public requestThemeDetails()
public requestThemeDetails($name): array
requestThemeDetails looks up a theme from the update server
public requestUpdateList()
public requestUpdateList(): array
requestUpdateList used for checking for new updates.
public rollbackApp()
public rollbackApp(): void
rollbackPlugin rolls back application migrations
public rollbackPlugin()
public rollbackPlugin($name): void
rollbackPlugin removes an existing plugin database and version record
public rollbackPluginToVersion()
public rollbackPluginToVersion($name, $toVersion): void
rollbackPlugin removes an existing plugin database and version record
public seedApp()
public seedApp(): void
seedModule runs seeds on the app directory
public seedModule()
public seedModule($module): void
seedModule runs seeds on a module
public seedModules()
public seedModules(): void
seedModules seeds all modules
public setBuild()
public setBuild($build): void
setBuild sets the build number and hash
public setBuildNumberManually()
public setBuildNumberManually(): void
setBuildNumberManually asks the gateway for the latest build number and stores it.
public setNotesCommand()
public setNotesCommand(Illuminate\Console\Command $command): void
setNotesCommand sets the fully qualified command for writing notes.
public setNotesOutput()
public setNotesOutput(Illuminate\Console\OutputStyle $output): self
setNotesOutput sets an output stream for writing notes.
public setSecurity()
public setSecurity(string $key, string $secret): void
Set the API security for all transmissions.
public storeProjectDetails()
public storeProjectDetails($details): void
public syncProjectPackages()
public syncProjectPackages(): array
syncProjectPackages compares installed packages to project packages
public uninstall()
public uninstall(): void
uninstall rolls back all modules and plugins.
public uninstallPlugin()
public uninstallPlugin($name): void
uninstallPlugin attempts to remove the plugin using composer before deleting from the filesystem
public uninstallTheme()
public uninstallTheme($name): void
uninstallTheme attempts to remove the theme using composer before deleting from the filesystem
public update()
public update(): void
update creates the migration table and updates.
public updatePlugin()
public updatePlugin($name): void
Protected Methods
protected createNonce()
protected createNonce(): int
Create a nonce based on millisecond time
protected createServerUrl()
protected createServerUrl(string $uri): string
createServerUrl creates a complete gateway server URL from supplied URI
protected createSignature()
protected createSignature($data, $secret): string
Create a unique signature for transmission.
protected findPluginComposerCode()
protected findPluginComposerCode($code): array
findPluginComposerCode locates a composer code for a plugin
protected findThemeComposerCode()
protected findThemeComposerCode($code): array
findThemeComposerCode locates a composer code for a plugin
protected getBuildFromVersion()
protected getBuildFromVersion($version): int
getBuildFromVersion will return the patch version of a semver string eg: 1.2.3 -> 3, 1.2.3-dev -> 3
protected getComposerVersionConstraint()
protected getComposerVersionConstraint($versionStr): void
protected getMigrator()
protected getMigrator(): Illuminate\Database\Migrations\Migrator
getMigrator returns the migrator service
protected getRepository()
protected getRepository( ): Illuminate\Database\Migrations\DatabaseMigrationRepository
getRepository returns the migrator repository
protected makeHttpRequest()
protected makeHttpRequest( string $url, array $postData ): Illuminate\Http\Client\Response
makeHttpRequest makes a specialized server request to a URL.
protected note()
protected note(string $message): self
note writes a note event for the migrator.