Skip to content

Commit

Permalink
Adds helper methods and appends new activities to the chat area
Browse files Browse the repository at this point in the history
Signed-off-by: Akash Manohar J <akash@akash.im>
  • Loading branch information
HashNuke committed Mar 12, 2012
1 parent 1b9fc13 commit 8b48262
Show file tree
Hide file tree
Showing 6 changed files with 20 additions and 7 deletions.
2 changes: 2 additions & 0 deletions app/assets/javascripts/backbone/broadcasters/faye.js.coffee
Expand Up @@ -15,4 +15,6 @@ class Kandan.Broadcasters.FayeBroadcaster
subscribe: (channel)->
console.log "Subscribing to #{channel}"
@faye_client.subscribe channel, (data)=>
console.log data.user
Kandan.Helpers.Channels.add_activity(data)
console.log data.user.first_name, "says", data.content
17 changes: 14 additions & 3 deletions app/assets/javascripts/backbone/helpers/channels.js.coffee
@@ -1,7 +1,18 @@
class Kandan.Helpers.Channels

@channel_el: (channel_id)->
$("#channels-#{channel_id}")

@selected_tab: ()->
$('#channels').tabs('option', 'selected')

@get_active_channel_id: ()->
$("#channels .ui-tabs-panel")
.eq($('#channels')
.tabs('option', 'selected'))
.data('channel_id')
.eq(@selected_tab())
.data('channel_id')

@add_activity: (activity_attributes)->
activity = new Kandan.Models.Activity(activity_attributes)
activity_view = new Kandan.Views.ShowActivity({activity: activity})
@channel_el(activity.get('channel_id'))
.append(activity_view.render().el)
2 changes: 1 addition & 1 deletion app/assets/javascripts/backbone/kandan.js.coffee
Expand Up @@ -4,6 +4,7 @@
#= require_tree ./collections
#= require_tree ./views
#= require_tree ./routers
#= require_tree ./helpers

window.Kandan =
Models: {}
Expand All @@ -29,7 +30,6 @@ window.Kandan =
window.broadcaster = new Kandan.Broadcasters.FayeBroadcaster()
for channel in channels.models
window.broadcaster.subscribe "/channels/#{channel.get('id')}"

})


Expand Down
2 changes: 1 addition & 1 deletion app/assets/javascripts/backbone/models/activity.js.coffee
@@ -1,6 +1,6 @@
class Kandan.Models.Activity extends Backbone.Model
urlRoot: ()->
"channels/#{@channel_id}/activities"
"channels/#{@get('channel_id')}/activities"

initialize: (options)->
@channel_id = @get('channel_id')
Expand Up @@ -4,7 +4,7 @@ class Kandan.Views.ListActivities extends Backbone.View

render: ()->
for activity in @options.channel.activities.models
activity_view = new Kandan.Views.Activity({activity: activity})
activity_view = new Kandan.Views.ShowActivity({activity: activity})
$(@el).append(activity_view.render().el)
$(@el).attr('id', "channels-#{@options.channel.get('id')}")
$(@el).data('channel_id', @options.channel.get('id'))
Expand Down
@@ -1,4 +1,4 @@
class Kandan.Views.Activity extends Backbone.View
class Kandan.Views.ShowActivity extends Backbone.View
template: JST['activity']

tagName: 'p'
Expand Down

0 comments on commit 8b48262

Please sign in to comment.