From 438ab96ef52421bb2950cd3c2f94d478517ab47c Mon Sep 17 00:00:00 2001 From: MoisesMachado Date: Wed, 16 Jan 2008 22:05:46 +0000 Subject: [PATCH] ActionItem17: added the form for editing the validation_info and an icon in the control panel to reach the validation area --- app/models/organization.rb | 4 ++++ app/views/enterprise_validation/edit_validation_info.rhtml | 11 +++++++++++ app/views/profile_editor/index.rhtml | 2 ++ public/images/icons-app/README | 1 + public/images/icons-app/gtk-yes.png | Bin 0 -> 2752 bytes public/images/icons-app/validation.png | 1 + test/functional/enterprise_validation_test.rb | 27 +++++++++++++++++++++++++++ 7 files changed, 46 insertions(+), 0 deletions(-) create mode 100644 app/views/enterprise_validation/edit_validation_info.rhtml create mode 100644 public/images/icons-app/gtk-yes.png create mode 120000 public/images/icons-app/validation.png diff --git a/app/models/organization.rb b/app/models/organization.rb index 0af3eee..5afd740 100644 --- a/app/models/organization.rb +++ b/app/models/organization.rb @@ -38,6 +38,10 @@ class Organization < Profile CreateEnterprise.processed_for(self, :code => code).first end + def is_validation_entity? + !self.validation_info.nil? + end + def info organization_info end diff --git a/app/views/enterprise_validation/edit_validation_info.rhtml b/app/views/enterprise_validation/edit_validation_info.rhtml new file mode 100644 index 0000000..b669a99 --- /dev/null +++ b/app/views/enterprise_validation/edit_validation_info.rhtml @@ -0,0 +1,11 @@ +<% _('Editing the validation info') %> + +<%= error_messages_for :info %> + +<% labelled_form_for :info, @info do |f| %> + <%= f.text_area(:validation_methodology, :cols => 50, :rows => 10) %> + <%= f.text_area(:restrictions, :cols => 50, :rows => 7) %> + <% button_bar do %> + <%= submit_button('save', _('Save'), :cancel => {:action => 'index'}) %> + <% end %> +<% end %> diff --git a/app/views/profile_editor/index.rhtml b/app/views/profile_editor/index.rhtml index 7469702..e7b88b9 100644 --- a/app/views/profile_editor/index.rhtml +++ b/app/views/profile_editor/index.rhtml @@ -21,6 +21,8 @@ <%= file_manager_button(_('Manage Products'), 'icons-app/products.png', :controller => 'manage_products') if profile.enterprise? %> + <%= file_manager_button(_('Enterprise Validation'), 'icons-app/validation.png', :controller => 'enterprise_validation') if profile.is_validation_entity? %> + <% end %> <% if @profile.person? %> diff --git a/public/images/icons-app/README b/public/images/icons-app/README index 178e567..81567ad 100644 --- a/public/images/icons-app/README +++ b/public/images/icons-app/README @@ -24,6 +24,7 @@ abiword_48.png dlg-neu gnome-other.png Nuovo user_icon.png dlg-neu temp-home.png Nuovo +gtk-yes.png dlg-neu Icons rasterization =================== diff --git a/public/images/icons-app/gtk-yes.png b/public/images/icons-app/gtk-yes.png new file mode 100644 index 0000000..2c0f42b Binary files /dev/null and b/public/images/icons-app/gtk-yes.png differ diff --git a/public/images/icons-app/validation.png b/public/images/icons-app/validation.png new file mode 120000 index 0000000..bb3ef9b --- /dev/null +++ b/public/images/icons-app/validation.png @@ -0,0 +1 @@ +gtk-yes.png \ No newline at end of file diff --git a/test/functional/enterprise_validation_test.rb b/test/functional/enterprise_validation_test.rb index 49095dd..f43b82b 100644 --- a/test/functional/enterprise_validation_test.rb +++ b/test/functional/enterprise_validation_test.rb @@ -92,4 +92,31 @@ class EnterpriseValidationControllerTest < Test::Unit::TestCase assert_same validation, assigns(:processed) end + should 'display a form for editing the validation info' do + info = ValidationInfo.new(:validation_methodology => 'none') + @org.expects(:validation_info).returns(info) + get :edit_validation_info, :profile => 'myorg' + assert_response :success + assert_equal info, assigns(:info) + end + + should 'save an alteration of the validation info' do + info = ValidationInfo.new(:validation_methodology => 'none') + @org.expects(:validation_info).returns(info) + post :edit_validation_info, :profile => 'myorg', :validation_info => {:validatin_methodology => 'new methodaology'} + + assert_response :redirect + assert_redirected_to :action => 'index' + assert_equal info, assigns(:info) + end + + should 'not save an empaty validation mthodology' do + info = ValidationInfo.new(:validation_methodology => 'none') + @org.expects(:validation_info).returns(info) + post :edit_validation_info, :profile => 'myorg', :info => {:validation_methodology => ''} + + assert_response :success + assert_equal info, assigns(:info) + end + end -- libgit2 0.21.2