Source code

Revision control

Copy as Markdown

Other Tools

/* eslint no-unused-vars: 0 */
/* eslint no-undef: 0 */
var app = app || {};
(function () {
"use strict";
// Todo Collection
// ---------------
const Todos = Backbone.Collection.extend({
// Reference to this collection's model.
model: app.Todo,
// Save all of the todo items under this example's namespace.
// Filter down the list of all todo items that are finished.
completed: function () {
return this.where({ completed: true });
},
// Filter down the list to only todo items that are still not finished.
remaining: function () {
return this.where({ completed: false });
},
// We keep the Todos in sequential order, despite being saved by unordered
// GUID in the database. This generates the next order number for new items.
nextOrder: function () {
return this.length ? this.last().get("order") + 1 : 1;
},
// Todos are sorted by their original insertion order.
comparator: "order",
});
// Create our global collection of **Todos**.
app.todos = new Todos();
})();