1
1
class Kandan.Helpers.Channels
2
2
3
- @ channel_el: (channel_id )->
4
- $ (" #channels-#{ channel_id} " )
3
+ @ channel_activities_el: (channel_id )->
4
+ $ (" #channel-activities-#{ channel_id} " )
5
+
6
+ @ channel_pagination_el: (channel_id )->
7
+ $ (" #channels-#{ channel_id} .pagination" )
5
8
6
9
@ selected_tab: ()->
7
10
$ (' #channels' ).tabs (' option' , ' selected' )
8
11
12
+
9
13
@ get_active_channel_id: ()->
10
14
$ (" #channels .ui-tabs-panel" )
11
15
.eq (@ selected_tab ())
12
16
.data (' channel_id' )
13
17
18
+
14
19
@ new_activity_view: (activity_attributes )->
15
20
activity = new Kandan.Models.Activity (activity_attributes)
16
21
activity_view = new Kandan.Views.ShowActivity ({activity : activity})
17
22
return activity_view
18
23
24
+
19
25
@ add_activity: (activity_attributes , state )->
20
26
if activity_attributes .channel_id
21
27
@ add_message (activity_attributes, state)
22
28
else
23
29
@ add_notification (activity_attributes)
24
30
31
+
25
32
@ add_message: (activity_attributes , state )->
26
- @ channel_el (activity_attributes .channel_id )
33
+ @ channel_activities_el (activity_attributes .channel_id )
27
34
.append (@ new_activity_view (activity_attributes).render ().el )
35
+ @ set_pagination_data (activity_attributes .channel_id )
36
+
28
37
29
38
@ add_notification: (activity_attributes )->
30
- $channel_elements = $ (" #channels .ui-tabs-panel " )
39
+ $channel_elements = $ (" .channel-activities " )
31
40
for el in $channel_elements
32
- $ (el).append (@ new_activity_view (activity_attributes).render ().el )
41
+ $ (el).append (@ new_activity_view (activity_attributes).render ().el )
42
+
43
+
44
+ @ set_pagination_state: (channel_id , more_activities , oldest )->
45
+ @ channel_pagination_el (channel_id).data (' oldest' , oldest)
46
+ if more_activities == true
47
+ console .log " show pagination"
48
+ @ channel_pagination_el (channel_id).show ()
49
+ else
50
+ console .log " hide pagination"
51
+ @ channel_pagination_el (channel_id).hide ()
52
+
53
+
54
+ @ set_pagination_data: (channel_id )->
55
+ $oldest_activity = @ channel_activities_el (channel_id).find (" .activity" ).first ()
56
+ if $oldest_activity .length != 0
57
+ console .log " oldest activity id" , $oldest_activity .data (' activity_id' )
58
+ @ channel_pagination_el (channel_id).data (' oldest' , $oldest_activity .data (' activity_id' ))
0 commit comments