From 52d830170fb3ff414aa58d6b2d9a4149738dcd6b Mon Sep 17 00:00:00 2001 From: Johannes Meyer Date: Tue, 1 Oct 2019 15:27:51 +0200 Subject: [PATCH] LessCompiler: Put required assets into a module's css block We have to include these there otherwise mixins from assets can't be used. --- library/Icinga/Web/LessCompiler.php | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/library/Icinga/Web/LessCompiler.php b/library/Icinga/Web/LessCompiler.php index 4b49b12a6..7ebf66900 100644 --- a/library/Icinga/Web/LessCompiler.php +++ b/library/Icinga/Web/LessCompiler.php @@ -172,19 +172,17 @@ class LessCompiler $this->source .= file_get_contents($lessFile); } - $requireCss = ''; - foreach ($this->moduleRequires as $requiredFile => $modules) { - $containers = array_map(function ($name) { - return '.icinga-module.module-' . $name; - }, $modules); - $requireCss .= join(',', $containers) . ' {' . file_get_contents($requiredFile) . '}'; - } - - $this->source .= $requireCss; - $moduleCss = ''; foreach ($this->moduleLessFiles as $moduleName => $moduleLessFiles) { $moduleCss .= '.icinga-module.module-' . $moduleName . ' {'; + + // TODO: Import these. (https://github.com/leafo/lessphp/issues/515) + foreach ($this->moduleRequires as $requiredFile => $modules) { + if (in_array($moduleName, $modules, true)) { + $moduleCss .= file_get_contents($requiredFile); + } + } + foreach ($moduleLessFiles as $moduleLessFile) { $moduleCss .= file_get_contents($moduleLessFile); }