Skip to content

Commit 0f9ff40

Browse files
authored
Add option to automatically download documentation (#886)
Add option to automatically download documentation
2 parents 536003c + 8aa8ae1 commit 0f9ff40

File tree

5 files changed

+13
-2
lines changed

5 files changed

+13
-2
lines changed

assets/javascripts/app/app.coffee

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,10 @@
140140
@docs.sort()
141141
@initDoc(doc)
142142
@saveDocs()
143-
_onSuccess()
143+
if app.settings.get('autoInstall')
144+
doc.install(_onSuccess, onError)
145+
else
146+
_onSuccess()
144147
return
145148

146149
doc.load onSuccess, onError, writeCache: true

assets/javascripts/app/settings.coffee

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ class app.Settings
1111
'layout'
1212
'size'
1313
'tips'
14+
'autoInstall'
1415
]
1516

1617
INTERNAL_KEYS = [

assets/javascripts/models/doc.coffee

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,4 +142,6 @@ class app.models.Doc extends app.Model
142142
return
143143

144144
isOutdated: (status) ->
145-
status and status.installed and @mtime isnt status.mtime
145+
return false if not status
146+
isInstalled = status.installed or app.settings.get('autoInstall')
147+
isInstalled and @mtime isnt status.mtime

assets/javascripts/templates/pages/settings_tmpl.coffee

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ app.templates.settingsPage = (settings) -> """
1515
<input type="checkbox" form="settings" name="layout" value="_sidebar-hidden"#{if settings['_sidebar-hidden'] then ' checked' else ''}>Automatically hide and show the sidebar
1616
<small>Tip: drag the edge of the sidebar to resize it.</small>
1717
</label>
18+
<label class="_settings-label">
19+
<input type="checkbox" form="settings" name="autoInstall" value="_auto-install"#{if settings.autoInstall then ' checked' else ''}>Automatically download documentation for offline use
20+
<small>Only enable this when bandwidth isn't a concern to you.</small>
21+
</label>
1822
<label class="_settings-label">
1923
<input type="checkbox" form="settings" name="analyticsConsent"#{if settings.analyticsConsent then ' checked' else ''}>Enable tracking cookies
2024
<small>With this checked, we enable Google Analytics and Gauges to collect anonymous traffic information.</small>

assets/javascripts/views/content/settings_page.coffee

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ class app.views.SettingsPage extends app.View
1414
settings.dark = app.settings.get('dark')
1515
settings.smoothScroll = !app.settings.get('fastScroll')
1616
settings.arrowScroll = app.settings.get('arrowScroll')
17+
settings.autoInstall = app.settings.get('autoInstall')
1718
settings.analyticsConsent = app.settings.get('analyticsConsent')
1819
settings[layout] = app.settings.hasLayout(layout) for layout in app.settings.LAYOUTS
1920
settings

0 commit comments

Comments
 (0)