Commit 81971fd5e11cbe933efbf2ce48c6e1668047a36b

Authored by Rodrigo Souto
2 parents cae1f9c6 c02b7bca

Merge branch 'refactor_communities_block_plugin_html_generation' into 'master'

Remove HTML generation from community_block plugin

It now relies on BoxesHelper logic and thus the method got removed. As
it was the only subject of unit tests, The unit tests for this class
have been removed (most of the logic is tested through functional
tests).

It's dangerous to go alone. Have this travis build just in case: https://travis-ci.org/rafamanzo/noosfero/builds/118601061

See merge request !826
plugins/community_block/lib/community_block.rb
... ... @@ -7,13 +7,4 @@ class CommunityBlock < Block
7 7 def help
8 8 _("Help for Community Description Block.")
9 9 end
10   -
11   - def content(arg={})
12   - block = self
13   -
14   - proc do
15   - render :file => 'community_block', :locals => { :block => block }
16   - end
17   - end
18   -
19 10 end
... ...
plugins/community_block/test/unit/commmunity_block_test.rb
... ... @@ -1,11 +0,0 @@
1   -require_relative '../test_helper'
2   -
3   -class CommunityBlockTest < ActiveSupport::TestCase
4   -
5   - should "display community block" do
6   - block = CommunityBlock.new
7   - self.expects(:render).with(:file => 'community_block', :locals => { :block => block })
8   - instance_eval(& block.content)
9   - end
10   -
11   -end
plugins/community_block/views/blocks/community.html.erb 0 → 100644
... ... @@ -0,0 +1,52 @@
  1 +<div class="community-block">
  2 + <div class="community-block-logo">
  3 + <%= link_to profile_image(profile, :big), profile.url %>
  4 + </div>
  5 + <div class="community-block-info">
  6 + <div class="community-block-title">
  7 +
  8 + <%
  9 + links = []
  10 +
  11 + if logged_in?
  12 +
  13 + if profile.enable_contact?
  14 + links.push(c_('Send an e-mail') => {:href => url_for({:controller => 'contact', :action => 'new', :profile => profile.identifier})})
  15 + end
  16 +
  17 + links.push(c_('Report abuse') => {:href => url_for({:controller => 'profile', :action => 'report_abuse', :profile => profile.identifier})})
  18 +
  19 + if !user.nil? && user.has_permission?('edit_profile', profile)
  20 + links.push(c_('Control panel') => {:href => url_for({:controller => 'profile_editor', :profile => profile.identifier})})
  21 + end %>
  22 +
  23 + <%= link_to(
  24 + content_tag('span','',:class => 'community-block-button icon-arrow'),
  25 + '#',
  26 + :onclick => "toggleSubmenu(this,'',#{CGI::escapeHTML(links.to_json)}); return false;",
  27 + :class => 'simplemenu-trigger') %>
  28 +
  29 + <% end %>
  30 +
  31 + <% if logged_in? %>
  32 + <% if profile.members.include?(user) || profile.already_request_membership?(user) %>
  33 + <%= link_to(
  34 + content_tag('span', '', :class => 'community-block-button icon-remove'),
  35 + profile.leave_url, :class => 'join-community') %>
  36 + <% else %>
  37 + <%= link_to(
  38 + content_tag('span', '', :class => 'community-block-button icon-add'),
  39 + profile.join_url, :class => 'join-community') %>
  40 + <% end %>
  41 + <% else %>
  42 + <%= link_to(
  43 + content_tag('span', '', :class => 'community-block-button icon-add'),
  44 + profile.join_not_logged_url) %>
  45 + <% end %>
  46 +
  47 + <h1><%=profile.name%></h1>
  48 + </div>
  49 + <div class="community-block-description"><%= profile.description %></div>
  50 + </div>
  51 + <div style="clear:both"></div>
  52 +</div>
... ...
plugins/community_block/views/community_block.html.erb
... ... @@ -1,52 +0,0 @@
1   -<div class="community-block">
2   - <div class="community-block-logo">
3   - <%= link_to profile_image(profile, :big), profile.url %>
4   - </div>
5   - <div class="community-block-info">
6   - <div class="community-block-title">
7   -
8   - <%
9   - links = []
10   -
11   - if logged_in?
12   -
13   - if profile.enable_contact?
14   - links.push(c_('Send an e-mail') => {:href => url_for({:controller => 'contact', :action => 'new', :profile => profile.identifier})})
15   - end
16   -
17   - links.push(c_('Report abuse') => {:href => url_for({:controller => 'profile', :action => 'report_abuse', :profile => profile.identifier})})
18   -
19   - if !user.nil? && user.has_permission?('edit_profile', profile)
20   - links.push(c_('Control panel') => {:href => url_for({:controller => 'profile_editor', :profile => profile.identifier})})
21   - end %>
22   -
23   - <%= link_to(
24   - content_tag('span','',:class => 'community-block-button icon-arrow'),
25   - '#',
26   - :onclick => "toggleSubmenu(this,'',#{CGI::escapeHTML(links.to_json)}); return false;",
27   - :class => 'simplemenu-trigger') %>
28   -
29   - <% end %>
30   -
31   - <% if logged_in? %>
32   - <% if profile.members.include?(user) || profile.already_request_membership?(user) %>
33   - <%= link_to(
34   - content_tag('span', '', :class => 'community-block-button icon-remove'),
35   - profile.leave_url, :class => 'join-community') %>
36   - <% else %>
37   - <%= link_to(
38   - content_tag('span', '', :class => 'community-block-button icon-add'),
39   - profile.join_url, :class => 'join-community') %>
40   - <% end %>
41   - <% else %>
42   - <%= link_to(
43   - content_tag('span', '', :class => 'community-block-button icon-add'),
44   - profile.join_not_logged_url) %>
45   - <% end %>
46   -
47   - <h1><%=profile.name%></h1>
48   - </div>
49   - <div class="community-block-description"><%= profile.description %></div>
50   - </div>
51   - <div style="clear:both"></div>
52   -</div>