Template[getTemplate('postInfo')].helpers({ pointsUnitDisplayText: function(){ return this.upvotes == 1 ? i18n.t('point') : i18n.t('points'); }, can_edit: function(){ return canEdit(Meteor.user(), this); }, ago: function(){ // if post is approved show submission time, else show creation time. time = this.status == STATUS_APPROVED ? this.postedAt : this.createdAt; return moment(time).fromNow(); }, postAuthor: function() { return postAuthor }, getTemplate: function() { return getTemplate(this.template); } }); Template[getTemplate('postAuthorName')].helpers({ authorName: function(){ return getAuthorName(this); }, profileUrl: function(){ // note: we don't want the post to be re-rendered every time user properties change var user = Meteor.users.findOne(this.userId, {reactive: false}); if(user) return getProfileUrl(user); } })