designtopack/public/site/templates/inspirations.json.php

34 lines
945 B
PHP
Raw Normal View History

<?php
2024-09-10 12:09:53 +02:00
$inspirations = $page->children()->map(function ($child) {
return [
'title' => $child->title()->value(),
2024-09-10 12:09:53 +02:00
'description' => $child->description()->value(),
2024-09-10 10:59:31 +02:00
'new' => $child->new()->value() === "true" ? true : false,
2024-09-10 11:02:13 +02:00
'date' => $child->date()->toDate('Y-MM-d'),
'url' => $child->url(),
2024-09-11 07:32:34 +02:00
'uri' => $child->uri(),
2024-09-10 11:02:13 +02:00
'modified' => $child->modified('Y-MM-d'),
2024-09-10 10:50:51 +02:00
'status' => $child->status(),
'cover' => $child->cover()->toFile()->url(),
'media' => $child->media()->toFiles()->map(function ($file) {
return [
2024-09-11 07:32:34 +02:00
'url' => $file->url(),
2024-09-25 15:44:08 +02:00
'alt' => $file->alt()->value(),
2024-09-11 07:32:34 +02:00
'favoriteForUsers' => $file->favoriteForUsers()->value(),
'name' => $file->filename()
2024-09-10 10:50:51 +02:00
];
})->values()
];
})->values();
$specificData = [
2024-09-10 12:09:53 +02:00
"inspirations" => $inspirations
];
2024-10-28 15:33:52 +01:00
$pageData = array_merge($genericData, $specificData);
2024-10-28 15:33:52 +01:00
echo json_encode([
"page" => $pageData,
"user" => $userData
]);