Commit 11c05398a641bf8f4eec4c105e707e3780657b3f

Authored by Caio Almeida
2 parents 965635d9 2c80344a

Merge branch 'master' of https://gitlab.com/participa/proposal-app

images/icons/desenvolvimento-social.png 0 → 100644

2.3 KB

images/icons/pobreza.png

1.05 KB

images/icons/reducao-da-pobreza.png

2.3 KB | W: | H:

1.05 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
index.html
... ... @@ -24,7 +24,7 @@
24 24 <nav>
25 25 <ul>
26 26 <li id='nav-proposal-categories'><a href="#proposal-categories" class="active">Temas</a></li>
27   - <li id='nav-proposal-group'><a href="#proposal-group">Todos os Programas</a></li>
  27 + <li id='nav-proposal-group'><a href="#proposal-group">Programas</a></li>
28 28 </ul>
29 29 </nav>
30 30  
... ... @@ -173,26 +173,29 @@
173 173 <a href="#" class="like dislike" data-vote-value="-1"></a>
174 174 <a href="#" class="like" data-vote-value="1"></a>
175 175 <a href="#" class="skip">Pular</a>
176   - <a href="#" class="result">Resultado</a>
  176 + <a href="#" class="vote-result">Resultado</a>
177 177 </div>
178 178 </script>
179 179  
180 180 <script id="results" type='text/x-handlebars-template'>
181 181 <div class="results-content">
182   - <table>
183   - <tr class="header">
184   - <td class="abstract-text">Texto da Alternativa</td>
185   - <td class="votes-for">Gostei</td>
186   - <td class="votes-against">Não Gostei</td>
187   - </tr>
188   - {{#each articles}}
189   - <tr>
190   - <td class="abstract-text"><div class="truncate"><p class="truncated">{{abstract}}</p></div></td>
191   - <td class="votes-for">{{votes_for}}</td>
192   - <td class="votes-against">{{votes_against}}</td>
  182 + <a href="#" class="vote-result">Fechar</a>
  183 + <table>
  184 + <tr class="header">
  185 + <td class="abstract-text">Texto da Alternativa</td>
  186 + <td class="votes-for">Gostei</td>
  187 + <td class="votes-against">Não Gostei</td>
  188 + <td class="score">Pontuação</td>
193 189 </tr>
194   - {{/each}}
195   - </table>
  190 + {{#each articles}}
  191 + <tr>
  192 + <td class="abstract-text"><div class="truncate"><p class="truncated">{{abstract}}</p></div></td>
  193 + <td class="votes-for">{{votes_for}}</td>
  194 + <td class="votes-against">{{votes_against}}</td>
  195 + <td class="score">{{#score .}}{{/score}}</td>
  196 + </tr>
  197 + {{/each}}
  198 + </table>
196 199 </div>
197 200 </script>
198 201  
... ...
js/handlebars-helpers.js
... ... @@ -12,21 +12,23 @@ Handlebars.registerHelper(&#39;list_proposal&#39;, function(proposals, options) {
12 12 var ret = "";
13 13 for(var i=0, j=proposals.length; i<j; i++) {
14 14 element = "<li class='proposal-item'><div class='item'>";
15   - element = element + "<ul class='category'>";
  15 + category = "<ul class='category'>";
16 16  
17 17 for(var x=0, y=proposals[i].categories.length; x<y; x++) {
18 18 if((options.hash['category'] != null) && (options.hash['category'] != proposals[i].categories[x].slug)){
19 19 element = '';
20 20 continue;
21 21 }
22   - element = element + '<li class="category-'+proposals[i].categories[x].slug+'">' + proposals[i].categories[x].name + '</li>';
  22 + category = category + '<li class="category-'+proposals[i].categories[x].slug+'">' + proposals[i].categories[x].name + '</li>';
23 23 }
24 24 if(element == ''){
25 25 continue;
26 26 }
27   - element = element + '</ul>';
  27 + category = category + '</ul>';
28 28 element = element + options.fn(proposals[i]);
29   - element = element + '<p>' + (proposals[i].abstract ? proposals[i].abstract : '') + '</p>';
  29 + element = element + (proposals[i].abstract ? proposals[i].abstract : '');
  30 +
  31 + element = element + category;
30 32 ret = ret + element + '</div></li>';
31 33 }
32 34 return ret;
... ... @@ -46,3 +48,7 @@ Handlebars.registerHelper(&#39;proposal_detail&#39;, function(proposals, options) {
46 48 Handlebars.registerHelper('replace', function(string, to_replace, replacement) {
47 49 return (string || '').replace(new RegExp(to_replace, 'g'), replacement);
48 50 });
  51 +
  52 +Handlebars.registerHelper('score', function(article) {
  53 + return article.votes_for - article.votes_against;
  54 +});
... ...
js/main.js
... ... @@ -158,8 +158,8 @@ function loadRandomProposal(topic_id, private_token) {
158 158 });
159 159 e.preventDefault();
160 160 });
161   - $(document.body).off('click', '.vote-actions .result');
162   - $(document.body).on('click', '.vote-actions .result', function(e) {
  161 + $(document.body).off('click', '.vote-result');
  162 + $(document.body).on('click', '.vote-result', function(e) {
163 163 $('.results-container').toggle();
164 164 if($('.results-container').is(":visible")) {
165 165 var url = host + '/api/v1/articles/' + topic_id + '/children' + '?private_token=' + private_token + '&limit=10&fields=id,name,abstract,votes_for,votes_against&content_type=ProposalsDiscussionPlugin::Proposal';
... ...
sass/_proposal_categories.scss
... ... @@ -50,8 +50,10 @@
50 50 }
51 51  
52 52 ul.category {
  53 + border-top: 1px dotted #045312;
53 54 text-align: left;
54 55 padding: 0;
  56 + padding-top: 10px;
55 57 }
56 58  
57 59 .proposal-item p {
... ... @@ -68,7 +70,6 @@
68 70 }
69 71  
70 72 .proposal-item .proposal-link {
71   - border-top: 1px dotted #045312;
72 73 padding-top: 10px;
73 74 display: block;
74 75 margin: 0;
... ...
sass/_proposal_detail.scss
... ... @@ -87,15 +87,37 @@
87 87 }
88 88 }
89 89 .results-container {
90   - th, td {
91   - border: 1px solid rgb(223, 223, 223);
  90 + &:before {
  91 + content:"";
  92 + display:table;
  93 + clear:both;
92 94 }
93 95 .results-content {
94 96 border: 1px solid #00a9bd;
  97 + margin-top: 20px;
  98 + .vote-result {
  99 + font-weight: bolder;
  100 + font-size: 12px;
  101 + text-transform: uppercase;
  102 + background-color: gray;
  103 + color: white;
  104 + width: 4%;
  105 + border: none;
  106 + margin: 10px;
  107 + border-radius: 6px;
  108 + text-align: center;
  109 + text-decoration: none;
  110 + padding: 9px;
  111 + display: block;
  112 + float: right;
  113 + }
95 114 }
96 115 table {
97   - border-collapse: collapse;
  116 + clear: both;
98 117 margin-top: 20px;
  118 + tbody tr:nth-child(odd) {
  119 + background-color: #e5e5e5;
  120 + }
99 121  
100 122 .abstract-text {
101 123 width: 80%;
... ... @@ -107,9 +129,14 @@
107 129 .votes-against {
108 130 @extend .votes-for;
109 131 }
  132 + .score {
  133 + @extend .votes-for;
  134 + }
110 135 .header {
  136 + line-height: 32px;
111 137 font-weight: bold;
112 138 text-align: center;
  139 + color: rgb(68, 68, 68);
113 140 }
114 141  
115 142 .truncate {
... ... @@ -122,6 +149,9 @@
122 149 text-overflow: ellipsis;
123 150 white-space: nowrap;
124 151 }
  152 + tr {
  153 + color: rgb(77, 77, 77);
  154 + }
125 155 }
126 156 }
127 157  
... ... @@ -293,7 +323,7 @@
293 323 padding: 20px;
294 324 display: block;
295 325 }
296   - .result {
  326 + .vote-result {
297 327 @extend .skip
298 328 }
299 329 }
... ...