diff --git a/app/.meteor/packages b/app/.meteor/packages index 74827616..03cb42df 100644 --- a/app/.meteor/packages +++ b/app/.meteor/packages @@ -54,3 +54,4 @@ iron:router littledata:synced-cron montiapm:agent zodern:standard-minifier-js +mixmax:smart-disconnect diff --git a/app/.meteor/versions b/app/.meteor/versions index 6017c553..4a62292f 100644 --- a/app/.meteor/versions +++ b/app/.meteor/versions @@ -78,6 +78,7 @@ meteor-base@1.4.0 meteorhacks:subs-manager@1.6.4 minifier-css@1.5.3 minimongo@1.6.0 +mixmax:smart-disconnect@0.0.4 mobile-experience@1.1.0 mobile-status-bar@1.1.0 modern-browsers@0.1.5 diff --git a/app/client/views/layout/layout.html b/app/client/views/layout/layout.html index 763854ce..fff9e4ca 100644 --- a/app/client/views/layout/layout.html +++ b/app/client/views/layout/layout.html @@ -5,6 +5,19 @@ {{> yield}} + {{#if disconnected}} +
+ Disconnected, changes won't be saved. {{#if connectionStatus}}({{connectionStatus}}){{/if}} +
+ {{/if}} {{> Template.dynamic template=globalToastTemplate data=globalToastData }} diff --git a/app/client/views/layout/layout.js b/app/client/views/layout/layout.js index c1480d44..6c94dc7d 100644 --- a/app/client/views/layout/layout.js +++ b/app/client/views/layout/layout.js @@ -2,6 +2,16 @@ Template.layout.onCreated(function() { this.subscribe("user"); }); +Template.layout.helpers({ + connectionStatus: function(){ + let status = Meteor.status() + return status.reason || status.status; + }, + disconnected: function(){ + return !Meteor.status().connected; + }, +}); + Template.appDrawer.helpers({ profileLink: function() { var user = Meteor.user();