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,37 +6,15 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
6 6
7 def edit_institution 7 def edit_institution
8 @show_sisp_field = environment.admins.include?(current_user.person) 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 @institution = @profile.institution 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 end 15 end
37 16
38 def new_software 17 def new_software
39 - @errors = []  
40 18
41 software_template = Community["software"] 19 software_template = Community["software"]
42 if (!software_template.blank? && software_template.is_template) 20 if (!software_template.blank? && software_template.is_template)
@@ -72,6 +50,7 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController @@ -72,6 +50,7 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
72 end 50 end
73 else 51 else
74 52
  53 + @errors = []
75 @errors |= @community.errors.full_messages 54 @errors |= @community.errors.full_messages
76 @errors |= @software_info.errors.full_messages 55 @errors |= @software_info.errors.full_messages
77 @errors |= @license_info.errors.full_messages 56 @errors |= @license_info.errors.full_messages
@@ -155,5 +134,30 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController @@ -155,5 +134,30 @@ class MpogSoftwarePluginMyprofileController &lt; MyProfileController
155 134
156 def community_must_be_approved 135 def community_must_be_approved
157 end 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 end 163 end