Several minor bugfixes, and enabled API protection on all levels by default.

This commit is contained in:
Nick Winter 2014-04-29 15:25:59 -07:00
parent 8a6bec9d40
commit eca35ce371
5 changed files with 17 additions and 10 deletions

View file

@ -42,6 +42,9 @@
width: 100%
height: 100%
.powered-by-firepad
display: none
.ace_editor
// When Firepad isn't active, .ace_editor needs the width/height set itself.
@include editor-height(0px)
@ -109,8 +112,9 @@
// Override faint gray
border-color: #BFF
.ace_identifier
border-bottom: 1px dotted rgba(255, 128, 128, 0.45)
// Decided it wasn't useful to show what can be hovered, since almost anything can, so we have to make it too faint to be useful if we don't want it to be really distracting.
//.ace_identifier
// border-bottom: 1px dotted rgba(0, 51, 255, 0.25)
.ace_text-layer .ace_comment
color: darken(rgb(103, 164, 200), 5%)

View file

@ -6,6 +6,7 @@
margin: 4px 1%
height: 45px
width: 97%
z-index: 4
//background-color: rgba(100, 45, 210, 0.15)
.flow

View file

@ -17,7 +17,7 @@ module.exports = class ProblemAlertView extends View
getRenderData: (context={}) ->
context = super context
format = (s) -> s?.replace("\n", "<br>").replace('<', '&lt;').replace('>', '&gt;')
format = (s) -> s?.replace('<', '&lt;').replace('>', '&gt;').replace("\n", "<br>")
context.message = format @problem.aetherProblem.message
context.hint = format @problem.aetherProblem.hint
context

View file

@ -119,7 +119,7 @@ module.exports = class TomeView extends View
spellKey = pathComponents.join '/'
@thangSpells[thang.id].push spellKey
unless method.cloneOf
skipProtectAPI = @getQueryVariable "skip_protect_api", not @options.ladderGame and not (@options.levelID in ['find-the-spy'])
skipProtectAPI = @getQueryVariable "skip_protect_api", (@options.levelID in ['gridmancer'])
skipFlow = @getQueryVariable "skip_flow", (@options.levelID in ['brawlwood', 'greed', 'gold-rush'])
spell = @spells[spellKey] = new Spell programmableMethod: method, spellKey: spellKey, pathComponents: pathPrefixComponents.concat(pathComponents), session: @options.session, supermodel: @supermodel, skipFlow: skipFlow, skipProtectAPI: skipProtectAPI, worker: @worker
for thangID, spellKeys of @thangSpells

View file

@ -146,7 +146,7 @@ module.exports = class PlayLevelView extends View
DocsModal = require './level/modal/docs_modal'
options = {docs: @levelLoader.level.get('documentation'), supermodel: @supermodel}
@openModalView(new DocsModal(options), true)
Backbone.Mediator.subscribeOnce 'modal-closed', @onLevelLoaderLoaded, @
Backbone.Mediator.subscribeOnce 'modal-closed', @onLevelLoaded, @
return true
onLoaded: ->
@ -156,7 +156,7 @@ module.exports = class PlayLevelView extends View
return unless @levelLoader.progress() is 1 # double check, since closing the guide may trigger this early
@loadingView.showReady()
if window.currentModal and not window.currentModal.destroyed
return Backbone.Mediator.subscribeOnce 'modal-closed', @onLevelLoaderLoaded, @
return Backbone.Mediator.subscribeOnce 'modal-closed', @onLevelLoaded, @
# Save latest level played in local storage
if not (@levelLoader.level.get('type') in ['ladder', 'ladder-tutorial'])
@ -295,7 +295,7 @@ module.exports = class PlayLevelView extends View
docs = new VictoryModal(options)
@openModalView(docs)
if me.get('anonymous')
window.nextLevelURL = @getNextLevelID() # Signup will go here on completion instead of reloading.
window.nextLevelURL = @getNextLevelURL() # Signup will go here on completion instead of reloading.
onRestartLevel: ->
@tome.reloadAllCode()
@ -320,15 +320,17 @@ module.exports = class PlayLevelView extends View
viewArgs: [{supermodel:@supermodel}, nextLevelID]}
getNextLevel: ->
nextLevelOriginal = @level.get('nextLevel')?.original
return null unless nextLevelOriginal = @level.get('nextLevel')?.original
levels = @supermodel.getModels(Level)
return l for l in levels when l.get('original') is nextLevelOriginal
getNextLevelID: ->
nextLevel = @getNextLevel()
return null unless nextLevel = @getNextLevel()
nextLevelID = nextLevel.get('slug') or nextLevel.id
getNextLevelURL: -> "/play/level/#{@getNextLevelID()}"
getNextLevelURL: ->
return null unless @getNextLevelID()
"/play/level/#{@getNextLevelID()}"
onHighlightDom: (e) ->
if e.delay