N°2982 - Branding: Theme imports with no xsi:type are ignored

This commit is contained in:
Molkobain
2021-05-17 17:51:08 +02:00
parent 186ef1689e
commit 1128490d47
3 changed files with 13 additions and 15 deletions

View File

@@ -2836,24 +2836,22 @@ EOF;
/** @var \DOMNodeList $oVariables */
$oVariables = $oTheme->GetNodes('variables/variable');
foreach($oVariables as $oVariable)
{
foreach ($oVariables as $oVariable) {
$sVariableId = $oVariable->getAttribute('id');
$aThemeParameters['variables'][$sVariableId] = $oVariable->GetText();
}
/** @var \DOMNodeList $oImports */
$oImports = $oTheme->GetNodes('imports/import');
foreach($oImports as $oImport)
{
foreach ($oImports as $oImport) {
$sImportId = $oImport->getAttribute('id');
if($oImport->getAttribute('xsi:type') === 'variables')
{
$sImportType = $oImport->getAttribute('xsi:type');
if ($sImportType === 'variables') {
$aThemeParameters['variable_imports'][$sImportId] = $oImport->GetText();
}
else
{
} elseif ($sImportType === 'utilities') {
$aThemeParameters['utility_imports'][$sImportId] = $oImport->GetText();
} else {
SetupLog::Warning('CompileThemes: Theme #'.$sThemeId.' has an import (#'.$sImportId.') without explicit xsi:type, it will be ignored. Check Datamodel XML Reference to fix it.');
}
}