Add hashed version parameter to js and css. Ref #1520 and many more ;)

This commit is contained in:
Thomas Tanghus 2013-03-19 12:35:31 +01:00
parent 5902ba5c2b
commit 57f2884efa
1 changed files with 5 additions and 4 deletions

View File

@ -37,6 +37,7 @@ class OC_TemplateLayout extends OC_Template {
} else { } else {
parent::__construct('core', 'layout.base'); parent::__construct('core', 'layout.base');
} }
$versionParameter = '?' . md5(implode(OC_Util::getVersion()));
// Add the js files // Add the js files
$jsfiles = self::findJavascriptFiles(OC_Util::$scripts); $jsfiles = self::findJavascriptFiles(OC_Util::$scripts);
$this->assign('jsfiles', array(), false); $this->assign('jsfiles', array(), false);
@ -44,20 +45,20 @@ class OC_TemplateLayout extends OC_Template {
$this->append( 'jsfiles', OC_Helper::linkToRoute('js_config')); $this->append( 'jsfiles', OC_Helper::linkToRoute('js_config'));
} }
if (!empty(OC_Util::$core_scripts)) { if (!empty(OC_Util::$core_scripts)) {
$this->append( 'jsfiles', OC_Helper::linkToRemoteBase('core.js', false)); $this->append( 'jsfiles', OC_Helper::linkToRemoteBase('core.js', false) . $versionParameter);
} }
foreach($jsfiles as $info) { foreach($jsfiles as $info) {
$root = $info[0]; $root = $info[0];
$web = $info[1]; $web = $info[1];
$file = $info[2]; $file = $info[2];
$this->append( 'jsfiles', $web.'/'.$file); $this->append( 'jsfiles', $web.'/'.$file . $versionParameter);
} }
// Add the css files // Add the css files
$cssfiles = self::findStylesheetFiles(OC_Util::$styles); $cssfiles = self::findStylesheetFiles(OC_Util::$styles);
$this->assign('cssfiles', array()); $this->assign('cssfiles', array());
if (!empty(OC_Util::$core_styles)) { if (!empty(OC_Util::$core_styles)) {
$this->append( 'cssfiles', OC_Helper::linkToRemoteBase('core.css', false)); $this->append( 'cssfiles', OC_Helper::linkToRemoteBase('core.css', false) . $versionParameter);
} }
foreach($cssfiles as $info) { foreach($cssfiles as $info) {
$root = $info[0]; $root = $info[0];
@ -77,7 +78,7 @@ class OC_TemplateLayout extends OC_Template {
$app = $paths[0]; $app = $paths[0];
unset($paths[0]); unset($paths[0]);
$path = implode('/', $paths); $path = implode('/', $paths);
$this->append( 'cssfiles', OC_Helper::linkTo($app, $path)); $this->append( 'cssfiles', OC_Helper::linkTo($app, $path) . $versionParameter);
} }
else { else {
$this->append( 'cssfiles', $web.'/'.$file); $this->append( 'cssfiles', $web.'/'.$file);