Commit f81b2eafb36b724aa17a3454da91e4803f694d04
Committed by
Arthur Esposte
1 parent
916c5b7d
Exists in
master
and in
5 other branches
Add categories software block for home page
Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com> Signed-off-by: Gabriela Navarro <navarro1703@gmail.com> Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Showing
6 changed files
with
92 additions
and
1 deletions
Show diff stats
README.md
@@ -32,6 +32,13 @@ Schedule Institutions Update | @@ -32,6 +32,13 @@ Schedule Institutions Update | ||
32 | ./plugins/mpog_software/script/schedule_institution_update.sh | 32 | ./plugins/mpog_software/script/schedule_institution_update.sh |
33 | 33 | ||
34 | 34 | ||
35 | +Create Categories | ||
36 | +------------------- | ||
37 | + | ||
38 | +To create the categories that a software can have run | ||
39 | + | ||
40 | +rake software:create_categories | ||
41 | + | ||
35 | Running MPOG Software tests | 42 | Running MPOG Software tests |
36 | -------------------- | 43 | -------------------- |
37 | $ ruby plugins/mpog_software/test/unit/name_of_file.rb | 44 | $ ruby plugins/mpog_software/test/unit/name_of_file.rb |
@@ -0,0 +1,29 @@ | @@ -0,0 +1,29 @@ | ||
1 | +class CategoriesSoftwareBlock < Block | ||
2 | + | ||
3 | + attr_accessible :show_name | ||
4 | + | ||
5 | + settings_items :show_name, :type => :boolean, :default => false | ||
6 | + | ||
7 | + def self.description | ||
8 | + _('Categories Softwares') | ||
9 | + end | ||
10 | + | ||
11 | + def help | ||
12 | + _('This block displays the categories and the amount of softwares for each categorie.') | ||
13 | + end | ||
14 | + | ||
15 | + def content(args={}) | ||
16 | + block = self | ||
17 | + s = show_name | ||
18 | + lambda do |object| | ||
19 | + render( | ||
20 | + :file => 'blocks/categories_software', | ||
21 | + :locals => { :block => block, :show_name => s } | ||
22 | + ) | ||
23 | + end | ||
24 | + end | ||
25 | + | ||
26 | + def cacheable? | ||
27 | + false | ||
28 | + end | ||
29 | +end |
lib/mpog_software_plugin.rb
@@ -126,7 +126,8 @@ class MpogSoftwarePlugin < Noosfero::Plugin | @@ -126,7 +126,8 @@ class MpogSoftwarePlugin < Noosfero::Plugin | ||
126 | InstitutionsBlock => {:type => [Environment, Person]}, | 126 | InstitutionsBlock => {:type => [Environment, Person]}, |
127 | DownloadBlock => {:type => [Community]}, | 127 | DownloadBlock => {:type => [Community]}, |
128 | RepositoryBlock => {:type => [Community]}, | 128 | RepositoryBlock => {:type => [Community]}, |
129 | - CategoriesAndTagsBlock => {:type => [Community]} | 129 | + CategoriesAndTagsBlock => {:type => [Community]}, |
130 | + CategoriesSoftwareBlock => {:type => [Environment]} | ||
130 | } | 131 | } |
131 | end | 132 | end |
132 | 133 |
@@ -0,0 +1,19 @@ | @@ -0,0 +1,19 @@ | ||
1 | +require File.dirname(__FILE__) + '/../../../../test/test_helper' | ||
2 | +require File.dirname(__FILE__) + '/../helpers/plugin_test_helper' | ||
3 | + | ||
4 | +class CategoriesSoftwareBlockTest < ActiveSupport::TestCase | ||
5 | + include PluginTestHelper | ||
6 | + should 'inherit from Block' do | ||
7 | + assert_kind_of Block, CategoriesSoftwareBlock.new | ||
8 | + end | ||
9 | + | ||
10 | + should 'declare its default title' do | ||
11 | + CategoriesSoftwareBlock.any_instance.stubs(:profile_count).returns(0) | ||
12 | + assert_equal Block.new.default_title, CategoriesSoftwareBlock.new.default_title | ||
13 | + end | ||
14 | + | ||
15 | + should 'describe itself' do | ||
16 | + assert_not_equal Block.description, CategoriesSoftwareBlock.description | ||
17 | + end | ||
18 | + | ||
19 | +end |
@@ -0,0 +1,24 @@ | @@ -0,0 +1,24 @@ | ||
1 | +<div id="mais-software-block"> | ||
2 | + <div id="sbp-information-softwares"> | ||
3 | + | ||
4 | + <h2>Veja mais Software</h2> | ||
5 | + <ul> | ||
6 | + <li><a href="#">Mais baixados</a></li> | ||
7 | + <li><a href="#">Melhores notas</a></li> | ||
8 | + <li><a href="#">Atualizados recentemente</a></li> | ||
9 | + <li><a href="#">Novos no Portal</a></li> | ||
10 | + </ul> | ||
11 | + </div> | ||
12 | + | ||
13 | + <div id="list-categories"> | ||
14 | + <p><%= _("Categories:") %></p> | ||
15 | + <ul class="categories-mais-software"> | ||
16 | + | ||
17 | + <% Category.all.each do |category| %> | ||
18 | + <% if category.name != "Software" %> | ||
19 | + <li><%= link_to category.name + " (#{category.software_infos.count})", "#" %></li> | ||
20 | + <% end %> | ||
21 | + <% end %> | ||
22 | + </ul> | ||
23 | + </div> | ||
24 | +</div> | ||
0 | \ No newline at end of file | 25 | \ No newline at end of file |