var FilesView = FormView.extend({ el: "#files", events: { }, initialize: function(){ this.__super__.initialize.call(this) this.template = this.$(".template").html() this.templateTotal = this.$(".templateTotal").html() }, load: function(files){ if (! files.length) { this.$el.hide() } var total = 0 files.forEach(function(file){ this.appendFile(file) total += file.size }.bind(this)) var size = hush_size(total) var t = this.templateTotal.replace(/{{size_class}}/g, size[0]) .replace(/{{size}}/g, size[1]) this.$el.append(t) }, parse: function(file){ var size = hush_size(file.size) var datetime = verbose_date(file.date) var date_class = carbon_date(file.date) var t = this.template.replace(/{{username}}/g, file.username) .replace(/{{link}}/g, file.filename) .replace(/{{filename}}/g, file.filename) .replace(/{{date_class}}/g, date_class) .replace(/{{date}}/g, datetime[0]) .replace(/{{time}}/g, datetime[1]) .replace(/{{size_class}}/g, size[0]) .replace(/{{size}}/g, size[1]) return t }, prependFile: function(file){ var $el = $( this.parse(file) ) this.$el.prepend($el) }, appendFile: function(file){ var $el = $( this.parse(file) ) this.$el.append($el) }, success: function(){ this.prependFile(file) } })