Commit b3b529c5d81b1051777e5e962c646091aa903909

Authored by Leonardo Merlin
1 parent e4afe03f

Add a new handlebars helper. Fix #94

Showing 2 changed files with 11 additions and 19 deletions   Show diff stats
@@ -135,21 +135,9 @@ @@ -135,21 +135,9 @@
135 <div class="description"></div> 135 <div class="description"></div>
136 </div> 136 </div>
137 <ul class="proposal-list"> 137 <ul class="proposal-list">
138 - {{#each ../article.children}}  
139 - <li class='proposal-item'>  
140 - <a href="#/programas/{{id}}" data-target="proposal-item-{{id}}" class="proposal-link">  
141 - <div class='item'>  
142 - {{title}}  
143 - {{{abstract}}}  
144 - <ul class='category'>  
145 - {{#each categories}}  
146 - <li class="category-{{slug}}">{{name}}</li>  
147 - {{/each}}  
148 - </ul>  
149 - </div>  
150 - </a>  
151 - </li>  
152 - {{/each}} 138 + {{#list_proposal ../article.children category=slug}}
  139 + {{#link title id}}{{/link}}
  140 + {{/list_proposal}}
153 </ul> 141 </ul>
154 </div> 142 </div>
155 {{/each}} 143 {{/each}}
js/handlebars-helpers.js
@@ -12,10 +12,14 @@ Handlebars.registerHelper(&#39;list_proposal&#39;, function(proposals, options) { @@ -12,10 +12,14 @@ Handlebars.registerHelper(&#39;list_proposal&#39;, function(proposals, options) {
12 12
13 var ret = ""; 13 var ret = "";
14 for(var i=0, j=proposals.length; i<j; i++) { 14 for(var i=0, j=proposals.length; i<j; i++) {
15 - element = "<li class='proposal-item'><div class='item'>"; 15 + var proposal = proposals[i];
  16 +
  17 + element = '<li class="proposal-item">' +
  18 + '<a href="#/programas/'+proposal.id+'" data-target="proposal-item-'+proposal.id+'" class="proposal-link">' +
  19 + '<div class="item">' +
  20 + '' + proposal.title;
16 category = "<ul class='category'>"; 21 category = "<ul class='category'>";
17 22
18 - var proposal = proposals[i];  
19 23
20 for(var x=0, y=proposal.categories.length; x<y; x++) { 24 for(var x=0, y=proposal.categories.length; x<y; x++) {
21 if((options.hash['category'] != null) && (options.hash['category'] != proposal.categories[x].slug)){ 25 if((options.hash['category'] != null) && (options.hash['category'] != proposal.categories[x].slug)){
@@ -28,11 +32,11 @@ Handlebars.registerHelper(&#39;list_proposal&#39;, function(proposals, options) { @@ -28,11 +32,11 @@ Handlebars.registerHelper(&#39;list_proposal&#39;, function(proposals, options) {
28 continue; 32 continue;
29 } 33 }
30 category = category + '</ul>'; 34 category = category + '</ul>';
31 - element = element + options.fn(proposal); 35 + // element = element + options.fn(proposal);
32 element = element + (proposal.abstract ? proposal.abstract : ''); 36 element = element + (proposal.abstract ? proposal.abstract : '');
33 37
34 element = element + category; 38 element = element + category;
35 - ret = ret + element + '</div></li>'; 39 + ret = ret + element + '</div></a></li>';
36 } 40 }
37 return ret; 41 return ret;
38 }); 42 });