Anton Shestakov <engored@ya.ru>, Sun, 05 Apr 2015 03:47:35 +0800
Highlights about security.
static/js/framework/views/base.js
Permissions: -rw-r--r--
var CollectionView = Backbone.View.extend({ appendItem: function() {}, updateItem: function() {}, removeItem: function() {}, this.collection.each(this.appendItem, this); bindCollection: function() { .on('add', this.appendItem, this) .on('change', this.updateItem, this) .on('remove', this.removeItem, this) .on('reset', this.repopulate, this); unbindCollection: function() { this.collection.off(null, null, this); compileTemplates: function(templates) { _.each(templates, function(template, name) { this.templates[name] = _.template(template); var Displayer = Backbone.View.extend({ var CollectionCounterView = CollectionView.extend({ initialize: function(options) { if ('plurals' in options) { this.makeTitle = function(n) { return n + ' ' + options.plurals[n == 1 ? 0 : 1]; this.$el.html(this.makeTitle(this.collection.models.length));