master
 1class csx.Views.My.Cakes.DeleteCakeModalView extends Marionette.ItemView
 2  template: JST["templates/my/cakes/delete_modal"]
 3  ui:
 4    remove_button: "#remove-button"
 5    confirmation_textbox: '#confirmation-textbox'
 6
 7  templateHelpers:
 8    hasError: ->
 9      typeof(@errorMessage) != "undefined"
10
11  events:
12    "click #remove-button": "remove"
13    'keyup #confirmation-textbox': 'refreshStatus'
14
15  modelEvents:
16    'change:errorMessage':'render'
17
18  remove: (e) ->
19    e.preventDefault()
20    e.stopPropagation()
21    @model.unset('errorMessage')
22    @model.destroy(success: @successfullyDeleted, error: @errorDeletingCake)
23
24  successfullyDeleted: =>
25    @closeDialog()
26    window.location.hash = "cakes"
27
28  errorDeletingCake: (model, response, options) ->
29    model.set('errorMessage', 'Could not delete cake.')
30
31  refreshStatus: ->
32    if @ui.confirmation_textbox.val() == @model.get('name')
33      @ui.remove_button.removeAttr('disabled')
34    else
35      @ui.remove_button.attr('disabled', 'disabled')
36
37  closeDialog: (photo) ->
38    $('#modal').modal('hide')