Sha256: f8a6885648f142eb66412234cf08c2081bca51e429d908ad2fca8d7a9a94ba7f
Contents?: true
Size: 1.37 KB
Versions: 17
Compression:
Stored size: 1.37 KB
Contents
pageflow.FilesCollection = Backbone.Collection.extend({ initialize: function(models, options) { options = options || {}; this.entry = options.entry; this.fileType = options.fileType; this.name = options.fileType.collectionName; }, comparator: function(file) { var fileName = file.get('file_name'); return (fileName && fileName.toLowerCase) ? fileName.toLowerCase() : fileName; }, url: function() { return '/editor/entries/' + this.getEntry().get('id') + '/files/' + this.name; }, getEntry: function() { return this.entry || pageflow.entry; }, confirmable: function() { return new pageflow.SubsetCollection({ parent: this, watchAttribute: 'state', filter: function(item) { return item.get('state') === 'waiting_for_confirmation'; }, }); } }); pageflow.FilesCollection.createForFileTypes = function(fileTypes, files, options) { return fileTypes.reduce(function(result, fileType) { result[fileType.collectionName] = pageflow.FilesCollection.createForFileType( fileType, files[fileType.collectionName], options ); return result; }, {}); }; pageflow.FilesCollection.createForFileType = function(fileType, files, options) { return new pageflow.FilesCollection( files, _.extend({ fileType: fileType, model: fileType.model }, options || {}) ); };
Version data entries
17 entries across 17 versions & 1 rubygems