From aa9f7d444729c3136e0549518eebf0c4c108d818 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 19 Aug 2014 14:50:25 +0400 Subject: [PATCH] get_minified_js: store and check tt-rss version in cached files --- include/functions2.php | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/include/functions2.php b/include/functions2.php index 07024d38..9d8bc76a 100644 --- a/include/functions2.php +++ b/include/functions2.php @@ -2287,19 +2287,26 @@ if (!isset($_GET['debug'])) { $cached_file = CACHE_DIR . "/js/".basename($js).".js"; - if (file_exists($cached_file) && - is_readable($cached_file) && - filemtime($cached_file) >= filemtime("js/$js.js")) { + if (file_exists($cached_file) && is_readable($cached_file) && filemtime($cached_file) >= filemtime("js/$js.js")) { - $rv .= file_get_contents($cached_file); + list($header, $contents) = explode("\n", file_get_contents($cached_file), 2); - } else { - $minified = JShrink\Minifier::minify(file_get_contents("js/$js.js")); - file_put_contents($cached_file, $minified); - $rv .= $minified; + if ($header && $contents) { + list($htag, $hversion) = explode(":", $header); + + if ($htag == "tt-rss" && $hversion == VERSION) { + $rv .= $contents; + continue; + } + } } + + $minified = JShrink\Minifier::minify(file_get_contents("js/$js.js")); + file_put_contents($cached_file, "tt-rss:" . VERSION . "\n" . $minified); + $rv .= $minified; + } else { - $rv .= file_get_contents("js/$js.js"); + $rv .= file_get_contents("js/$js.js"); // no cache in debug mode } } -- 2.39.2