Commit 6b0b7fbda1cf05ee4f943098021943eab4b2b98e

Authored by Victor Costa
1 parent 14a19b72

Display loading when fetch a random proposal

Showing 2 changed files with 23 additions and 11 deletions   Show diff stats
index.html
... ... @@ -101,6 +101,13 @@
101 101 </div>
102 102 </div>
103 103 <div class='support-proposal-container'>
  104 + <div class='support-proposal'>
  105 + <div class='container-title'> Apoie outras propostas</div>
  106 + <div class='subtitle'> Propostas da sociedade</div>
  107 + <div class="random-proposal"></div>
  108 + <div class="loading">Carregando...</div>
  109 + <div class="no-proposals">Ainda não existe nenhuma proposta para este programa.</div>
  110 + </div>
104 111 </div>
105 112 <div class='experience-proposal-container'>
106 113 <div class='experience-proposal'>
... ... @@ -131,15 +138,11 @@
131 138 </script>
132 139  
133 140 <script id='support-proposal-template' type='text/x-handlebars-template'>
134   - <div class='support-proposal'>
135   - <div class='container-title'> Apoie outras propostas</div>
136   - <div class='subtitle'> Propostas da sociedade</div>
137   - <div class='abstract'><p>"{{abstract}}"</p></div>
138   - <div class="vote-actions">
139   - <a href="#" class="like dislike" data-vote-value="-1"></a>
140   - <a href="#" class="like" data-vote-value="1"></a>
141   - <a href="#" class="skip">Pular</a>
142   - </div>
  141 + <div class='abstract'><p>"{{abstract}}"</p></div>
  142 + <div class="vote-actions">
  143 + <a href="#" class="like dislike" data-vote-value="-1"></a>
  144 + <a href="#" class="like" data-vote-value="1"></a>
  145 + <a href="#" class="skip">Pular</a>
143 146 </div>
144 147 </script>
145 148  
... ...
js/main.js
... ... @@ -126,11 +126,20 @@ $.getJSON(noosferoAPI)
126 126 });
127 127  
128 128 function loadRandomProposal(topic_id, private_token) {
  129 + $(".no-proposals").hide();
  130 + $(".loading").show();
  131 + $('.random-proposal').html('');
129 132 var url = host + '/api/v1/articles/' + topic_id + '/children' + '?private_token=' + private_token + '&limit=1&order=random()&_='+new Date().getTime()+'&fields=id,name,abstract,created_by';
130 133 $.getJSON(url).done(function( data ) {
131   - if(data.articles.length == 0) return;
  134 + $(".loading").hide();
  135 +
  136 + if(data.articles.length == 0) {
  137 + $(".no-proposals").show();
  138 + return;
  139 + }
  140 +
132 141 var article = data.articles[0];
133   - $('.support-proposal-container').html(supportProposalTemplate(article));
  142 + $('.random-proposal').html(supportProposalTemplate(article));
134 143 $(".abstract").dotdotdot();
135 144 $(document.body).off('click', '.vote-actions .skip');
136 145 $(document.body).on('click', '.vote-actions .skip', function(e) {
... ...