blob: aa0d632561f0f1bdcb8ad6cddd2dbb2286b711aa (
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
|
class @MilestoneSelect
constructor: ->
$('.js-milestone-select').each (i, dropdown) ->
projectId = $(dropdown).data('project-id')
selectedMilestone = $(dropdown).data('selected')
showNo = $(dropdown).data('show-no')
showAny = $(dropdown).data('show-any')
$(dropdown).glDropdown(
data: (term, callback) ->
Api.milestones projectId, (data) ->
data = $.map data, (milestone) ->
return milestone if milestone.state isnt "closed"
if showNo
data.unshift(
title: 'No milestone'
)
if showAny
data.unshift(
title: 'Any milestone'
)
if data.length > 2
data.splice 2, 0, "divider"
callback(data)
filterable: true
search:
fields: ['title']
selectable: true
fieldName: $(dropdown).data('field-name')
text: (milestone) ->
milestone.title
id: (milestone) ->
if milestone.title isnt "Any milestone"
milestone.title
else
""
isSelected: (milestone) ->
milestone.title is selectedMilestone
clicked: ->
$(dropdown).parents('form').submit()
)
|