This is an old revision of the document!
Table of Contents
ThemeViewModelFactory
Layer: Core · Source: lib/core/Theme/ThemeViewModelFactory.php:19 (lines 19–192)
final class ThemeViewModelFactory
ThemeViewModelFactory
Turns prepared arrays from FrontService/models into typed, already-escaped view models. All escaping flows through the single theme_escape_html() boundary so every theme renders from the same safe data shape.
Docblock Metadata
| Tag | Value |
|---|---|
@category | Theme |
@author | M.Noermoehammad |
@license | MIT |
@version | 1.0 |
Inheritance
No parent, interface or trait. This is a root type.
Constants (0)
None.
Properties (0)
None declared.
Methods (12)
| Visibility | Method | Summary | Line |
|---|---|---|---|
| public | __construct() | 28 | |
| public | makePost() | Create a post view model. | 41 |
| public | makePostFromPrepared() | Create a post view model from already-prepared, already-safe values. | 60 |
| public | makePage() | Create a page view model. | 74 |
| public | makePageFromPrepared() | Create a page view model from already-prepared, already-safe values. | 88 |
| public | makeArchive() | Create an archive view model. | 102 |
| public | makeArchiveFromPrepared() | Create an archive view model from already-prepared, already-safe values. | 116 |
| public | makeMenu() | Create a menu view model. | 130 |
| public | makeMenuFromPrepared() | Create a menu view model from already-prepared, already-safe values. | 144 |
| public | makeSidebar() | Create a sidebar view model. | 158 |
| public | makeSidebarFromPrepared() | Create a sidebar view model from already-prepared, already-safe values. | 172 |
| public | makePosts() | Create a collection of post view models from a list of rows. | 186 |
__construct()
public function __construct(?callable $escape = null)
lines 28–33 (6)
| Parameter | Type | Default | Description |
|---|---|---|---|
$escape | ?callable | null | none |
makePost()
public function makePost(array $row): PostViewModel
lines 41–44 (4)
Create a post view model.
| Parameter | Type | Default | Description |
|---|---|---|---|
$row | array | required | none |
Returns: ''PostViewModel'' — PostViewModel
makePostFromPrepared()
public function makePostFromPrepared(array $prepared): PostViewModel
lines 60–63 (4)
Create a post view model from already-prepared, already-safe values.
Used by the theme card pipeline (prepare_post_card()): values are escaped/sanitized exactly once at the normalization boundary, so the factory is the single creation point for both raw rows and prepared values.
| Parameter | Type | Default | Description |
|---|---|---|---|
$prepared | array | required | none |
Returns: ''PostViewModel'' — PostViewModel
makePage()
public function makePage(array $row): PageViewModel
lines 74–77 (4)
Create a page view model.
| Parameter | Type | Default | Description |
|---|---|---|---|
$row | array | required | none |
Returns: ''PageViewModel'' — PageViewModel
makePageFromPrepared()
public function makePageFromPrepared(array $prepared): PageViewModel
lines 88–91 (4)
Create a page view model from already-prepared, already-safe values.
| Parameter | Type | Default | Description |
|---|---|---|---|
$prepared | array | required | none |
Returns: ''PageViewModel'' — PageViewModel
makeArchive()
public function makeArchive(array $row): ArchiveViewModel
lines 102–105 (4)
Create an archive view model.
| Parameter | Type | Default | Description |
|---|---|---|---|
$row | array | required | none |
Returns: ''ArchiveViewModel'' — ArchiveViewModel
makeArchiveFromPrepared()
public function makeArchiveFromPrepared(array $prepared): ArchiveViewModel
lines 116–119 (4)
Create an archive view model from already-prepared, already-safe values.
| Parameter | Type | Default | Description |
|---|---|---|---|
$prepared | array | required | none |
Returns: ''ArchiveViewModel'' — ArchiveViewModel
makeMenu()
public function makeMenu(array $row): MenuViewModel
lines 130–133 (4)
Create a menu view model.
| Parameter | Type | Default | Description |
|---|---|---|---|
$row | array | required | none |
Returns: ''MenuViewModel'' — MenuViewModel
makeMenuFromPrepared()
public function makeMenuFromPrepared(array $prepared): MenuViewModel
lines 144–147 (4)
Create a menu view model from already-prepared, already-safe values.
| Parameter | Type | Default | Description |
|---|---|---|---|
$prepared | array | required | none |
Returns: ''MenuViewModel'' — MenuViewModel
makeSidebar()
public function makeSidebar(array $row): SidebarViewModel
lines 158–161 (4)
Create a sidebar view model.
| Parameter | Type | Default | Description |
|---|---|---|---|
$row | array | required | none |
Returns: ''SidebarViewModel'' — SidebarViewModel
makeSidebarFromPrepared()
public function makeSidebarFromPrepared(array $prepared): SidebarViewModel
lines 172–175 (4)
Create a sidebar view model from already-prepared, already-safe values.
| Parameter | Type | Default | Description |
|---|---|---|---|
$prepared | array | required | none |
Returns: ''SidebarViewModel'' — SidebarViewModel
makePosts()
public function makePosts(array $rows): array
lines 186–191 (6)
Create a collection of post view models from a list of rows.
| Parameter | Type | Default | Description |
|---|---|---|---|
$rows | array | required | none |
Returns: array — PostViewModel[]
This page is generated from source by 'tools/gendoc'. Edits will be overwritten.
