diff --git a/app/models/environment.rb b/app/models/environment.rb
index f543ef5..eeec9e0 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -43,6 +43,7 @@ class Environment < ActiveRecord::Base
'enterprise_activation' => _('Enable activation of enterprises'),
'warn_obsolete_browser' => _('Enable warning of obsolete browser'),
+ 'wysiwyg_editor_for_environment_home' => _('Use WYSIWYG editor to edit environment home page'),
}
end
@@ -385,7 +386,8 @@ class Environment < ActiveRecord::Base
validates_format_of :contact_email, :with => Noosfero::Constants::EMAIL_FORMAT, :if => (lambda { |record| ! record.contact_email.blank? })
- xss_terminate :only => [ :description, :message_for_disabled_enterprise ], :with => 'white_list'
+ xss_terminate :only => [ :message_for_disabled_enterprise ], :with => 'white_list'
+
# #################################################
# Business logic in general
diff --git a/app/views/admin_panel/site_info.rhtml b/app/views/admin_panel/site_info.rhtml
index 45da910..bae348a 100644
--- a/app/views/admin_panel/site_info.rhtml
+++ b/app/views/admin_panel/site_info.rhtml
@@ -1,10 +1,12 @@
<%= _('Site info') %>
-<%= render :file => 'shared/tiny_mce' %>
+<% if @environment.enabled?('wysiwyg_editor_for_environment_home') %>
+ <%= render :file => 'shared/tiny_mce' %>
+<% end %>
<% labelled_form_for :environment, @environment do |f| %>
- <%= f.text_area :description, :cols => 40, :style => 'width: 90%' %>
+ <%= labelled_form_field _('Homepage content'), text_area(:environment, :description, :cols => 40, :style => 'width: 90%') %>
<% button_bar do %>
<%= submit_button(:save, _('Save')) %>
diff --git a/test/functional/admin_panel_controller_test.rb b/test/functional/admin_panel_controller_test.rb
index 640443c..957d151 100644
--- a/test/functional/admin_panel_controller_test.rb
+++ b/test/functional/admin_panel_controller_test.rb
@@ -140,4 +140,17 @@ class AdminPanelControllerTest < Test::Unit::TestCase
assert_equal profile_template, e.enterprise_template
end
+
+ should 'not use WYSWYIG if disabled' do
+ e = Environment.default; e.disable('wysiwyg_editor_for_environment_home'); e.save!
+ get :site_info
+ assert_no_tag :tag => "script", :content => /tinyMCE\.init/
+ end
+
+ should 'use WYSWYIG if enabled' do
+ e = Environment.default; e.enable('wysiwyg_editor_for_environment_home'); e.save!
+ get :site_info
+ assert_tag :tag => "script", :content => /tinyMCE\.init/
+ end
+
end
--
libgit2 0.21.2