Commit 44c19a89f695f9ec35a16175b409fba6daff2357

Authored by Victor Costa
1 parent 6747beed

Share on twitter and g+

index.html
... ... @@ -97,12 +97,7 @@
97 97 <h1><a href="#">{{article.title}}</a></h1>
98 98 <a id="display-contrast" href="#">Alto Contraste</a>
99 99 <div class="social top">
100   - <ul>
101   - <li><a href="#" class="fb-share icon icon-facebook" data-description="Aqui suas ideias viram propostas e você ajuda a melhorar as ações do governo">Compartilhar no Facebook</a></li>
102   - <li><a class="tw-share disabled icon icon-twitter">Compartilhar no Twitter</a></li>
103   - <li><a class="gp-share disabled icon icon-gplus">Compartilhar no Google Plus</a></li>
104   - <li><a class="ws-share disabled icon icon-whatsapp">Compartilhar no WhatsApp</a></li>
105   - </ul>
  100 + {{#social_share "Dialoga Brasil" "Aqui suas ideias viram propostas e você ajuda a melhorar as ações do governo" "#"}}{{/social_share}}
106 101 </div>
107 102 </header>
108 103  
... ... @@ -204,12 +199,7 @@
204 199 <div class="col-sm-4 col-sm-offset-4">
205 200 <div class="social right">
206 201 <span>COMPARTILHE<br>ESTE PROGRAMA</span>
207   - <ul>
208   - <li><a href="#" class="fb-share icon icon-facebook" data-caption="{{title}}" data-description="{{stripTags abstract}}">Compartilhar no Facebook</a></li>
209   - <li><a class="tw-share disabled icon icon-twitter">Compartilhar no Twitter</a></li>
210   - <li><a class="gp-share disabled icon icon-gplus">Compartilhar no Google Plus</a></li>
211   - <li><a class="ws-share disabled icon icon-whatsapp">Compartilhar no WhatsApp</a></li>
212   - </ul>
  202 + {{#social_share title abstract '#'}}{{/social_share}}
213 203 </div>
214 204 </div>
215 205 </div>
... ... @@ -307,12 +297,7 @@
307 297 </div>
308 298 <div class="social">
309 299 <span>Compartilhe esta proposta</span>
310   - <ul>
311   - <li><a href="#/programas/{{parent.id}}/propostas/{{id}}" class="fb-share icon icon-facebook" data-caption="{{parent.title}}" data-description="{{stripTags abstract}}">Compartilhar no Facebook</a></li>
312   - <li><a class="tw-share disabled icon icon-twitter">Compartilhar no Twitter</a></li>
313   - <li><a class="gp-share disabled icon icon-gplus">Compartilhar no Google Plus</a></li>
314   - <li><a class="ws-share disabled icon icon-whatsapp">Compartilhar no WhatsApp</a></li>
315   - </ul>
  300 + {{#social_share parent.title abstract "#/programas/{{parent.id}}/propostas/{{id}}"}}{{/social_share}}
316 301 </div>
317 302 </script>
318 303  
... ... @@ -397,6 +382,14 @@
397 382 </form>
398 383 </script>
399 384  
  385 + <script id="social-share" type="text/x-handlebars-template">
  386 + <ul>
  387 + <li><a href="#/programas/{{parent.id}}/propostas/{{id}}" class="fb-share icon icon-facebook" data-caption="{{parent.title}}" data-description="{{stripTags abstract}}">Compartilhar no Facebook</a></li>
  388 + <li><a href="https://twitter.com/intent/tweet?text={{stripTags abstract}}" class="tw-share icon icon-twitter popup">Compartilhar no Twitter</a></li>
  389 + <li><a href="https://plus.google.com/share?url=http://dialoga.gov.br" class="gp-share icon icon-gplus popup">Compartilhar no Google Plus</a></li>
  390 + <li><a class="ws-share disabled icon icon-whatsapp">Compartilhar no WhatsApp</a></li>
  391 + </ul>
  392 + </script>
400 393  
401 394 <script type='text/javascript' >
402 395 loadRequireJS();
... ...
js/handlebars-helpers.js
... ... @@ -94,6 +94,11 @@ define([&#39;handlebars&#39;], function(Handlebars){
94 94 return +(Math.round(num + "e+2") + "e-2");
95 95 });
96 96  
  97 + Handlebars.registerHelper('social_share', function(title, description, url) {
  98 + var template = Handlebars.compile($('#social-share').html());
  99 + return template();
  100 + });
  101 +
97 102 function proposal_has_category(proposal, category_slug) {
98 103 for(var i=0; i<proposal.categories.length; i++) {
99 104 if(proposal.categories[i].slug == category_slug)
... ...
js/main.js
... ... @@ -730,6 +730,30 @@ define([&#39;handlebars&#39;, &#39;fastclick&#39;, &#39;handlebars_helpers&#39;], function(Handlebars, F
730 730 });
731 731 e.preventDefault();
732 732 });
  733 +
  734 + var popupCenter = function(url, title, w, h) {
  735 + var dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : screen.left;
  736 + var dualScreenTop = window.screenTop !== undefined ? window.screenTop : screen.top;
  737 +
  738 + var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
  739 + var height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
  740 +
  741 + var left = ((width / 2) - (w / 2)) + dualScreenLeft;
  742 + var top = ((height / 3) - (h / 3)) + dualScreenTop;
  743 +
  744 + var newWindow = window.open(url, title, 'scrollbars=yes, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
  745 +
  746 + // Puts focus on the newWindow
  747 + if (window.focus) {
  748 + newWindow.focus();
  749 + }
  750 + };
  751 +
  752 + $(document).on('click', '.social a.popup', {}, function popUp(e) {
  753 + var self = $(this);
  754 + popupCenter(self.attr('href'), self.find('.rrssb-text').html(), 580, 470);
  755 + e.preventDefault();
  756 + });
733 757 });
734 758  
735 759 window.addEventListener("message", function(ev) {
... ...