-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy pathreactiveQuery.coffee
61 lines (53 loc) · 1.78 KB
/
reactiveQuery.coffee
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
# # reactiveQuery
Template.reactiveQuery.rendered = -> $( "#filter-created" ).uniform()
# ###### reactiveQuery.events()
Template.reactiveQuery.events
"click .add-row": ( event, template ) -> insertRow()
"change #filter-platform": ( event, template ) ->
query = Session.get "reactive-query"
if _.isArray( event.val ) and event.val.length > 0
$in = []
event.val.forEach ( val ) -> $in.push val
filter = platform: $in: $in
_.extend( query, filter )
else delete query.platform
console.log query
Session.set "reactive-query", query
"keyup #filter-user-agent": _.debounce ( event, template ) ->
query = Session.get "reactive-query"
if event.target.value
filter =
userAgent:
$regex: event.target.value
$options: "i"
_.extend( query, filter )
else delete query.userAgent
Session.set "reactive-query", query
, 300
"change #filter-cookie-enabled": ( event, template ) ->
query = Session.get "reactive-query"
if event.val
val = true if event.val is "true"
val = false if event.val is "false"
filter =
cookieEnabled: val
_.extend query, filter
else delete query.cookieEnabled
Session.set "reactive-query", query
"change #filter-created": ( event, template ) ->
query = Session.get "reactive-query"
if event.target.checked
filter =
createdAt: $gte: moment().startOf( "day").toDate()
_.extend( query, filter )
else delete query.createdAt
Session.set "reactive-query", query
# ##### reactiveQuery.helpers()
Template.reactiveQuery.helpers
filterPlatformOptions: -> return {
placeholder: "Filter Platforms..."
}
selectOptions: -> return {
allowClear: true
}
reactiveQuery: -> return Session.get "reactive-query"