Skip to content

Commit 6d0f370

Browse files
committed
Switches the whole app to backbone. Oolaa
Signed-off-by: Akash Manohar J <[email protected]>
1 parent f87789a commit 6d0f370

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+2420
-364
lines changed

Gemfile

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ group :assets do
1919
gem 'coffee-rails', '~> 3.2.1'
2020

2121
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
22+
gem 'execjs'
23+
gem 'eco'
2224
gem 'therubyracer'
2325

2426
gem 'uglifier', '>= 1.0.3'

Gemfile.lock

+7
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,11 @@ GEM
8282
devise (= 1.5.3)
8383
rubycas-client (>= 2.2.1)
8484
diff-lcs (1.1.3)
85+
eco (1.0.0)
86+
coffee-script
87+
eco-source
88+
execjs
89+
eco-source (1.1.0.rc.1)
8590
em-http-request (1.0.1)
8691
addressable (>= 2.2.3)
8792
cookiejar
@@ -218,7 +223,9 @@ DEPENDENCIES
218223
coffee-rails (~> 3.2.1)
219224
devise
220225
devise_bushido_authenticatable
226+
eco
221227
ember-rails!
228+
execjs
222229
factory_girl_rails
223230
faye
224231
jasmine!

app/assets/javascripts/application.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
//= require jquery
1414
//= require jquery-ui
1515
//= require jquery_ujs
16-
//= require ember-dev
17-
//= require lib/ember-rest.js
18-
//= require ember/kandan
16+
//= require lib/underscore
17+
//= require lib/backbone
18+
//= require backbone/kandan
1919
//= require_tree .
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
class Kandan.Collections.Activities extends Backbone.Collection
2+
3+
urlRoot: ()->
4+
"channels/#{@channel_id}/activities"
5+
6+
initialize: (options)->
7+
@channel_id = @get('channel_id')
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
class Kandan.Collections.Channels extends Backbone.Collection
2+
model: Kandan.Models.Channel
3+
url: '/channels'
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#= require_self
2+
#= require_tree ../../templates
3+
#= require_tree ./models
4+
#= require_tree ./collections
5+
#= require_tree ./views
6+
#= require_tree ./routers
7+
8+
window.Kandan =
9+
Models: {}
10+
Collections: {}
11+
Views: {}
12+
Routers: {}
13+
init: ->
14+
# new Kandan.Routers.Main()
15+
# Backbone.history.start({pushState: true})
16+
chat_area = new Kandan.Views.ChatArea()
17+
$('.container').html(chat_area.render().el)
18+
# $('.container').append(chat_box)
19+
20+
$(document).ready ->
21+
Kandan.init()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
class Kandan.Models.Activity extends Backbone.Model
2+
urlRoot: ()->
3+
"channels/#{@channel_id}/activities"
4+
5+
initialize: (options)->
6+
@channel_id = @get('channel_id')
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
class Kandan.Models.Channel extends Backbone.Model
2+
urlRoot: '/channels'
3+
4+
# initialize: ()->
5+
# console.log @activities
6+
7+
parse: (response)->
8+
activities = new Kandan.Collections.Activities()
9+
activities.add(response.activities)
10+
@activities = activities
11+
response
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
class Kandan.Models.User extends Backbone.Model
2+
urlRoot: '/users'
3+
4+
initialize: ()->
5+
console.log "initialized user"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
class Kandan.Routers.Main extends Backbone.Router
2+
3+
routes:
4+
'': 'index'
5+
6+
index: ()->
7+
view = new Kandan.Views.ChatArea()
8+
$('.container').html(view.render().el)
9+
$('.channels').tabs()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
class Kandan.Views.Activity extends Backbone.View
2+
template: JST['activity']
3+
4+
tagName: 'p'
5+
className: 'activity'
6+
7+
render: ()->
8+
$(@el).html(@template({activity: @options.activity}))
9+
@
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
class Kandan.Views.ChatArea extends Backbone.View
2+
3+
template: JST['chatarea']
4+
# className: 'channels'
5+
6+
initialize: ()->
7+
@channels = new Kandan.Collections.Channels()
8+
9+
render: ->
10+
@channels.fetch({success: ()=>
11+
$(@el).html(@template({channels: @channels}))
12+
for channel in @channels.models
13+
view = new Kandan.Views.ListActivities({channel: channel})
14+
$(@el).append(view.render().el)
15+
$('#channels').tabs()
16+
})
17+
$(@el).attr('id', 'channels')
18+
@
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class Kandan.Views.ListActivities extends Backbone.View
2+
tagName: 'div'
3+
# className: 'activities'
4+
5+
render: ()->
6+
for activity in @options.channel.activities.models
7+
activity_view = new Kandan.Views.Activity({activity: activity})
8+
$(@el).append(activity_view.render().el)
9+
$(@el).attr('id', "channels-#{@options.channel.get('id')}")
10+
@
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
class Kandan.Views.ListChannelActivityAreas extends Backbone.View
2+
# template: JST['list_channel_activity_areas']
3+
4+
render: ()->
5+
for channel in @options.channels.models
6+
view = new Kandan.Views.ListActivities({activities: channel.activities})
7+
$(@el).append(view.render().el)
8+
@

app/assets/javascripts/ember/controllers/activities_controller.js.coffee

-6
This file was deleted.

app/assets/javascripts/ember/controllers/channels_controller.js.coffee

-2
This file was deleted.

app/assets/javascripts/ember/controllers/users_controller.js.coffee

-2
This file was deleted.

app/assets/javascripts/ember/helpers/.gitkeep

Whitespace-only changes.

app/assets/javascripts/ember/kandan.js.coffee

-8
This file was deleted.

app/assets/javascripts/ember/models/.gitkeep

Whitespace-only changes.

app/assets/javascripts/ember/models/activity.js.coffee

-2
This file was deleted.

app/assets/javascripts/ember/models/channel.js.coffee

-3
This file was deleted.

app/assets/javascripts/ember/models/user.js.coffee

-7
This file was deleted.

app/assets/javascripts/ember/templates/.gitkeep

Whitespace-only changes.

app/assets/javascripts/ember/templates/activities/list_activities.handlebars

-4
This file was deleted.

app/assets/javascripts/ember/templates/activities/list_channel_activities.handlebars

-4
This file was deleted.

app/assets/javascripts/ember/templates/activities/show.handlebars

-1
This file was deleted.

app/assets/javascripts/ember/templates/channels/list.handlebars

-5
This file was deleted.

app/assets/javascripts/ember/templates/channels/show.handlebars

-1
This file was deleted.

app/assets/javascripts/ember/views/.gitkeep

Whitespace-only changes.

app/assets/javascripts/ember/views/activities/list_activities.js.coffee

-5
This file was deleted.

app/assets/javascripts/ember/views/activities/list_channel_activities.js.coffee

-2
This file was deleted.

app/assets/javascripts/ember/views/activities/show.js.coffee

-5
This file was deleted.

app/assets/javascripts/ember/views/channels/list.js.coffee

-6
This file was deleted.

app/assets/javascripts/ember/views/channels/show.js.coffee

-5
This file was deleted.

app/assets/javascripts/init.js.coffee

-2
This file was deleted.

0 commit comments

Comments
 (0)