Commit 158cc1d2d0f289008059a48be3d18cf91df9a4d8

Authored by David Silva
1 parent bb9d1583

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
... ...