|
|
@@ -12,13 +12,25 @@
|
|
|
};
|
|
|
})();
|
|
|
var browserSupportStorage = browserFeatures.localStroage || browserFeatures.cookies;
|
|
|
+ var browserSupportAppCache = !!$window.applicationCache;
|
|
|
|
|
|
+ var onAppCacheUpdatedCallbacks = [];
|
|
|
var onFirstVisitCallbacks = [];
|
|
|
var firstVisitCallbackFired = false;
|
|
|
var sessionSettings = {
|
|
|
debugMode: false
|
|
|
};
|
|
|
|
|
|
+ if (browserSupportAppCache) {
|
|
|
+ var appCache = $window.applicationCache;
|
|
|
+ appCache.addEventListener('updateready', function (e) {
|
|
|
+ for (var i = 0; i < onAppCacheUpdatedCallbacks.length; i++) {
|
|
|
+ var callback = onAppCacheUpdatedCallbacks[i];
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ }, false);
|
|
|
+ }
|
|
|
+
|
|
|
var fireFirstVisitEvent = function () {
|
|
|
if (!browserSupportStorage) {
|
|
|
return;
|
|
|
@@ -200,6 +212,9 @@
|
|
|
isBrowserSupportStorage: function () {
|
|
|
return browserSupportStorage;
|
|
|
},
|
|
|
+ isBrowserSupportApplicationCache: function () {
|
|
|
+ return browserSupportAppCache;
|
|
|
+ },
|
|
|
getBrowserFeatures: function () {
|
|
|
return browserFeatures;
|
|
|
},
|
|
|
@@ -597,6 +612,13 @@
|
|
|
resetSettings: function () {
|
|
|
clearAll();
|
|
|
},
|
|
|
+ onApplicationCacheUpdated: function (callback) {
|
|
|
+ if (!callback) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ onAppCacheUpdatedCallbacks.push(callback);
|
|
|
+ },
|
|
|
onFirstAccess: function (callback) {
|
|
|
if (!callback) {
|
|
|
return;
|