Add retry button for when fetching fails

This commit is contained in:
Kevin Sawicki
2013-05-22 12:50:19 -07:00
parent d671345ab3
commit 9a5fc6ebe8
2 changed files with 19 additions and 2 deletions

View File

@@ -9,15 +9,28 @@ class AvailablePackagesConfigPanel extends ConfigPanel
@div class: 'available-packages', =>
@div outlet: 'loadingArea', class: 'alert alert-info loading-area', =>
@span 'Loading available packages\u2026'
@div outlet: 'errorArea', class: 'alert alert-error', =>
@span 'Error fetching available packages.'
@button outlet: 'retry', class: 'btn btn-mini btn-retry', 'Retry'
@div outlet: 'packagesArea'
initialize: (@packageEventEmitter) ->
@retry.on 'click', => @refresh()
@refresh()
refresh: ->
@loadingArea.show()
@errorArea.hide()
packageManager.getAvailable (error, @packages=[]) =>
@loadingArea.hide()
if error?
@errorArea.show()
console.error(error.stack ? error)
else
@packagesArea.empty()
for pack in @packages
@append(new PackageConfigView(pack, @packageEventEmitter))
@packageEventEmitter.trigger('available-packages-loaded', [@packages])
@packagesArea.append(new PackageConfigView(pack, @packageEventEmitter))
@packageEventEmitter.trigger('available-packages-loaded', @packages)
getPackageCount: -> @packages.length

View File

@@ -143,6 +143,10 @@
}
}
.btn-retry {
margin-left: 10px;
}
.readme {
margin-top: 10px;
}