mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-11-25 00:28:31 -05:00
34 lines
No EOL
966 B
CoffeeScript
34 lines
No EOL
966 B
CoffeeScript
ModalView = require 'views/core/ModalView'
|
|
template = require 'templates/editor/campaign/save-campaign-modal'
|
|
DeltaView = require 'views/editor/DeltaView'
|
|
|
|
module.exports = class SaveCampaignModal extends ModalView
|
|
id: 'save-campaign-modal'
|
|
template: template
|
|
plain: true
|
|
|
|
events:
|
|
'click #save-button': 'onClickSaveButton'
|
|
|
|
constructor: (options, @modelsToSave) ->
|
|
super(options)
|
|
|
|
getRenderData: ->
|
|
c = super()
|
|
c.modelsToSave = @modelsToSave
|
|
c
|
|
|
|
afterRender: ->
|
|
@$el.find('.delta-view').each((i, el) =>
|
|
$el = $(el)
|
|
model = @modelsToSave.find( id: $el.data('model-id'))
|
|
deltaView = new DeltaView({model: model})
|
|
@insertSubView(deltaView, $el)
|
|
)
|
|
super()
|
|
|
|
onClickSaveButton: ->
|
|
@showLoading()
|
|
modelsBeingSaved = (model.patch() for model in @modelsToSave.models)
|
|
modelsBeingSaved = modelsBeingSaved
|
|
$.when(_.compact(modelsBeingSaved)...).done(-> document.location.reload()) |