87 lines
No EOL
3 KiB
PHP
87 lines
No EOL
3 KiB
PHP
<?php
|
|
$project = [
|
|
"title" => $page->title()->value(),
|
|
"url" => $page->url(),
|
|
"modified" => $page->modified("Y-MM-d"),
|
|
"status" => $page->status(),
|
|
"logo" => $page->client()->isNotEmpty() && $page->client()->toPage() ? $page->client()->toPage()->logo()->toFile()->url() : null,
|
|
"steps" => $page->getSteps(),
|
|
"designToLight" => null
|
|
];
|
|
|
|
if ($page->isDTLEnabled()) {
|
|
$DTLProposal = null;
|
|
$proposalLocation = $page->DTLProposalLocation()->value();
|
|
|
|
switch ($proposalLocation) {
|
|
case 'proposal':
|
|
$proposalPage = $page->find('proposal');
|
|
$proposalFile = $page->DTLProposal()->toFile();
|
|
|
|
if ($proposalPage && $proposalFile) {
|
|
$index = $proposalPage->pdf()->toFiles()->indexOf($proposalFile);
|
|
$DTLProposal = [
|
|
"location" => "proposal",
|
|
"path" => "/projects/" . $page->slug() . "?dialog=proposal&fileIndex=" . $index,
|
|
"date" => $proposalFile->modified("Y-MM-d"),
|
|
"stepLabel" => "Proposition commerciale",
|
|
];
|
|
}
|
|
break;
|
|
|
|
case 'industrialIdeation':
|
|
$proposalPage = $page->find('industrial-ideation');
|
|
$proposalFile = $page->DTLindustrialIdeation()->toFile();
|
|
|
|
if ($proposalPage && $proposalFile) {
|
|
$index = $proposalPage->pdf()->toFiles()->indexOf($proposalFile);
|
|
$DTLProposal = [
|
|
"location" => "proposal",
|
|
"path" => "/projects/" . $page->slug() . "?dialog=industrial-ideation&fileIndex=" . $index,
|
|
"date" => $proposalFile->modified("Y-MM-d"),
|
|
"stepLabel" => "Idéation industrielle"
|
|
];
|
|
}
|
|
break;
|
|
|
|
case 'virtualSampleDynamicTrack':
|
|
$proposalPage = $page->DTLVirtualSampleDynamicTrack()->toPage();
|
|
|
|
if ($proposalPage) {
|
|
$DTLProposal = [
|
|
"location" => "proposal",
|
|
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
|
|
"date" => $proposalPage->modified("Y-MM-d"),
|
|
"stepLabel" => "Échantillon virtuel"
|
|
];
|
|
}
|
|
break;
|
|
|
|
case 'virtualSampleStaticTrack':
|
|
$proposalPage = $page->find('virtual-sample');
|
|
$proposalFile = $page->DTLVirtualSampleStaticTrack()->toFile();
|
|
|
|
if ($proposalPage && $proposalFile) {
|
|
$DTLProposal = [
|
|
"location" => "proposal",
|
|
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
|
|
"date" => $proposalFile->modified("Y-MM-d"),
|
|
"stepLabel" => "Échantillon virtuel"
|
|
];
|
|
}
|
|
break;
|
|
}
|
|
|
|
if ($page->DTLGrade()->isNotEmpty()) {
|
|
$DTLProposal["grade"] = $page->DTLGrade()->value();
|
|
}
|
|
$project["designToLight"] = $DTLProposal;
|
|
}
|
|
|
|
|
|
$pageData = array_merge($genericData, $project);
|
|
|
|
echo json_encode([
|
|
"page" => $pageData,
|
|
"user" => $userData
|
|
]); |