/* age_class views_class comments_class size_class files_class */ var ThreadBox = View.extend({ el: ".threads", events: { }, initialize: function(){ this.__super__.initialize.call(this) this.template = this.$(".template").html() }, load: function(threads){ threads.forEach(this.appendThread.bind(this)) }, parse: function(thread){ var views = hush_views(thread.viewed) var size = hush_size(thread.size) var comments = hush_null(thread.comment_count, "c") var files = hush_null(thread.file_count, "f") var dot = privacy_dot(thread.private) var t = this.template .replace(/{{id}}/g, thread.id) .replace(/{{username}}/g, thread.username) .replace(/{{privacy_dot}}/g, dot) .replace(/{{title}}/g, thread.title) .replace(/{{age}}/g, get_age(thread.lastmodified) ) .replace(/{{age_class}}/g, carbon_date(thread.lastmodified) ) .replace(/{{views}}/g, views[1]) .replace(/{{comments}}/g, comments[1]) .replace(/{{files}}/g, files[1]) .replace(/{{size}}/g, size[1] ) .replace(/{{views_class}}/g, views[0]) .replace(/{{comments_class}}/g, comments[0]) .replace(/{{files_class}}/g, files[0]) .replace(/{{show_files}}/g, thread.file_count == 0 ? "hidden" : "") .replace(/{{size_class}}/g, size[0] ) return t }, prependThread: function(thread){ var $row = $( this.parse(thread) ) this.$el.prepend($row) }, appendThread: function(thread){ var $row = $( this.parse(thread) ) this.$el.append($row) }, })