/* 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();
})();
