diff --git a/toolkit/locales/en-US/chrome/mozapps/extensions/update.dtd b/toolkit/locales/en-US/chrome/mozapps/extensions/update.dtd
index 558b16ee3150..df5bc5e255f8 100644
--- a/toolkit/locales/en-US/chrome/mozapps/extensions/update.dtd
+++ b/toolkit/locales/en-US/chrome/mozapps/extensions/update.dtd
@@ -1,5 +1,12 @@
+
+
+
+
+
diff --git a/toolkit/mozapps/extensions/content/update.js b/toolkit/mozapps/extensions/content/update.js
index 841ec0756de2..6b9a555f27ac 100644
--- a/toolkit/mozapps/extensions/content/update.js
+++ b/toolkit/mozapps/extensions/content/update.js
@@ -89,8 +89,14 @@ var gUpdateWizard = {
}
catch (e) {
}
- document.documentElement.currentPage =
- document.getElementById("versioninfo");
+ var ioService = Components.classes["@mozilla.org/network/io-service;1"]
+ .getService(Components.interfaces.nsIIOService);
+ if (ioService.offline)
+ document.documentElement.currentPage =
+ document.getElementById("offline");
+ else
+ document.documentElement.currentPage =
+ document.getElementById("versioninfo");
},
onWizardFinish: function ()
@@ -161,6 +167,22 @@ var gUpdateWizard = {
}
};
+var gOfflinePage = {
+ onPageAdvanced: function ()
+ {
+ var ioService = Components.classes["@mozilla.org/network/io-service;1"]
+ .getService(Components.interfaces.nsIIOService);
+ ioService.offline = false;
+ return true;
+ },
+
+ toggleOffline: function ()
+ {
+ var nextbtn = document.documentElement.getButton("next");
+ nextbtn.disabled = !nextbtn.disabled;
+ }
+}
+
var gVersionInfoPage = {
_completeCount: 0,
_totalCount: 0,
diff --git a/toolkit/mozapps/extensions/content/update.xul b/toolkit/mozapps/extensions/content/update.xul
index 1eede116429a..669fcad6636f 100644
--- a/toolkit/mozapps/extensions/content/update.xul
+++ b/toolkit/mozapps/extensions/content/update.xul
@@ -67,6 +67,17 @@
+
+ &offline.description;
+
+
+