var Backbone = require('backbone'); Backbone.LocalStorage = require("backbone.localstorage"); var TodoModel = require('./todo'); /** * TodoListCollection * @version 1.0.0 * @description Todo Collection - requires the module {@link module:todo/models/todo} * @module todo/models/todos * @link {http://backbonejs.org/} * @link {http://documentup.com/jeromegn/backbone.localStorage} * @requires module:todo/models/todo */ module.exports = Backbone.Collection.extend({ /** Todo Model */ model: TodoModel, /** localStorage */ localStorage: new Backbone.LocalStorage('todos-backbone-marionette-browserify'), /** * @func getCompleted * @returns {*} */ getCompleted: function () { return this.filter(this._isCompleted); }, /** * @func getActive * @returns {*} */ getActive: function () { return this.reject(this._isCompleted); }, /** * @func comparator * @param todo * @returns {*} */ comparator: function (todo) { return todo.get('created'); }, /** * @func _isCompleted * @param todo * @returns {*} * @private */ _isCompleted: function (todo) { return todo.isCompleted(); } });