BaserCorePlugin
extends BcPlugin
in package
implements
AuthenticationServiceProviderInterface
Class plugin
Table of Contents
Interfaces
- AuthenticationServiceProviderInterface
Properties
- $currentSite : null
- 現在のサイト キャッシュ用
- $migrations : Migrations
Methods
- addPlugin() : void
- プラグインを追加する
- addTheme() : void
- テーマを追加する
- applyAsTheme() : mixed
- テーマを適用する
- bootstrap() : void
- bootstrap
- clearCurrentSite() : void
- カレントサイトを初期化する
- console() : CommandCollection
- コマンド定義
- contentsRoutingForReverse() : RouteBuilder
- コンテンツ管理ルーティング
- createAssetsSymlink() : bool
- プラグインアセットのシンボリックリンクを作成する
- disableRootRoutes() : void
- /config/routes.php を無効化する
- execScript() : bool
- アップデートスクリプトを実行する
- execUpdater() : mixed
- アップデートプログラムを実行する
- frontPageRouting() : RouteBuilder
- プラグインのフロントエンド用ルーティング(プラグイン名がダッシュ区切りの場合)
- getAuthenticationService() : AuthenticationServiceInterface
- 認証サービスプロバイダ生成
- getAvailableThemes() : array<string|int, mixed>
- 利用可能なテーマを取得する
- getService() : array<string|int, mixed>|mixed|object
- Get Service
- getUpdaters() : array<string|int, mixed>
- アップデータのパスを取得する
- getUpdateScriptMessages() : array<string|int, mixed>
- アップデータのメッセージを取得する 現在のバージョンより上位のアップデートスクリプトフォルダの config.php を読み込み 変数 $updateMessage より取得する
- hasService() : bool
- Has Service
- initialize() : void
- Initialize
- install() : bool
- プラグインをインストールする
- isRequiredAuthentication() : bool
- 認証が必要か判定する
- loadPlugin() : bool
- プラグインを読み込む
- middleware() : MiddlewareQueue
- Setup the middleware queue your application will use.
- migrate() : mixed
- マイグレーションを実行する
- prefixRouting() : RouteBuilder
- プラグインの管理画面用ルーティング
- rollbackDb() : bool
- プラグインのテーブルをリセットする
- routes() : void
- Routes
- services() : void
- services
- setupDefaultTemplatesPath() : mixed
- デフォルトテンプレートを設定する
- setupJwtAuth() : AuthenticationService
- JWT 認証のセットアップ
- setupSessionAuth() : AuthenticationService
- セッション認証のセットアップ
- setupThemePlugin() : void
- テーマが保有するプラグインのパスを追加する
- siteRouting() : RouteBuilder
- サブサイトのプラグイン用ルーティング
- uninstall() : bool
- プラグインをアンインストールする - `plugin` : プラグイン名 - `connection` : コネクション名 - `target` : ロールバック対象バージョン
- updateDateNow() : void
- 対象のフィールドを現在の日付に更新する
- updateDefaultData() : void
- 初期データ読み込み時の更新処理
- getSkipCsrfUrl() : array<string|int, mixed>
- Web API のPOST送信において CSRF をスキップするURLについて、 Router で変換した上で取得
Properties
$currentSite
現在のサイト キャッシュ用
public
static null
$currentSite
= null
$migrations
public
Migrations
$migrations
Methods
addPlugin()
プラグインを追加する
public
addPlugin(PluginApplicationInterface $app) : void
Parameters
- $app : PluginApplicationInterface
Tags
addTheme()
テーマを追加する
public
addTheme(PluginApplicationInterface $application, array<string|int, mixed> $themes) : void
Parameters
- $application : PluginApplicationInterface
- $themes : array<string|int, mixed>
Tags
applyAsTheme()
テーマを適用する
public
applyAsTheme(Site $site, string $theme) : mixed
Parameters
- $site : Site
- $theme : string
Tags
bootstrap()
bootstrap
public
bootstrap(PluginApplicationInterface $app) : void
Parameters
- $app : PluginApplicationInterface
Tags
clearCurrentSite()
カレントサイトを初期化する
public
clearCurrentSite() : void
console()
コマンド定義
public
console(CommandCollection $commands) : CommandCollection
Parameters
- $commands : CommandCollection
Tags
Return values
CommandCollectioncontentsRoutingForReverse()
コンテンツ管理ルーティング
public
contentsRoutingForReverse(RouteBuilder $routes, string $plugin) : RouteBuilder
リバースルーティングのために必要
Parameters
- $routes : RouteBuilder
- $plugin : string
Tags
Return values
RouteBuildercreateAssetsSymlink()
プラグインアセットのシンボリックリンクを作成する
public
createAssetsSymlink() : bool
Tags
Return values
booldisableRootRoutes()
/config/routes.php を無効化する
public
disableRootRoutes(RouteBuilder $routes) : void
Parameters
- $routes : RouteBuilder
Tags
execScript()
アップデートスクリプトを実行する
public
execScript(string $__version) : bool
Parameters
- $__version : string
Tags
Return values
boolexecUpdater()
アップデートプログラムを実行する
public
execUpdater() : mixed
Tags
frontPageRouting()
プラグインのフロントエンド用ルーティング(プラグイン名がダッシュ区切りの場合)
public
frontPageRouting(RouteBuilder $routes, string $plugin) : RouteBuilder
BcPrefixAuthより先に定義が必要 定義しない場合、CSRFトークン取得などの処理にて、BcPrefixAuthのルーティングに捕まり認証を求められてしまう場合がある。 例)認証付 MyPage の定義で、alias を '/' とした場合
Parameters
- $routes : RouteBuilder
- $plugin : string
Tags
Return values
RouteBuildergetAuthenticationService()
認証サービスプロバイダ生成
public
getAuthenticationService(ServerRequestInterface $request) : AuthenticationServiceInterface
- インストール前の場合は、設定なしで、Session のみ読み込む (インストールの動作テストを複数回行う場合にセッションが残ってしまい内部的なエラーを吐いてしまうため)
Parameters
- $request : ServerRequestInterface
-
Request
Tags
Return values
AuthenticationServiceInterfacegetAvailableThemes()
利用可能なテーマを取得する
public
getAvailableThemes() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed>getService()
Get Service
public
getService(mixed $service) : array<string|int, mixed>|mixed|object
Parameters
- $service : mixed
Tags
Return values
array<string|int, mixed>|mixed|objectgetUpdaters()
アップデータのパスを取得する
public
getUpdaters([mixed $name = '' ][, mixed $isUpdateTmp = false ]) : array<string|int, mixed>
Parameters
- $name : mixed = ''
- $isUpdateTmp : mixed = false
Tags
Return values
array<string|int, mixed> —$updates
getUpdateScriptMessages()
アップデータのメッセージを取得する 現在のバージョンより上位のアップデートスクリプトフォルダの config.php を読み込み 変数 $updateMessage より取得する
public
getUpdateScriptMessages([mixed $name = '' ][, mixed $isUpdateTmp = false ]) : array<string|int, mixed>
戻り値例 [ '1.0.1 => 'message', '1.0.2 => 'message' ]
Parameters
- $name : mixed = ''
- $isUpdateTmp : mixed = false
Tags
Return values
array<string|int, mixed> —$messages
hasService()
Has Service
public
hasService(mixed $service) : bool
Parameters
- $service : mixed
Tags
Return values
boolinitialize()
Initialize
public
initialize() : void
Tags
install()
プラグインをインストールする
public
install([array<string|int, mixed> $options = [] ]) : bool
マイグレーションファイルを読み込み、 plugins テーブルに登録する
Parameters
- $options : array<string|int, mixed> = []
-
-
plugin
: プラグイン名 -
connection
: コネクション名 -
permission
: アクセスルールを作るか作らないか。作らない場合は、システム管理ユーザーが利用可能
-
Tags
Return values
boolisRequiredAuthentication()
認証が必要か判定する
public
isRequiredAuthentication(array<string|int, mixed> $authSetting) : bool
Parameters
- $authSetting : array<string|int, mixed>
Tags
Return values
boolloadPlugin()
プラグインを読み込む
public
loadPlugin(PluginApplicationInterface $application, string $plugin, mixed $priority) : bool
Parameters
- $application : PluginApplicationInterface
- $plugin : string
- $priority : mixed
Tags
Return values
boolmiddleware()
Setup the middleware queue your application will use.
public
middleware(MiddlewareQueue $middlewareQueue) : MiddlewareQueue
Parameters
- $middlewareQueue : MiddlewareQueue
-
The middleware queue to setup.
Tags
Return values
MiddlewareQueue —The updated middleware queue.
migrate()
マイグレーションを実行する
public
migrate([array<string|int, mixed> $options = [] ]) : mixed
Parameters
- $options : array<string|int, mixed> = []
Tags
prefixRouting()
プラグインの管理画面用ルーティング
public
prefixRouting(RouteBuilder $routes, string $plugin) : RouteBuilder
プラグイン名がダッシュ区切りの場合
Parameters
- $routes : RouteBuilder
- $plugin : string
Tags
Return values
RouteBuilderrollbackDb()
プラグインのテーブルをリセットする
public
rollbackDb([array<string|int, mixed> $options = [] ]) : bool
Parameters
- $options : array<string|int, mixed> = []
-
-
plugin
: プラグイン名 -
connection
: コネクション名 -
target
: ロールバック対象バージョン
-
Tags
Return values
boolroutes()
Routes
public
routes(RouteBuilder $routes) : void
次のルートを設定するが、未インストール時はインストーラーのみ設定し他はスキップする。
コンテンツルーティング
/*
管理画面ダッシュボード
/baser/admin
JWTトークン検証用
/baser/api/baser-core/.well-known/jwks.json
Parameters
- $routes : RouteBuilder
Tags
services()
services
public
services(ContainerInterface $container) : void
Parameters
- $container : ContainerInterface
Tags
setupDefaultTemplatesPath()
デフォルトテンプレートを設定する
public
setupDefaultTemplatesPath() : mixed
Tags
setupJwtAuth()
JWT 認証のセットアップ
public
setupJwtAuth(AuthenticationService $service, array<string|int, mixed> $authSetting, string $prefix) : AuthenticationService
Parameters
- $service : AuthenticationService
- $authSetting : array<string|int, mixed>
- $prefix : string
Tags
Return values
AuthenticationServicesetupSessionAuth()
セッション認証のセットアップ
public
setupSessionAuth(AuthenticationService $service, array<string|int, mixed> $authSetting) : AuthenticationService
Parameters
- $service : AuthenticationService
- $authSetting : array<string|int, mixed>
Tags
Return values
AuthenticationServicesetupThemePlugin()
テーマが保有するプラグインのパスを追加する
public
setupThemePlugin(array<string|int, mixed> $themes) : void
Parameters
- $themes : array<string|int, mixed>
Tags
siteRouting()
サブサイトのプラグイン用ルーティング
public
siteRouting(RouteBuilder $routes, string $plugin) : RouteBuilder
プラグイン名がダッシュ区切りの場合
Parameters
- $routes : RouteBuilder
- $plugin : string
Tags
Return values
RouteBuilderuninstall()
プラグインをアンインストールする - `plugin` : プラグイン名 - `connection` : コネクション名 - `target` : ロールバック対象バージョン
public
uninstall([mixed $options = [] ]) : bool
Parameters
- $options : mixed = []
Tags
Return values
boolupdateDateNow()
対象のフィールドを現在の日付に更新する
public
updateDateNow(string $table, array<string|int, mixed> $fields[, array<string|int, mixed> $conditions = [] ][, array<string|int, mixed> $options = [] ]) : void
Parameters
- $table : string
- $fields : array<string|int, mixed>
- $conditions : array<string|int, mixed> = []
- $options : array<string|int, mixed> = []
Tags
updateDefaultData()
初期データ読み込み時の更新処理
public
updateDefaultData([array<string|int, mixed> $options = [] ]) : void
Parameters
- $options : array<string|int, mixed> = []
getSkipCsrfUrl()
Web API のPOST送信において CSRF をスキップするURLについて、 Router で変換した上で取得
protected
getSkipCsrfUrl() : array<string|int, mixed>