Handlebars.registerHelper('link', function(text, url) { text = Handlebars.Utils.escapeExpression(text); url = Handlebars.Utils.escapeExpression(url); var result = '' + text + ''; return new Handlebars.SafeString(result); }); Handlebars.registerHelper('list_proposal', function(proposals, options) { var ret = ""; for(var i=0, j=proposals.length; i' + proposals[i].categories[x].name + ''; } if(element == ''){ continue; } category = category + ''; element = element + options.fn(proposals[i]); element = element + (proposals[i].abstract ? proposals[i].abstract : ''); element = element + category; ret = ret + element + ''; } return ret; }); Handlebars.registerHelper('proposal_detail', function(proposals, options) { var ret = ""; for(var i=0, j=proposals.length; i"; ret = ret + "
" + proposals[i].title + "
"; ret = ret + "" + proposals[i].body + ""; ret = ret + ''; } return ret; }); Handlebars.registerHelper('replace', function(string, to_replace, replacement) { return (string || '').replace(new RegExp(to_replace, 'g'), replacement); }); Handlebars.registerHelper('score', function(article) { return article.votes_for - article.votes_against; });