40 lines
No EOL
918 B
PHP
40 lines
No EOL
918 B
PHP
<?php
|
|
|
|
$presentation = [];
|
|
|
|
foreach ($page->presentation()->toLayouts() as $layout) {
|
|
$row = [
|
|
'id' => $layout->id(),
|
|
'columns' => [],
|
|
];
|
|
foreach ($layout->columns() as $column) {
|
|
$columnData = [
|
|
'id' => $column->id(),
|
|
'blocks' => [],
|
|
];
|
|
foreach ($column->blocks() as $block) {
|
|
$blockData = [
|
|
'id' => $block->id(),
|
|
'content' => $block->content()->toArray(),
|
|
];
|
|
|
|
if ($block->cover()->isNotEmpty()) {
|
|
$blockData['content']['cover'] = getFileData($block->cover()->toFile());
|
|
}
|
|
$columnData['blocks'][] = $blockData;
|
|
}
|
|
$row['columns'][] = $columnData;
|
|
}
|
|
$presentation[] = $row;
|
|
}
|
|
|
|
$specificData = [
|
|
"presentation" => $presentation
|
|
];
|
|
|
|
$pageData = array_merge($genericData, $specificData);
|
|
|
|
echo json_encode([
|
|
"page" => $pageData,
|
|
"user" => $userData
|
|
]); |