blob: 96e306ed8e883972923e1cfd64f14c7d723085c0 (
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
define [
'backbone.marionette'
'templates/coding-rules'
], (
Marionette
Templates
) ->
class CodingRulesStatusView extends Marionette.ItemView
template: Templates['coding-rules-actions']
collectionEvents:
'all': 'render'
ui:
orderChoices: '.navigator-actions-order-choices'
bulkChange: '.navigator-actions-bulk'
events:
'click .navigator-actions-order': 'toggleOrderChoices'
'click @ui.orderChoices': 'sort'
'click @ui.bulkChange': 'bulkChange'
onRender: ->
unless @collection.sorting.sortText
@collection.sorting.sortText = @$('[data-sort=' + @collection.sorting.sort + ']:first').text()
@render()
toggleOrderChoices: (e) ->
e.stopPropagation()
@ui.orderChoices.toggleClass 'open'
if @ui.orderChoices.is '.open'
jQuery('body').on 'click.coding_rules_actions', =>
@ui.orderChoices.removeClass 'open'
sort: (e) ->
e.stopPropagation()
@ui.orderChoices.removeClass 'open'
jQuery('body').off 'click.coding_rules_actions'
el = jQuery(e.target)
sort = el.data 'sort'
asc = el.data 'asc'
if sort != null && asc != null
@collection.sorting = sort: sort, sortText: el.text(), asc: asc
@options.app.fetchFirstPage()
bulkChange: (e) ->
e.stopPropagation()
@options.app.codingRulesBulkChangeDropdownView.toggle()
serializeData: ->
_.extend super,
paging: @collection.paging
sorting: @collection.sorting
|