aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/coffee/coding-rules-old/views/coding-rules-detail-custom-rule-view.coffee
blob: 84c1f33215312e77311e7de10c137ffae2658ca8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
define [
  'backbone.marionette'
  'templates/coding-rules-old'
], (
  Marionette
  Templates
) ->

  class CodingRulesDetailCustomRuleView extends Marionette.ItemView
    tagName: 'tr'
    className: 'coding-rules-detail-custom-rule'
    template: Templates['coding-rules-detail-custom-rule']

    ui:
      delete: '.coding-rules-detail-custom-rule-delete'

    events:
      'click @ui.delete': 'delete'

    delete: ->
      confirmDialog
        title: t 'delete'
        html: t 'are_you_sure'
        yesHandler: =>
          origEl = @$el.html()
          @$el.html '<i class="spinner"></i>'

          jQuery.ajax
            type: 'POST'
            url: "#{baseUrl}/api/rules/delete"
            data:
              key: @model.get 'key'
          .done =>
            templateKey = @options.templateKey or @options.templateRule.get 'key'
            @options.app.showRule templateKey
          .fail =>
            @$el.html origEl

    serializeData: ->
      _.extend super,
        templateRule: @options.templateRule
        canWrite: @options.app.canWrite