Commit 158cc1d2d0f289008059a48be3d18cf91df9a4d8

Authored by David Silva
1 parent bb9d1583
Exists in master and in 79 other branches add_sisp_to_chef, add_super_archives_plugin, api_for_colab, automates_core_packing, backup_not_prod, changes_in_buttons_on_content_panel, colab_automated_login, colab_spb_plugin_recipe, colab_widgets_settings, design_validation, dev_env_minimal, disable_email_dev, fix_breadcrumbs_position, fix_categories_software_link, fix_edit_institution, fix_edit_software_with_another_license, fix_get_license_info, fix_gitlab_assets_permission, fix_list_style_inside_article, fix_list_style_on_folder_elements, fix_members_pagination, fix_merge_request_url, fix_models_translations, fix_no_license, fix_software_api, fix_software_block_migration, fix_software_communities_translations, fix_software_communities_unit_test, fix_style_create_institution_admin_panel, fix_superarchives_imports, fix_sym_links_noosfero, focus_search_field_theme, gov-user-refactoring, gov-user-refactoring-rails4, header_fix, institution_modal_on_rating, kalibro-conf-refactoring, kalibro-processor-package, lxc_settings, margin_fix, mezuro_cookbook, prezento, refactor_download_block, refactor_software_communities, refactor_software_for_sisp, register_page, release-process, release-process-v2, remove-unused-images, remove_broken_theme, remove_secondary_email_from_user, remove_sisp_buttons, removing_super_archives_email, review_message, scope2method, signals_user_noosfero, sisp_catalog_header, sisp_colab_config, sisp_dev, sisp_dev_master, sisp_simple_version, software_as_organization, software_catalog_style_fix, software_communities_html_refactor, software_infos_api, spb_minimal_env, spb_to_rails4, spec_refactor, stable-4.1, stable-4.2, stable-4.x, temp_soft_comm_refactoring, theme_header, theme_javascript_refactory, thread_dropdown, thread_page, update_search_by_categories, update_software_api, update_softwares_boxes

Refactors edit_institution method in mpog_software_plugin_myprofile_controller.

Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
controllers/mpog_software_plugin_myprofile_controller.rb
... ... @@ -6,37 +6,15 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
6 6  
7 7 def edit_institution
8 8 @show_sisp_field = environment.admins.include?(current_user.person)
9   - @estate_list = NationalRegion.find(:all, :conditions =>
10   - {:national_region_type_id => 2},
11   - :order=>"name")
  9 + @estate_list = NationalRegion.find(:all, :conditions =>
  10 + { :national_region_type_id => 2 },
  11 + :order=>'name')
12 12  
13 13 @institution = @profile.institution
14   -
15   - if request.post?
16   - @institution.community.update_attributes(params[:community])
17   - @institution.update_attributes(params[:institutions].except(:governmental_power, :governmental_sphere, :juridical_nature))
18   -
19   - if @institution.type == "PublicInstitution"
20   - begin
21   - govPower = GovernmentalPower.find params[:institutions][:governmental_power]
22   - govSphere = GovernmentalSphere.find params[:institutions][:governmental_sphere]
23   - jur_nature = JuridicalNature.find params[:institutions][:juridical_nature]
24   -
25   - @institution.juridical_nature = jur_nature
26   - @institution.governmental_power = govPower
27   - @institution.governmental_sphere = govSphere
28   - @institution.save
29   - rescue
30   - @institution.errors.add(:governmental_fields, _("Could not find Governmental Power or Governmental Sphere"))
31   - end
32   - end
33   -
34   - flash[:errors] = @institution.errors.full_messages unless @institution.valid?
35   - end
  14 + update_institution if request.post?
36 15 end
37 16  
38 17 def new_software
39   - @errors = []
40 18  
41 19 software_template = Community["software"]
42 20 if (!software_template.blank? && software_template.is_template)
... ... @@ -72,6 +50,7 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
72 50 end
73 51 else
74 52  
  53 + @errors = []
75 54 @errors |= @community.errors.full_messages
76 55 @errors |= @software_info.errors.full_messages
77 56 @errors |= @license_info.errors.full_messages
... ... @@ -155,5 +134,30 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
155 134  
156 135 def community_must_be_approved
157 136 end
  137 + private
  138 +
  139 + def update_institution
  140 + @institution.community.update_attributes(params[:community])
  141 + @institution.update_attributes(params[:institutions].except(:governmental_power, :governmental_sphere, :juridical_nature))
  142 + if @institution.type == "PublicInstitution"
  143 + begin
  144 + governmental_updates
  145 + rescue
  146 + @institution.errors.add(:governmental_fields, _("Could not find Governmental Power or Governmental Sphere"))
  147 + end
  148 + end
  149 + flash[:errors] = @institution.errors.full_messages unless @institution.valid?
  150 + end
  151 +
  152 + def governmental_updates
  153 + govPower = GovernmentalPower.find params[:institutions][:governmental_power]
  154 + govSphere = GovernmentalSphere.find params[:institutions][:governmental_sphere]
  155 + jur_nature = JuridicalNature.find params[:institutions][:juridical_nature]
  156 +
  157 + @institution.juridical_nature = jur_nature
  158 + @institution.governmental_power = govPower
  159 + @institution.governmental_sphere = govSphere
  160 + @institution.save
  161 + end
158 162  
159 163 end
... ...