DTL panel : show proposal corresponding to dialog working for virtual sample (dynamic and static)

This commit is contained in:
isUnknown 2025-01-27 11:06:06 +01:00
parent af0c259525
commit c2d00e0edf
5 changed files with 204 additions and 92 deletions

View file

@ -73,59 +73,71 @@ function processDTLProposals($page) {
$DTLProposal = null;
switch ($location) {
case 'proposal':
$proposalPage = $page->find('proposal');
$proposalFile = $proposal->DTLproposal()->toFile();
case 'proposal':
$proposalPage = $page->find('proposal');
$proposalFile = $proposal->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("d/MM/Y"),
"stepLabel" => "Proposition commerciale",
];
}
break;
if ($proposalPage && $proposalFile) {
$index = $proposalPage->pdf()->toFiles()->indexOf($proposalFile);
$DTLProposal = [
"location" => [
"step" => "proposal"
],
"path" => "/projects/" . $page->slug() . "?dialog=proposal&fileIndex=" . $index,
"date" => $proposalFile->modified("d/MM/Y"),
"stepLabel" => "Proposition commerciale",
];
}
break;
case 'industrialIdeation':
$proposalPage = $page->find('industrial-ideation');
$proposalFile = $proposal->DTLindustrialIdeation()->toFile();
case 'industrialIdeation':
$proposalPage = $page->find('industrial-ideation');
$proposalFile = $proposal->DTLindustrialIdeation()->toFile();
if ($proposalPage && $proposalFile) {
$DTLProposal = [
"location" => "industrialIdeation",
"path" => "/projects/" . $page->slug() . "?dialog=industrial-ideation",
"date" => $proposalFile->modified("d/MM/Y"),
"stepLabel" => "Idéation industrielle",
];
}
break;
if ($proposalPage && $proposalFile) {
$DTLProposal = [
"location" => [
"step" => "industrialIdeation"
],
"path" => "/projects/" . $page->slug() . "?dialog=industrial-ideation",
"date" => $proposalFile->modified("d/MM/Y"),
"stepLabel" => "Idéation industrielle",
];
}
break;
case 'virtualSampleDynamicTrack':
$proposalPage = $proposal->DTLVirtualSampleDynamicTrack()->toPage();
if ($proposalPage) {
$DTLProposal = [
"location" => "virtualSampleDynamicTrack",
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
"date" => $proposalPage->modified("d/MM/Y"),
"stepLabel" => "Échantillon virtuel - piste dynamique",
];
}
break;
case 'virtualSampleDynamicTrack':
$proposalPage = $proposal->DTLVirtualSampleDynamicTrack()->toPage();
if ($proposalPage) {
$DTLProposal = [
"location" => [
"step" => "virtualSample",
"type" => "dynamic",
"trackSlug" => (string) $proposalPage->slug()
],
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
"date" => $proposalPage->modified("d/MM/Y"),
"stepLabel" => "Échantillon virtuel - piste dynamique",
];
}
break;
case 'virtualSampleStaticTrack':
$proposalPage = $page->find('virtual-sample');
$proposalFile = $proposal->DTLVirtualSampleStaticTrack()->toFile();
if ($proposalPage && $proposalFile) {
$DTLProposal = [
"location" => "virtualSampleStaticTrack",
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
"date" => $proposalFile->modified("d/MM/Y"),
"stepLabel" => "Échantillon virtuel - piste statique",
];
}
break;
case 'virtualSampleStaticTrack':
$proposalPage = $page->find('virtual-sample');
$proposalFile = $proposal->DTLVirtualSampleStaticTrack()->toFile();
if ($proposalPage && $proposalFile) {
$DTLProposal = [
"location" => [
"step" => "virtualSample",
"type" => "static",
"source" => (string) $proposalFile->url()
],
"path" => "/projects/" . $page->slug() . "?dialog=virtual-sample",
"date" => $proposalFile->modified("d/MM/Y"),
"stepLabel" => "Échantillon virtuel - piste statique",
];
}
break;
}
if ($DTLProposal) {