diff --git a/editor/core/application.js b/editor/core/application.js index a96663df..8b94f87d 100644 --- a/editor/core/application.js +++ b/editor/core/application.js @@ -1,10 +1,11 @@ var _ = require("hr.utils"); var $ = require("jquery"); var Q = require("q"); - +var logger = require("hr.logger")("app"); var Application = require("hr.app"); var GridView = require("hr.gridview"); +var dialogs = require("../utils/dialogs"); var workspace = require("./workspace"); // Define base application @@ -23,6 +24,18 @@ var CodeboxApplication = Application.extend({ }, this); this.grid.$el.addClass("main-grid"); this.grid.appendTo(this); + + // Signal offline + function updateOnlineStatus(event) { + logger.log("connection changed", navigator.onLine); + if (!navigator.onLine) { + dialogs.alert("It looks like you lost your internet connection. The IDE requires an internet connection."); + } else { + dialogs.alert("Your internet connection is up again. Restart your navigator tab to ensure that codebox works perfectly."); + } + } + window.addEventListener('online', updateOnlineStatus); + window.addEventListener('offline', updateOnlineStatus); }, render: function() {