Skip to content

Commit

Permalink
convert entries to CS
Browse files Browse the repository at this point in the history
  • Loading branch information
jackdempsey committed Aug 19, 2012
1 parent 428ca56 commit cb6613a
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 72 deletions.
72 changes: 0 additions & 72 deletions app/assets/javascripts/todos/todo_app/controllers/entries.js

This file was deleted.

@@ -0,0 +1,62 @@
((app) ->
'use strict'

Entries = Ember.ArrayProxy.extend
store: new app.Store app.storeNamespace
content: []

createNew: (value) ->
return unless value.trim()
todo = @get( 'store' ).createFromTitle value
@pushObject todo

pushObject: (item, ignoreStorage) ->
unless ignoreStorage
@get( 'store' ).create item
@_super item

removeObject: (item) ->
@get( 'store' ).remove item
@_super item

clearCompleted: ->
@filterProperty(
'completed', true
).forEach( @removeObject, this )

total: (->
@get( 'length' )
).property '@each.length'

remaining: ( ->
@filterProperty( 'completed', false ).get 'length'
).property '@each.completed'

completed: (->
return @filterProperty( 'completed', true ).get( 'length' )
).property '@each.completed'

noneLeft: (->
@get( 'total' ) is 0
).property 'total'

allAreDone: ((key, value) ->
if value?
@setEach 'completed', value
value
else
!!@get( 'length' ) and @everyProperty( 'completed', true )
).property '@each.completed'

init: ->
@_super()
# Load items if any upon initialization
items = @get( 'store' ).findAll()
if items.get 'length'
@set '[]', items

app.EntriesController = Entries
app.entriesController = Entries.create()


)(window.Todos)

0 comments on commit cb6613a

Please sign in to comment.