Commit 0e8518bf6927664cb924c1c0d50164ea75851441

Authored by Leandro Santos
1 parent e4c7476f

filter proposal by category

@@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
31 <img src="{{../host}}{{image.thumb_url}}"/> 31 <img src="{{../host}}{{image.thumb_url}}"/>
32 {{#link name id}}{{/link}} 32 {{#link name id}}{{/link}}
33 <ul id='proposal-item-{{id}}' class='proposal-category-item hide'> 33 <ul id='proposal-item-{{id}}' class='proposal-category-item hide'>
34 - {{#list_proposal ../article.children}} 34 + {{#list_proposal ../article.children category=slug}}
35 {{#link title id}}{{/link}} 35 {{#link title id}}{{/link}}
36 {{/list_proposal}} 36 {{/list_proposal}}
37 </ul> 37 </ul>
@@ -44,6 +44,7 @@ @@ -44,6 +44,7 @@
44 {{#link title id}}{{/link}} 44 {{#link title id}}{{/link}}
45 {{/list_proposal}} 45 {{/list_proposal}}
46 </ul> 46 </ul>
  47 +
47 {{#each article.children}} 48 {{#each article.children}}
48 <div class='proposal-detail hide' id="proposal-item-{{id}}"> 49 <div class='proposal-detail hide' id="proposal-item-{{id}}">
49 <div class='title'>{{title}}</div> 50 <div class='title'>{{title}}</div>
js/handlebars-helpers.js
@@ -10,18 +10,24 @@ Handlebars.registerHelper(&#39;link&#39;, function(text, url) { @@ -10,18 +10,24 @@ Handlebars.registerHelper(&#39;link&#39;, function(text, url) {
10 Handlebars.registerHelper('list_proposal', function(proposals, options) { 10 Handlebars.registerHelper('list_proposal', function(proposals, options) {
11 11
12 var ret = ""; 12 var ret = "";
13 -  
14 for(var i=0, j=proposals.length; i<j; i++) { 13 for(var i=0, j=proposals.length; i<j; i++) {
15 - ret = ret + "<li class='proposal-item'>";  
16 - ret = ret + "<ul class='category'>"; 14 + element = "<li class='proposal-item'>";
  15 + element = element + "<ul class='category'>";
17 16
18 for(var x=0, y=proposals[i].categories.length; x<y; x++) { 17 for(var x=0, y=proposals[i].categories.length; x<y; x++) {
19 - ret = ret + '<li>' + proposals[i].categories[x].name + '</li>'; 18 + if((options.hash['category'] != null) && (options.hash['category'] != proposals[i].categories[x].slug)){
  19 + element = '';
  20 + continue;
  21 + }
  22 + element = element + '<li>' + proposals[i].categories[x].name + '</li>';
  23 + }
  24 + if(element == ''){
  25 + continue;
20 } 26 }
21 - ret = ret + '</ul>';  
22 - ret = ret + options.fn(proposals[i]);  
23 - ret = ret + '<p>' + proposals[i].body + '</p>';  
24 - ret = ret + '</li>'; 27 + element = element + '</ul>';
  28 + element = element + options.fn(proposals[i]);
  29 + element = element + '<p>' + proposals[i].body + '</p>';
  30 + ret = ret + element + '</li>';
25 } 31 }
26 32
27 return ret; 33 return ret;
@@ -33,6 +33,8 @@ $.getJSON(noosferoAPI) @@ -33,6 +33,8 @@ $.getJSON(noosferoAPI)
33 $('#proposal-categories').show(); 33 $('#proposal-categories').show();
34 $('#nav-proposal-categories a').addClass('active'); 34 $('#nav-proposal-categories a').addClass('active');
35 $('#nav-proposal-group a').removeClass('active'); 35 $('#nav-proposal-group a').removeClass('active');
  36 + $('.proposal-category-item').hide();
  37 + $('.proposal-detail').hide();
36 }else if(item == 'proposal-group'){ 38 }else if(item == 'proposal-group'){
37 //Display the Topics or Discussions tab 39 //Display the Topics or Discussions tab
38 $('#proposal-categories').hide(); 40 $('#proposal-categories').hide();