From d32688865e5c812bdaa18cf5fa14157b7dc5e7ce Mon Sep 17 00:00:00 2001 From: Arkadij Kuzhel Date: Tue, 16 Feb 2016 12:54:18 +0200 Subject: [PATCH] Keep duplicated timestamp in store config to make it independent from general cache --- app/code/community/Aoe/JsCssTstamp/Model/Observer.php | 3 +++ app/code/community/Aoe/JsCssTstamp/Model/Package.php | 11 +++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) mode change 100755 => 100644 app/code/community/Aoe/JsCssTstamp/Model/Observer.php diff --git a/app/code/community/Aoe/JsCssTstamp/Model/Observer.php b/app/code/community/Aoe/JsCssTstamp/Model/Observer.php old mode 100755 new mode 100644 index e605cb7..700ff1b --- a/app/code/community/Aoe/JsCssTstamp/Model/Observer.php +++ b/app/code/community/Aoe/JsCssTstamp/Model/Observer.php @@ -17,5 +17,8 @@ public function clean_media_cache_after() $dbStorage->getDirectoryModel() ->deleteDirectory('js') ->deleteDirectory('css'); + + // clean timestamp from config + Mage::getConfig()->saveConfig(Aoe_JsCssTstamp_Model_Package::XML_PATH_CACHEKEY, null); } } diff --git a/app/code/community/Aoe/JsCssTstamp/Model/Package.php b/app/code/community/Aoe/JsCssTstamp/Model/Package.php index d815ada..d6abd84 100644 --- a/app/code/community/Aoe/JsCssTstamp/Model/Package.php +++ b/app/code/community/Aoe/JsCssTstamp/Model/Package.php @@ -12,6 +12,8 @@ class Aoe_DesignFallback_Model_Design_Package extends Mage_Core_Model_Design_Pac */ class Aoe_JsCssTstamp_Model_Package extends Aoe_DesignFallback_Model_Design_Package { + const XML_PATH_CACHEKEY = 'aoe/jscsststamp/aoe_jscsststamp_versionkey'; + const CACHEKEY = 'aoe_jscsststamp_versionkey'; protected $cssProtocolRelativeUris; @@ -245,6 +247,7 @@ protected function generateMergedUrl($type, array $files, $targetDir, $targetFil /** * Get a cached timestamp as version key + * If none then try get from config * * @return int timestamp */ @@ -252,8 +255,12 @@ protected function getVersionKey() { $timestamp = Mage::app()->loadCache(self::CACHEKEY); if (empty($timestamp)) { - $timestamp = time(); - Mage::app()->saveCache($timestamp, self::CACHEKEY, array(), null); + $timestamp = Mage::getStoreConfig(self::XML_PATH_CACHEKEY); + if (empty($timestamp)) { + $timestamp = time(); + Mage::getConfig()->saveConfig(self::XML_PATH_CACHEKEY, $timestamp); + Mage::app()->saveCache($timestamp, self::CACHEKEY, array(), null); + } } return $timestamp;