Add the cache buster to the generated JS artifacts
authorAlexander Ebert <ebert@woltlab.com>
Thu, 10 Nov 2022 16:57:17 +0000 (17:57 +0100)
committerAlexander Ebert <ebert@woltlab.com>
Sun, 13 Nov 2022 14:28:21 +0000 (15:28 +0100)
com.woltlab.wcf/templates/headIncludeJavaScript.tpl
wcfsetup/install/files/acp/templates/header.tpl
wcfsetup/install/files/lib/system/language/preload/PhrasePreloader.class.php

index 3343cb7f43312196e346c5f684c14c51048a128d..e2e7a077217fec15ec0680ebb7e397751a44162e 100644 (file)
@@ -25,7 +25,7 @@
 </script>
 
 <script src="{$phrasePreloader->getUrl($__wcf->language)}"></script>
-<script src="{$__wcf->getPath()}js/WoltLabSuite/WebComponent.js"></script>
+<script src="{$__wcf->getPath()}js/WoltLabSuite/WebComponent.js?v={@LAST_UPDATE_TIME}"></script>
 
 {js application='wcf' file='require' bundle='WoltLabSuite.Core' core='true' hasTiny=true}
 {js application='wcf' file='require.config' bundle='WoltLabSuite.Core' core='true' hasTiny=true}
index 18b312f64beee00e1d8eb23101c90b60f1c93cc7..757fe8c07fbbec3dca4b95734bcd697e03e25345 100644 (file)
@@ -49,7 +49,7 @@
        </script>
 
        <script data-eager="true" src="{$phrasePreloader->getUrl($__wcf->language)}"></script>
-       <script data-eager="true" src="{$__wcf->getPath()}js/WoltLabSuite/WebComponent.js"></script>
+       <script data-eager="true" src="{$__wcf->getPath()}js/WoltLabSuite/WebComponent.js?v={@LAST_UPDATE_TIME}"></script>
        
        {js application='wcf' file='require' bundle='WoltLabSuite.Core' core='true'}
        {js application='wcf' file='require.config' bundle='WoltLabSuite.Core' core='true'}
index 417119e2e77e27f79b3fc28622cf4f836d33d44b..522022eda500509c70ab3b3ff4bd896cd7bf4f13 100644 (file)
@@ -28,7 +28,12 @@ final class PhrasePreloader
             $this->rebuild($language);
         }
 
-        return WCF::getPath() . $language->getPreloadCacheFilename();
+        return \sprintf(
+            '%s%s?v=%d',
+            WCF::getPath(),
+            $language->getPreloadCacheFilename(),
+            \LAST_UPDATE_TIME
+        );
     }
 
     private function needsRebuild(Language $language): bool