From 7ed11c04c56edb2873ec418fdc3230af48d438b8 Mon Sep 17 00:00:00 2001 From: perploug Date: Wed, 19 Feb 2014 00:15:22 +0100 Subject: [PATCH] Updates yepnope cache in jsinit.cs to append correct rnd value --- .../UI/JavaScript/JsInitialization.cs | 20 +++++++++++++------ .../UI/JavaScript/Resources.Designer.cs | 5 +++-- src/Umbraco.Web/UI/JavaScript/Resources.resx | 3 ++- src/Umbraco.Web/Umbraco.Web.csproj | 1 - 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs b/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs index a2ea9d9610..f2ffd55f28 100644 --- a/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs +++ b/src/Umbraco.Web/UI/JavaScript/JsInitialization.cs @@ -41,13 +41,21 @@ namespace Umbraco.Web.UI.JavaScript public string GetJavascriptInitialization(HttpContextBase httpContext, JArray umbracoInit, JArray additionalJsFiles = null) { var result = GetJavascriptInitializationArray(httpContext, umbracoInit, additionalJsFiles); - var noCache = string.Empty; - - //if debugging, add timestamp, if in production CDF will append CDF version (and should also append umb version) + var noCache = Resources.JsNoCache; + + + + //if debugging, add timestamp, if in production we tell yepNope to append umb+cdf version + //this is needed even tho cdf does this on its serverside merged js + //as assetsService.load() also need to append these versions to ensure cache bursting on updates + pack installs if (httpContext.IsDebuggingEnabled) - noCache = Resources.JsNoCache; - - + noCache = noCache.Replace("##rnd##", "(new Date).getTime()"); + else + { + var version = "'" + Umbraco.Core.Configuration.UmbracoVersion.Current.ToString() + "." + ClientDependency.Core.Config.ClientDependencySettings.Instance.Version + "'"; + noCache = noCache.Replace("##rnd##", version); + } + return ParseMain( noCache, result.ToString(), diff --git a/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs b/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs index e788eb2c03..8c951ae2ff 100644 --- a/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs +++ b/src/Umbraco.Web/UI/JavaScript/Resources.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.18408 +// Runtime Version:4.0.30319.18444 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -89,6 +89,7 @@ namespace Umbraco.Web.UI.JavaScript { /// /// Looks up a localized string similar to yepnope.addFilter(function (resourceObj) { /// var url = resourceObj.url; + /// var rnd = ##rnd##; /// var _op = "?"; /// if(url.indexOf("lib/") === 0 || url.indexOf("js/umbraco.") === 0){ /// return resourceObj; @@ -97,7 +98,7 @@ namespace Umbraco.Web.UI.JavaScript { /// _op = "&"; /// } /// - /// resourceObj.url = resourceObj.url + _op + "umb__rnd=" + (new Date).getTime(); + /// resourceObj.url = resourceObj.url + _op + "umb__rnd=" + rnd; /// return resourceObj; ///});. /// diff --git a/src/Umbraco.Web/UI/JavaScript/Resources.resx b/src/Umbraco.Web/UI/JavaScript/Resources.resx index fd3a72f625..035fe38089 100644 --- a/src/Umbraco.Web/UI/JavaScript/Resources.resx +++ b/src/Umbraco.Web/UI/JavaScript/Resources.resx @@ -124,6 +124,7 @@ yepnope.addFilter(function (resourceObj) { var url = resourceObj.url; + var rnd = ##rnd##; var _op = "?"; if(url.indexOf("lib/") === 0 || url.indexOf("js/umbraco.") === 0){ return resourceObj; @@ -132,7 +133,7 @@ _op = "&"; } - resourceObj.url = resourceObj.url + _op + "umb__rnd=" + (new Date).getTime(); + resourceObj.url = resourceObj.url + _op + "umb__rnd=" + rnd; return resourceObj; }); diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index 2b4aad6550..7ebbe0bef4 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -346,7 +346,6 @@ -