diff --git a/app/models/environment.rb b/app/models/environment.rb
index aa7973f..ae0c048 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -193,7 +193,7 @@ 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 ], :with => 'white_list'
+ xss_terminate :only => [ :description, :message_for_disabled_enterprise ], :with => 'white_list'
# #################################################
# Business logic in general
diff --git a/app/views/admin_panel/index.rhtml b/app/views/admin_panel/index.rhtml
index f5ccc30..974ad9b 100644
--- a/app/views/admin_panel/index.rhtml
+++ b/app/views/admin_panel/index.rhtml
@@ -4,6 +4,7 @@
- <%= link_to _('Edit site info'), :action => 'site_info' %>
+ - <%= link_to _('Edit message for disabled enterprises'), :action => 'message_for_disabled_enterprise' %>
- <%= link_to _('Enable/disable features'), :controller => 'features' %>
- <%= link_to _('Edit the Visual Design'), :controller => 'environment_design'%>
- <%= link_to _('Manage Categories'), :controller => 'categories'%>
diff --git a/app/views/admin_panel/message_for_disabled_enterprise.rhtml b/app/views/admin_panel/message_for_disabled_enterprise.rhtml
new file mode 100644
index 0000000..03fdc96
--- /dev/null
+++ b/app/views/admin_panel/message_for_disabled_enterprise.rhtml
@@ -0,0 +1,14 @@
+<%= _('Site info') %>
+
+<%= render :file => 'shared/tiny_mce' %>
+
+<% labelled_form_for :environment, @environment, :url => {:action => 'site_info'} do |f| %>
+
+ <%= f.text_area :message_for_disabled_enterprise, :cols => 40, :style => 'width: 90%' %>
+
+ <% button_bar do %>
+ <%= submit_button(:save, _('Save')) %>
+ <%= button(:cancel, _('Cancel'), :action => 'index') %>
+ <% end %>
+
+<% end %>
diff --git a/test/functional/admin_panel_controller_test.rb b/test/functional/admin_panel_controller_test.rb
index f459e58..fa76400 100644
--- a/test/functional/admin_panel_controller_test.rb
+++ b/test/functional/admin_panel_controller_test.rb
@@ -51,6 +51,11 @@ class AdminPanelControllerTest < Test::Unit::TestCase
get :index
assert_tag :tag => 'a', :attributes => { :href => '/admin/region_validators' }
end
+
+ should 'link to edit message for disabled enterprise' do
+ get :index
+ assert_tag :tag => 'a', :attributes => { :href => '/admin/admin_panel/message_for_disabled_enterprise' }
+ end
should 'display form for editing site info' do
get :site_info
@@ -58,18 +63,36 @@ class AdminPanelControllerTest < Test::Unit::TestCase
assert_tag :tag => 'textarea', :attributes => { :name => 'environment[description]'}
end
- should 'save site description' do
+ should 'display form for editing message for disabled enterprise' do
+ get :message_for_disabled_enterprise
+ assert_template 'message_for_disabled_enterprise'
+ assert_tag :tag => 'textarea', :attributes => { :name => 'environment[message_for_disabled_enterprise]'}
+ end
+ should 'save site description' do
post :site_info, :environment => { :description => "This is my new environment" }
assert_redirected_to :action => 'index'
assert_equal "This is my new environment", Environment.default.description
end
+ should 'save message for disabled enterprise' do
+ post :site_info, :environment => { :message_for_disabled_enterprise => "This enterprise is disabled" }
+ assert_redirected_to :action => 'index'
+
+ assert_equal "This enterprise is disabled", Environment.default.message_for_disabled_enterprise
+ end
+
should 'sanitize description with white_list' do
- post :site_info, :environment => { :description => "This is alert('alow')my new environment" }
+ post :site_info, :environment => { :description => "This is my new environment" }
+ assert_redirected_to :action => 'index'
+ assert_equal "This is my new environment", Environment.default.description
+ end
+
+ should 'sanitize message for disabled enterprise with white_list' do
+ post :site_info, :environment => { :message_for_disabled_enterprise => "This is my new environment" }
assert_redirected_to :action => 'index'
- assert_equal "This is alert('alow')my new environment", Environment.default.description
+ assert_equal "This is my new environment", Environment.default.message_for_disabled_enterprise
end
end
--
libgit2 0.21.2