Skip to content

Commit 71b04f8

Browse files
flacoonbandi34
authored andcommitted
fix: Respect collage orientation setting in layout previews
- Read orientation from config (landscape/portrait) - Pass orientation to loadCollageLayoutFromJson() - Previews now use correct template files based on admin setting - Portrait: 1200×1800 (2:3), Landscape: 1800×1200 (3:2) - ViewBox and photo positions adapt automatically
1 parent fc476ed commit 71b04f8

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

template/components/collageSelection.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,10 @@ function loadCollageLayoutFromJson(CollageLayoutEnum $layout, string $orientatio
5858
/**
5959
* Generate SVG preview for collage layout (dynamically from JSON)
6060
*/
61-
function getLayoutPreviewSvg(CollageLayoutEnum $layout): string
61+
function getLayoutPreviewSvg(CollageLayoutEnum $layout, string $orientation = 'landscape'): string
6262
{
6363
// Try to load layout from JSON
64-
$layoutData = loadCollageLayoutFromJson($layout, 'landscape');
64+
$layoutData = loadCollageLayoutFromJson($layout, $orientation);
6565

6666
if (!$layoutData) {
6767
// Fallback to simple 2x2 grid if JSON can't be loaded
@@ -212,6 +212,9 @@ function renderCollageOptionsFromEnumWithLimit(array $collageConfig): string
212212
$html .= '<h3 id="collageSelectorTitle">' . $languageService->translate('selectCollageLayout') . '</h3>';
213213
$html .= '<div class="collageSelector__options">';
214214

215+
// Get orientation from config (landscape or portrait)
216+
$orientation = $collageConfig['orientation'] ?? 'landscape';
217+
215218
foreach (CollageLayoutEnum::cases() as $layout) {
216219
if (in_array($layout, $collageConfig['layouts_enabled'])) {
217220
$collageConfig['layout'] = $layout->value;
@@ -225,7 +228,7 @@ function renderCollageOptionsFromEnumWithLimit(array $collageConfig): string
225228
'</button>',
226229
htmlspecialchars($layout->value),
227230
$limit,
228-
getLayoutPreviewSvg($layout),
231+
getLayoutPreviewSvg($layout, $orientation),
229232
htmlspecialchars($layout->label())
230233
);
231234
}

0 commit comments

Comments
 (0)