baserCMS クラスリファレンス

BlogController extends BlogFrontAppController
in package

ブログ記事コントローラー

Table of Contents

Properties

$Authentication  : AuthenticationComponent
$BcMessage  : BcMessageComponent
$_View  : View
View

Methods

__construct()  : void|ResponseInterface
AppController constructor.
_blackHoleCallback()  : void
Securityコンポーネントのブラックホールからのコールバック
ajax_add_comment()  : mixed
ブログコメントを登録する
ajaxError()  : void
Ajax用のエラーを出力する
archives()  : void
[PUBLIC] ブログアーカイブを表示する
beforeFilter()  : void
beforeFilter
beforeRender()  : void
Before Render
captcha()  : void
認証用のキャプチャ画像を表示する
dispatchLayerEvent()  : bool|Event
イベントを発火
getService()  : array<string|int, mixed>|mixed|object
Get Service
hasService()  : bool
Has Service
index()  : void|ResponseInterface
[PUBLIC] ブログを一覧表示する
initialize()  : void
initialize
notFound()  : void
NOT FOUNDページを出力する
redirectIfIsRequireMaintenance()  : Response|void|null
メンテナンス画面へのリダイレクトが必要な場合にリダイレクトする
setTitle()  : void
Set Title
setupFrontView()  : void
フロント用のViewクラスをセットアップする
tags()  : mixed
全体タグ一覧
loadViewConditions()  : void
画面の情報をセッションから読み込む
saveDblog()  : EntityInterface
データベースログを記録する
saveViewConditions()  : void
画面の情報をセッションに保存する
setViewConditions()  : void
画面の情報をセットする
__cleanupQueryParams()  : void
クエリーパラメーターの調整 環境によって?キーにamp;が付加されてしまうため
checkPermission()  : bool
アクセスルールの権限を確認する

Properties

$Authentication

public AuthenticationComponent $Authentication

Methods

__construct()

AppController constructor.

public __construct([ServerRequest|null $request = null ][, Response|null $response = null ][, string|null $name = null ][, EventManagerInterface|null $eventManager = null ][, ComponentRegistry|null $components = null ]) : void|ResponseInterface
Parameters
$request : ServerRequest|null = null
$response : Response|null = null
$name : string|null = null
$eventManager : EventManagerInterface|null = null
$components : ComponentRegistry|null = null
Tags
checked
noTodo
unitTest
Return values
void|ResponseInterface

_blackHoleCallback()

Securityコンポーネントのブラックホールからのコールバック

public _blackHoleCallback(string $err, mixed $exception) : void

フォーム改ざん対策・CSRF対策・SSL制限・HTTPメソッド制限などへの違反が原因で Securityコンポーネントに"ブラックホールされた"場合の動作を指定する

Parameters
$err : string

エラーの種類

$exception : mixed
Tags
throws
BadRequestException
uses
_blackHoleCallback
checked
noTodo
unitTest

ajax_add_comment()

ブログコメントを登録する

public ajax_add_comment(BlogCommentsServiceInterface $service, BcCaptchaServiceInterface $bcCaptchaService) : mixed

画像認証を行い認証されればブログのコメントを登録する コメント承認を利用していないブログの場合、公開されているコメント投稿者にアラートを送信する

Parameters
$service : BlogCommentsServiceInterface
$bcCaptchaService : BcCaptchaServiceInterface
Tags
checked
noTodo
unitTest

ajaxError()

Ajax用のエラーを出力する

public ajaxError([int $errorNo = 500 ][, mixed $message = '' ]) : void

since 5.0.5 このメソッドは非推奨です。

Parameters
$errorNo : int = 500

エラーのステータスコード

$message : mixed = ''

エラーメッセージ

Tags
checked
noTodo

archives()

[PUBLIC] ブログアーカイブを表示する

public archives(BlogFrontService $service, BlogContentsService $blogContentsService, BlogPostsService $blogPostsService, string $type) : void

$type として、category / author / tag / date を指定し、ブログ記事をそれぞれのタイプごとにフィルタリングする事ができる。 また、$type を指定しない場合は、詳細ページを表示する。

URL例

  • カテゴリ別記事一覧: /news/archives/category/category-name
  • 作成者別記事一覧: /news/archives/author/user-id
  • タグ別記事一覧: /news/archives/tag/tag-name
  • 年別記事一覧: /news/archives/date/2022
  • 月別記事一覧: /news/archives/date/2022/12
  • 日別記事一覧: /news/archives/date/2022/12/12
  • 詳細ページ:/news/archives/1
Parameters
$service : BlogFrontService
$blogContentsService : BlogContentsService
$blogPostsService : BlogPostsService
$type : string
Tags
checked
noTodo
unitTest

beforeFilter()

beforeFilter

public beforeFilter(EventInterface $event) : void
Parameters
$event : EventInterface
Tags
checked
unitTest

beforeRender()

Before Render

public beforeRender(EventInterface $event) : void
Parameters
$event : EventInterface
Tags
checked
noTodo
unitTest

dispatchLayerEvent()

イベントを発火

public dispatchLayerEvent(string $name[, array<string|int, mixed> $data = [] ][, mixed $options = [] ]) : bool|Event
Parameters
$name : string
$data : array<string|int, mixed> = []
$options : mixed = []
Tags
checked
unitTest
noTodo
Return values
bool|Event

getService()

Get Service

public getService(mixed $service) : array<string|int, mixed>|mixed|object
Parameters
$service : mixed
Tags
checked
noTodo
unitTest
Return values
array<string|int, mixed>|mixed|object

hasService()

Has Service

public hasService(mixed $service) : bool
Parameters
$service : mixed
Tags
checked
noTodo
unitTest
Return values
bool

initialize()

initialize

public initialize() : void

コンポーネントをロードする

Tags
checked
noTodo
unitTest

notFound()

NOT FOUNDページを出力する

public notFound() : void
Tags
throws
NotFoundException
checked
noTodo
unitTest

redirectIfIsRequireMaintenance()

メンテナンス画面へのリダイレクトが必要な場合にリダイレクトする

public redirectIfIsRequireMaintenance() : Response|void|null
Tags
checked
noTodo
unitTest
Return values
Response|void|null

setTitle()

Set Title

public setTitle(string $title) : void
Parameters
$title : string
Tags
checked
noTodo
unitTest

setupFrontView()

フロント用のViewクラスをセットアップする

public setupFrontView() : void
Tags
checked
noTodo
unitTest

loadViewConditions()

画面の情報をセッションから読み込む

protected loadViewConditions([array<string|int, mixed> $targetModel = [] ][, array<string|int, mixed>|string $options = [] ]) : void

初期値が設定されている場合は初期値を設定した上で、セッションで上書きし、 ServerRequestに設定する。

Parameters
$targetModel : array<string|int, mixed> = []
$options : array<string|int, mixed>|string = []

オプション

  • default: 読み出す初期値(初期値:[])
  • group: 保存するグループ名(初期値:'')
  • post: POSTデータを保存するかどうか(初期値:true)
  • get: GETデータを保存するかどうか(初期値:false)
Tags
see

setViewConditions, saveViewConditions

checked
noTodo
unitTest

saveDblog()

データベースログを記録する

protected saveDblog(string $message) : EntityInterface
Parameters
$message : string
Tags
checked
unitTest
noTodo
Return values
EntityInterface

saveViewConditions()

画面の情報をセッションに保存する

protected saveViewConditions([array<string|int, mixed> $targetModel = [] ][, array<string|int, mixed> $options = [] ]) : void

次のセッション名に保存。

  • POSTデータ: BcApp.viewConditions.{$contentsName}.data.{$model}
  • クエリパラメーター: BcApp.viewConditions.{$contentsName}.query

$contentsNameは次の形式となる。 {$controllerName}{$actionName}.{$group}

ただし、ページネーションにおいて、1ページ目はクエリパラメーターpage を付けない仕様となっているため page は保存しない。

Parameters
$targetModel : array<string|int, mixed> = []
$options : array<string|int, mixed> = []

オプション

  • group: 保存するグループ名(初期値:'')
  • post: POSTデータを保存するかどうか(初期値:true)
  • get: GETデータを保存するかどうか(初期値:false)
Tags
see
setViewConditions
checked
noTodo
unitTest

setViewConditions()

画面の情報をセットする

protected setViewConditions([array<string|int, mixed> $targetModel = [] ][, array<string|int, mixed> $options = [] ]) : void

POSTデータとクエリパラメーターをセッションに保存した上で、 指定されたデフォルト値も含めて ServerRequest に設定する。

$this->setViewConditions(['Content'], [
    'group' => 'index',
    'default' => [
         'query' => ['limit' => 10],
         'data' => ['title' => 'default']
     ],
    'get' => true
]);
Parameters
$targetModel : array<string|int, mixed> = []

ターゲットとなるモデル

$options : array<string|int, mixed> = []

オプション

  • default: 読み出す初期値(初期値:[])
  • group: 保存するグループ名(初期値:'')
  • post: POSTデータを保存するかどうか(初期値:true)
  • get: GETデータを保存するかどうか(初期値:false)
Tags
checked
noTodo
unitTest

__cleanupQueryParams()

クエリーパラメーターの調整 環境によって?キーにamp;が付加されてしまうため

private __cleanupQueryParams() : void
Tags
checked
noTodo
unitTest

checkPermission()

アクセスルールの権限を確認する

private checkPermission() : bool

現在アクセスしているURLについて権限があるかどうかを確認する。

Tags
noTodo
checked
Return values
bool

        
On this page

Search results