]> _ Git - cubeextranet.git/commitdiff
wait #5598 @1
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 23 Nov 2022 08:38:20 +0000 (08:38 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 23 Nov 2022 08:38:20 +0000 (08:38 +0000)
inc/ws/Util/html5/master/class.ws.html5.compiler.php

index 0bb3e6aa367e66f865576499caa28837d76eaf7c..99fc6f112009c32dc7e5b14f61941b7e70e93365 100644 (file)
@@ -765,22 +765,32 @@ class wsHTML5Compiler
         if (file_exists($this->wdir . 'commerce/aliases.txt')) {
             $lines = explode("\n", file_get_contents($this->wdir . 'commerce/aliases.txt'));
             foreach ($lines as $line) {
-                $base = false;
-                $refs = explode('/', $line);
+                $bases = [];
+                $refs = explode('/', trim($line));
                 foreach ($this->config->basketReferences as $ref => $d) {
                     if (strpos($ref, $refs[0]) === 0) {
-                        $base = $ref;
-                        break;
+                        $bases[] = $ref;
                     }
                 }
-                if (!$base) {
+                if (!count($bases)) {
                     continue;
                 }
+
                 for ($i = 1; $i < count($refs); $i++) {
                     foreach ($this->config->basketReferences as $ref => $d) {
-                        if (strpos($ref, $refs[$i]) === 0) {
-                            $aliases[$ref] = $base;
-                            break;
+                        if (strpos($ref, $refs[$i]) !== 0) {
+                            continue;
+                        }
+                        $foundColor = false;
+                        foreach ($bases as $base) {
+                            if (substr($ref, -2) === substr($base, -2)) {
+                                $aliases[$ref] = $base;
+                                $foundColor = true;
+                                break;
+                            }
+                        }
+                        if (!$foundColor) {
+                            $aliases[$ref] = $bases[0];
                         }
                     }
                 }