diff --git a/assets/javascripts/app/app.coffee b/assets/javascripts/app/app.coffee index ebdd0396..ad0772f6 100644 --- a/assets/javascripts/app/app.coffee +++ b/assets/javascripts/app/app.coffee @@ -96,6 +96,11 @@ new app.views.Notif 'Share', autoHide: null if visitCount is 5 new app.views.Notif 'Thanks', autoHide: null if visitCount is 10 new app.views.News() + @checkForDocUpdates() + + checkForDocUpdates: -> + @docs.checkForUpdates (i) -> + new app.views.Notif 'UpdateDocs', autoHide: null if i > 0 reload: -> @docs.clearCache() diff --git a/assets/javascripts/collections/docs.coffee b/assets/javascripts/collections/docs.coffee index 55d3c8d5..1a69ac85 100644 --- a/assets/javascripts/collections/docs.coffee +++ b/assets/javascripts/collections/docs.coffee @@ -42,7 +42,9 @@ class app.collections.Docs extends app.Collection @models[i++].uninstall(next, next) else callback() + return next() + return getInstallStatuses: (callback) -> app.db.versions @models, (statuses) -> @@ -50,3 +52,14 @@ class app.collections.Docs extends app.Collection for key, value of statuses statuses[key] = installed: !!value, mtime: value callback(statuses) + return + return + + checkForUpdates: (callback) -> + @getInstallStatuses (statuses) => + i = 0 + if statuses + i += 1 for slug, status of statuses when status.installed and @findBy('slug', slug).mtime isnt status.mtime + callback(i) + return + return diff --git a/assets/javascripts/templates/notif_tmpl.coffee b/assets/javascripts/templates/notif_tmpl.coffee index 4859e6d4..9298c260 100644 --- a/assets/javascripts/templates/notif_tmpl.coffee +++ b/assets/javascripts/templates/notif_tmpl.coffee @@ -36,3 +36,7 @@ app.templates.notifThanks = ->
Have a great day :) """ + +app.templates.notifUpdateDocs = -> + textNotif """ Documentation updates available. """, + """ Install them as soon as possible to avoid broken pages. """ diff --git a/assets/javascripts/templates/pages/offline_tmpl.coffee b/assets/javascripts/templates/pages/offline_tmpl.coffee index 6af80e41..c8bfb376 100644 --- a/assets/javascripts/templates/pages/offline_tmpl.coffee +++ b/assets/javascripts/templates/pages/offline_tmpl.coffee @@ -3,7 +3,7 @@ app.templates.offlinePage = (docs) -> """
@@ -59,7 +59,7 @@ app.templates.offlineDoc = (doc, status) -> """ else if outdated """ -