From da3ca7d8c75c45093d5a95bfdefa93806eac2b4d Mon Sep 17 00:00:00 2001 From: Thibaut Date: Fri, 2 Jan 2015 15:11:33 -0500 Subject: [PATCH] Undownload docs when they are disabled --- assets/javascripts/collections/docs.coffee | 9 +++++++++ assets/javascripts/views/sidebar/doc_picker.coffee | 6 ++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/assets/javascripts/collections/docs.coffee b/assets/javascripts/collections/docs.coffee index 4e19f6d6..721f96cd 100644 --- a/assets/javascripts/collections/docs.coffee +++ b/assets/javascripts/collections/docs.coffee @@ -35,6 +35,15 @@ class app.collections.Docs extends app.Collection doc.clearCache() for doc in @models return + undownload: (callback) -> + i = 0 + next = => + if i < @models.length + @models[i++].undownload(next, next) + else + callback() + next() + getDownloadStatuses: (callback) -> app.db.versions @models, (statuses) -> if statuses diff --git a/assets/javascripts/views/sidebar/doc_picker.coffee b/assets/javascripts/views/sidebar/doc_picker.coffee index 689b67b2..8eec8d6c 100644 --- a/assets/javascripts/views/sidebar/doc_picker.coffee +++ b/assets/javascripts/views/sidebar/doc_picker.coffee @@ -46,9 +46,11 @@ class app.views.DocPicker extends app.View save: -> unless @saving @saving = true - app.settings.setDocs @getSelectedDocs() + docs = @getSelectedDocs() + app.settings.setDocs(docs) @saveLink.textContent = if app.appCache then 'Downloading\u2026' else 'Saving\u2026' - app.reload() + disabledDocs = new app.collections.Docs(doc for doc in app.docs.all() when docs.indexOf(doc.slug) is -1) + disabledDocs.undownload -> app.reload() return getSelectedDocs: ->