[MERGE] Branch 'task-customerportal-paidfeatures-pr555'

This commit is contained in:
Philipp Dieter 2026-03-03 12:03:50 +01:00
commit b2f9fa6846
2 changed files with 28 additions and 3 deletions

View File

@ -44,7 +44,8 @@ class ApiUtility
$queryResult, $queryResult,
$additionalAttributes = [], $additionalAttributes = [],
$mapping = [], $mapping = [],
$rootRowClass = null $rootRowClass = null,
$options = []
) { ) {
$this->objectManager = GeneralUtility::makeInstance( $this->objectManager = GeneralUtility::makeInstance(
ObjectManager::class ObjectManager::class
@ -130,7 +131,8 @@ class ApiUtility
$methodResult, $methodResult,
$additionalAttributes[$attributeName], $additionalAttributes[$attributeName],
$mapping, $mapping,
$nextLevelClass $nextLevelClass,
$options
); );
if ($imageStorage) { if ($imageStorage) {
foreach ($attributeResult as &$attributeResultRow) { foreach ($attributeResult as &$attributeResultRow) {
@ -167,7 +169,8 @@ class ApiUtility
[$methodResult], [$methodResult],
$additionalAttributes[$attributeName], $additionalAttributes[$attributeName],
$mapping, $mapping,
$nextLevelClass $nextLevelClass,
$options
)[0]; )[0];
$rowResult[$attributeName . 'Uid'] $rowResult[$attributeName . 'Uid']
= $rowResult[$attributeName]['uid']; = $rowResult[$attributeName]['uid'];
@ -218,6 +221,10 @@ class ApiUtility
} }
} }
} }
if (($options['clearIds'] ?? '' ) === true) {
unset($rowResult['uid']);
unset($rowResult['pid']);
}
$result[] = $rowResult; $result[] = $rowResult;
} }
return $result; return $result;

View File

@ -37,4 +37,22 @@ class InterfaceUtility
}, ARRAY_FILTER_USE_KEY); }, ARRAY_FILTER_USE_KEY);
return array_values($constants); return array_values($constants);
} }
/**
* Get all interface constants per prefix
*/
public static function parseInterfaceConstantsAssoc(
$interfaceClass, $prefix
) {
$constants = (new \ReflectionClass($interfaceClass))
->getConstants();
$constants = array_filter($constants, function($key) use ($prefix) {
if (substr($key, 0, strlen($prefix) + 1)
== strtoupper($prefix) . '_'
) {
return true;
}
}, ARRAY_FILTER_USE_KEY);
return $constants;
}
} }