diff --git a/app/controllers/admin/categories_controller.rb b/app/controllers/admin/categories_controller.rb
index 9c5cac0..169860a 100644
--- a/app/controllers/admin/categories_controller.rb
+++ b/app/controllers/admin/categories_controller.rb
@@ -5,7 +5,9 @@ class CategoriesController < AdminController
helper :categories
def index
- @categories = environment.top_level_categories
+ # WORKAROUND: restricting the category trees to display. Region and
+ # ProductCategory have VERY LARGE trees.
+ @categories = environment.categories.find(:all, :conditions => "parent_id is null AND type is null")
end
ALLOWED_TYPES = CategoriesHelper::TYPES.map {|item| item[1] }
diff --git a/app/models/environment.rb b/app/models/environment.rb
index 73d22b1..2d5d6d4 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -40,6 +40,9 @@ class Environment < ActiveRecord::Base
'disable_contact_person' => _('Disable contact for people'),
'disable_contact_community' => _('Disable contact for groups/communities'),
'disable_join_community_popup' => _('Disable the popup that ask to join a group/community'),
+
+ 'enterprise_activation' => _('Enable activation of enterprises'),
+ 'warn_obsolete_browser' => _('Enable warning of obsolete browser'),
}
end
diff --git a/app/views/home/index.rhtml b/app/views/home/index.rhtml
index c764d74..ce18f30 100644
--- a/app/views/home/index.rhtml
+++ b/app/views/home/index.rhtml
@@ -1,4 +1,16 @@
-<%= @environment.description %>
+<%= environment.description %>
+
+<% if environment.enabled?('enterprise_activation') %>
+
+
+ <% form_tag({:controller => 'account', :action => 'activation_question'}, {:method => 'get'}) do %>
+
<%= __('Activate your enterprise') %>
+ <%= labelled_form_field(__('Enterprise activation code') + ':', text_field_tag('enterprise_code')) %>
+ <%= submit_button(:ok, _('Ativar')) %>
+ <% end %>
+
+
+<% end %>
<% form_tag :controller => 'search', :action => 'index' do %>
diff --git a/app/views/layouts/application.rhtml b/app/views/layouts/application.rhtml
index 101a291..d49d8ea 100644
--- a/app/views/layouts/application.rhtml
+++ b/app/views/layouts/application.rhtml
@@ -183,15 +183,19 @@
<%= javascript_include_tag 'show-mouse-help' %>
<%= javascript_include_tag 'noosfero-show-help' %>
-
+ <% if environment.enabled?('warn_obsolete_browser') %>
+
+
+
+ <% end %>
<%= javascript_include_tag 'better-browser-promotion' %>
<% if is_testing_theme %>
diff --git a/config/ferret_server.yml b/config/ferret_server.yml
deleted file mode 100644
index d00a370..0000000
--- a/config/ferret_server.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-production:
- host: localhost
- port: 9011
- pid_file: log/ferret.pid
-#development:
-# host: localhost
-# port: 9010
-# pid_file: log/ferret.pid
-#test:
-# host: localhost
-# port: 9009
-# pid_file: log/ferret.pid
-staging:
- host: localhost
- port: 9011
- pid_file: log/ferret.pid
diff --git a/config/ferret_server.yml.dist b/config/ferret_server.yml.dist
new file mode 100644
index 0000000..d00a370
--- /dev/null
+++ b/config/ferret_server.yml.dist
@@ -0,0 +1,16 @@
+production:
+ host: localhost
+ port: 9011
+ pid_file: log/ferret.pid
+#development:
+# host: localhost
+# port: 9010
+# pid_file: log/ferret.pid
+#test:
+# host: localhost
+# port: 9009
+# pid_file: log/ferret.pid
+staging:
+ host: localhost
+ port: 9011
+ pid_file: log/ferret.pid
diff --git a/lib/acts_as_searchable.rb b/lib/acts_as_searchable.rb
index f3cb3d4..dbf014b 100644
--- a/lib/acts_as_searchable.rb
+++ b/lib/acts_as_searchable.rb
@@ -12,7 +12,9 @@ class << ActiveRecord::Base
ferret_options[:limit] = :all
- ids = find_ids_with_ferret(query, ferret_options)[1].map{|r|r[:id].to_i}
+ # FIXME this is a HORRIBLE HACK
+ ids = find_ids_with_ferret(query, ferret_options)[1][0..8000].map{|r|r[:id].to_i}
+
if ids.empty?
ids << -1
end
diff --git a/lib/unifreire_terminology.rb b/lib/unifreire_terminology.rb
index 9c66582..0200f59 100644
--- a/lib/unifreire_terminology.rb
+++ b/lib/unifreire_terminology.rb
@@ -30,6 +30,9 @@ class UnifreireTerminology < Noosfero::Terminology::Custom
'Events' => N_('Schedule'),
'Manage enterprise fields' => N_('Manage institutions fields'),
"%s's enterprises" => N_("%s's institutions"),
+ 'Activate your enterprise' => N_('Activate your institution'),
+ 'Enterprise activation code' => N_('Institution activation code'),
+ 'Disable activation of enterprises' => N_('Disable activation of institutions'),
})
end
diff --git a/lib/zen3_terminology.rb b/lib/zen3_terminology.rb
index aa2a78f..f194686 100644
--- a/lib/zen3_terminology.rb
+++ b/lib/zen3_terminology.rb
@@ -60,6 +60,9 @@ class Zen3Terminology < Noosfero::Terminology::Custom
'Friends' => N_('Contacts'),
'Creating new community' => N_('Creating new group'),
'Do you want to join this community?' => N_('Do you want to join this group?'),
+ 'Activate your enterprise' => N_('Activate your organization'),
+ 'Enterprise activation code' => N_('Organization activation code'),
+ 'Disable activation of enterprises' => N_('Disable activation of organizations'),
})
end
diff --git a/public/stylesheets/blocks/main-block.css b/public/stylesheets/blocks/main-block.css
index b817f6c..ab01807 100644
--- a/public/stylesheets/blocks/main-block.css
+++ b/public/stylesheets/blocks/main-block.css
@@ -5,3 +5,20 @@
.main-block .article-body, .main-block h1 {
overflow: hidden;
}
+
+body div#activation_enterprise {
+ text-align: center;
+}
+
+div#activation_enterprise {
+ border: 2px solid #DA3;
+ padding-bottom: 10px;
+ margin-bottom: 15px;
+ background-color: #FD8;
+}
+
+div#activation_enterprise label,
+div#activation_enterprise input,
+div#activation_enterprise div {
+ display: inline
+}
diff --git a/test/functional/categories_controller_test.rb b/test/functional/categories_controller_test.rb
index 1122be7..8218656 100644
--- a/test/functional/categories_controller_test.rb
+++ b/test/functional/categories_controller_test.rb
@@ -174,4 +174,15 @@ class CategoriesControllerTest < Test::Unit::TestCase
assert_tag :tag => 'select', :attributes => { :name => "type" }
end
+
+ should 'not list regions and product categories' do
+ Environment.default.categories.destroy_all
+ c = Category.create!(:name => 'Regular category', :environment => Environment.default)
+ ProductCategory.create!(:name => 'Product category', :environment => Environment.default)
+ Region.create!(:name => 'Some region', :environment => Environment.default)
+
+ get :index
+ assert_equal [c], assigns(:categories)
+ end
+
end
diff --git a/test/functional/home_controller_test.rb b/test/functional/home_controller_test.rb
index eea00aa..c922a00 100644
--- a/test/functional/home_controller_test.rb
+++ b/test/functional/home_controller_test.rb
@@ -21,5 +21,23 @@ all_fixtures
def test_valid_xhtml
assert_valid_xhtml
end
-
+
+ should 'not display form for enterprise activation if disabled in environment' do
+ env = Environment.default
+ env.disable('enterprise_activation')
+ env.save!
+
+ get :index
+ assert_no_tag :tag => 'div', :attributes => { :id => 'activation_enterprise' }, :descendant => {:tag => 'form', :attributes => {:action => '/account/activation_question'}}
+ end
+
+ should 'display form for enterprise activation if enabled on environment' do
+ env = Environment.default
+ env.enable('enterprise_activation')
+ env.save!
+
+ get :index
+ assert_tag :tag => 'div', :attributes => { :id => 'activation_enterprise' }, :descendant => {:tag => 'form', :attributes => {:action => '/account/activation_question'}}
+ end
+
end
--
libgit2 0.21.2