Skip to content

Commit b9203ca

Browse files
committed
refactor(helper): Simplify getContainersData logic and improve logging
- Removed redundant comments and streamlined the getContainersData method for clarity. - Enhanced logging for missing contentlets to provide better context during debugging. - Updated return structure to directly return container data, improving efficiency.
1 parent e53b08b commit b9203ca

3 files changed

Lines changed: 22 additions & 39 deletions

File tree

examples/dotcms-laravel/app/Helpers/DotCmsHelpers.php

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ class DotCmsHelpers
1616
*/
1717
public function getContainersData($containers, $container)
1818
{
19-
// First try to get the container data using the SDK helper
2019
$containerData = DotCmsHelper::getContainerData($containers, $container);
2120

2221
if (!$containerData) {
@@ -28,26 +27,11 @@ public function getContainersData($containers, $container)
2827
];
2928
}
3029

31-
$identifier = $container['identifier'] ?? '';
32-
$uuid = $container['uuid'] ?? '';
33-
34-
$structures = $containerData['containerStructures'] ?? [];
35-
$container = $containerData['container'] ?? [];
36-
37-
$contentlets = $containerData['contentlets']["uuid-$uuid"]
38-
?? $containerData['contentlets']["uuid-dotParser_$uuid"]
39-
?? [];
40-
41-
if (empty($contentlets)) {
42-
Log::warning("No contentlets found for container: $identifier, uuid: $uuid");
30+
if (empty($containerData['contentlets'])) {
31+
Log::warning("No contentlets found for container: " . ($container['identifier'] ?? 'unknown') . ", uuid: " . ($container['uuid'] ?? 'unknown'));
4332
}
4433

45-
return [
46-
...$container,
47-
'acceptTypes' => implode(',', array_column($structures, 'contentTypeVar')),
48-
'contentlets' => $contentlets,
49-
'variantId' => $container['parentPermissionable']['variantId'] ?? null
50-
];
34+
return $containerData;
5135
}
5236

5337
/**

examples/dotcms-symfony/src/Twig/DotCMSExtension.php

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -69,32 +69,16 @@ public function generateHtmlBasedOnProperty(array $content): string
6969

7070
public function getContainersData(array $containers, array $containerRef): array
7171
{
72-
// First try to get the container data using the SDK helper
7372
$containerData = DotCmsHelper::getContainerData($containers, $containerRef);
7473

7574
if (!$containerData) {
7675
throw new RuntimeException("Container not found: " . ($containerRef['identifier'] ?? 'unknown'));
7776
}
7877

79-
$identifier = $containerRef['identifier'] ?? throw new RuntimeException("Missing container identifier");
80-
$uuid = $containerRef['uuid'] ?? throw new RuntimeException("Missing container UUID");
81-
82-
$structures = $containerData['containerStructures'] ?? [];
83-
$container = $containerData['container'] ?? [];
84-
85-
$contentlets = $containerData['contentlets']["uuid-$uuid"]
86-
?? $containerData['contentlets']["uuid-dotParser_$uuid"]
87-
?? [];
88-
89-
if (empty($contentlets)) {
90-
error_log("No contentlets found for container: $identifier, uuid: $uuid");
78+
if (empty($containerData['contentlets'])) {
79+
error_log("No contentlets found for container: " . ($containerRef['identifier'] ?? 'unknown') . ", uuid: " . ($containerRef['uuid'] ?? 'unknown'));
9180
}
9281

93-
return [
94-
...$container,
95-
'acceptTypes' => implode(',', array_column($structures, 'contentTypeVar')),
96-
'contentlets' => $contentlets,
97-
'variantId' => $container['parentPermissionable']['variantId'] ?? null
98-
];
82+
return $containerData;
9983
}
10084
}

src/Utils/DotCmsHelper.php

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ public static function getContainerData(array $containers, array $container): ?a
2121
}
2222

2323
$identifier = $container['identifier'] ?? null;
24+
$uuid = $container['uuid'] ?? null;
2425

2526
if (! $identifier || ! isset($containers[$identifier])) {
2627
return null;
@@ -30,7 +31,21 @@ public static function getContainerData(array $containers, array $container): ?a
3031
return null;
3132
}
3233

33-
return $containers[$identifier];
34+
$containerData = $containers[$identifier];
35+
$structures = $containerData['containerStructures'] ?? [];
36+
$container = $containerData['container'] ?? [];
37+
38+
$contentlets = $containerData['contentlets']["uuid-$uuid"]
39+
?? $containerData['contentlets']["uuid-dotParser_$uuid"]
40+
?? [];
41+
42+
return [
43+
...$container,
44+
'acceptTypes' => implode(',', array_column($structures, 'contentTypeVar')),
45+
'contentlets' => $contentlets,
46+
'maxContentlets' => $container['maxContentlets'] ?? 0,
47+
'variantId' => $container['parentPermissionable']['variantId'] ?? null
48+
];
3449
}
3550

3651
/**

0 commit comments

Comments
 (0)