mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-03-31 07:12:49 -04:00
Merge pull request #3716 from duybkict/fix-3678-rebase
Fix #3678 display error on loading resources failed - rebased
This commit is contained in:
commit
9a36cf514e
5 changed files with 16 additions and 1 deletions
app
lib
styles/play/level
templates/play/level
views/play/level
|
@ -40,6 +40,7 @@ module.exports = class LevelLoader extends CocoClass
|
|||
|
||||
@worldNecessities = []
|
||||
@listenTo @supermodel, 'resource-loaded', @onWorldNecessityLoaded
|
||||
@listenTo @supermodel, 'failed', @onWorldNecessityLoadFailed
|
||||
@loadLevel()
|
||||
@loadAudio()
|
||||
@playJingle()
|
||||
|
@ -329,6 +330,9 @@ module.exports = class LevelLoader extends CocoClass
|
|||
@worldNecessities = (r for r in @worldNecessities when r?)
|
||||
@onWorldNecessitiesLoaded() if @checkAllWorldNecessitiesRegisteredAndLoaded()
|
||||
|
||||
onWorldNecessityLoadFailed: (resource) ->
|
||||
@trigger('world-necessity-load-failed', resource: resource)
|
||||
|
||||
checkAllWorldNecessitiesRegisteredAndLoaded: ->
|
||||
return false unless _.filter(@worldNecessities).length is 0
|
||||
return false unless @thangNamesLoaded
|
||||
|
|
|
@ -157,7 +157,7 @@ $UNVEIL_TIME: 1.2s
|
|||
font-variant: small-caps
|
||||
text-transform: none
|
||||
|
||||
.subscription-required, .course-membership-required
|
||||
.subscription-required, .course-membership-required, .could-not-load
|
||||
display: none
|
||||
margin-top: -160px
|
||||
color: black
|
||||
|
|
|
@ -25,6 +25,9 @@
|
|||
.progress-bar.progress-bar-success
|
||||
.rim
|
||||
|
||||
.could-not-load
|
||||
span(data-i18n="loading_error.could_not_load") Error loading from server
|
||||
|
||||
.subscription-required
|
||||
span(data-i18n="subscribe.subscription_required_to_play") You'll need a subscription to play this level.
|
||||
button.start-subscription-button.btn.btn-lg.btn-warning(data-i18n="subscribe.subscribe") Subscribe
|
||||
|
|
|
@ -204,6 +204,10 @@ module.exports = class LevelLoadingView extends CocoView
|
|||
@$el.find('.level-loading-goals, .tip, .load-progress').hide()
|
||||
@$el.find('.course-membership-required').show()
|
||||
|
||||
onLoadError: (resource) ->
|
||||
@$el.find('.level-loading-goals, .tip, .load-progress').hide()
|
||||
@$el.find('.could-not-load').show()
|
||||
|
||||
onClickStartSubscription: (e) ->
|
||||
@openModalView new SubscribeModal()
|
||||
levelSlug = @level?.get('slug') or @options.level?.get('slug')
|
||||
|
|
|
@ -141,6 +141,7 @@ module.exports = class PlayLevelView extends RootView
|
|||
levelLoaderOptions.fakeSessionConfig = {}
|
||||
@levelLoader = new LevelLoader levelLoaderOptions
|
||||
@listenToOnce @levelLoader, 'world-necessities-loaded', @onWorldNecessitiesLoaded
|
||||
@listenTo @levelLoader, 'world-necessity-load-failed', @onWorldNecessityLoadFailed
|
||||
|
||||
trackLevelLoadEnd: ->
|
||||
return if @isEditorPreview
|
||||
|
@ -195,6 +196,9 @@ module.exports = class PlayLevelView extends RootView
|
|||
@controlBar.setBus(@bus)
|
||||
@initScriptManager()
|
||||
|
||||
onWorldNecessityLoadFailed: (resource) ->
|
||||
@loadingView.onLoadError(resource)
|
||||
|
||||
grabLevelLoaderData: ->
|
||||
@session = @levelLoader.session
|
||||
@world = @levelLoader.world
|
||||
|
|
Loading…
Add table
Reference in a new issue