Commit 5fa4fc17dbcfac17886bd4ffadf76019eb8c9d8d
1 parent
67e7b90d
Exists in
master
and in
5 other branches
Change public software form
- Only environment admin can change a generic software to a public software - Show Adherent fields only to public software Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com> Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Showing
4 changed files
with
76 additions
and
50 deletions
Show diff stats
controllers/mpog_software_plugin_myprofile_controller.rb
| ... | ... | @@ -79,7 +79,11 @@ class MpogSoftwarePluginMyprofileController < MyProfileController |
| 79 | 79 | @list_operating_systems = @software_info.operating_systems |
| 80 | 80 | @software_categories = @software_info.software_categories |
| 81 | 81 | @software_categories = SoftwareCategories.new if @software_categories.blank? |
| 82 | + | |
| 83 | + @show_public_software_field = show_public_software_field | |
| 84 | + | |
| 82 | 85 | if request.post? |
| 86 | + params[:software][:public_software] ||= false | |
| 83 | 87 | @software_info = @profile.software_info |
| 84 | 88 | @license = LicenseInfo.find(params[:license][:license_infos_id]) |
| 85 | 89 | @software_info.license_info = @license |
| ... | ... | @@ -132,4 +136,8 @@ class MpogSoftwarePluginMyprofileController < MyProfileController |
| 132 | 136 | end |
| 133 | 137 | end |
| 134 | 138 | |
| 139 | + def show_public_software_field | |
| 140 | + environment.admins.include?(current_user.person) | |
| 141 | + end | |
| 142 | + | |
| 135 | 143 | end | ... | ... |
db/migrate/20141103180655_add_public_software_field_validation.rb
0 → 100644
lib/software_info.rb
| 1 | 1 | class SoftwareInfo < ActiveRecord::Base |
| 2 | - attr_accessible :e_mag, :icp_brasil, :intern, :e_ping, :e_arq, :operating_platform, :demonstration_url, :acronym, :objectives, :features, :license_infos_id, :community_id, :finality, :repository_link | |
| 2 | + attr_accessible :e_mag, :icp_brasil, :intern, :e_ping, :e_arq, :operating_platform, :demonstration_url, :acronym, :objectives, :features, :license_infos_id, :community_id, :finality, :repository_link, :public_software | |
| 3 | 3 | |
| 4 | 4 | has_many :libraries, :dependent => :destroy |
| 5 | 5 | has_many :software_databases | ... | ... |
views/mpog_software_plugin_myprofile/_public_software_info.html.erb
| 1 | 1 | <h1><%= _('Edit software') %></h1> |
| 2 | 2 | |
| 3 | 3 | <div class="formfieldline"> |
| 4 | - <%= label_tag _("Adherent to e-PING ?") %> | |
| 5 | - | |
| 6 | - <%= label_tag "e_ping_true", "Yes" %> | |
| 7 | - <%= radio_button_tag("software[e_ping]", true, @software_info.e_ping)%> | |
| 8 | - <%= label_tag "e_ping_false", "No"%> | |
| 9 | - <%= radio_button_tag("software[e_ping]", false, !@software_info.e_ping)%> | |
| 10 | -</div> | |
| 11 | - | |
| 12 | -<div class="formfieldline"> | |
| 13 | - <%= label_tag _("Adherent to e-MAG ?") %> | |
| 14 | - | |
| 15 | - <%= label_tag "e_mag_true", "Yes"%> | |
| 16 | - <%= radio_button_tag("software[e_mag]", true, @software_info.e_mag)%> | |
| 17 | - <%= label_tag "e_mag_false", "No"%> | |
| 18 | - <%= radio_button_tag("software[e_mag]", false, !@software_info.e_mag)%> | |
| 19 | -</div> | |
| 20 | - | |
| 21 | -<div class="formfieldline"> | |
| 22 | - <%= label_tag _("Adherent to ICP-Brasil ?") %> | |
| 23 | - | |
| 24 | - <%= label_tag "icp_brasil_true", "Yes"%> | |
| 25 | - <%= radio_button_tag("software[icp_brasil]", true, @software_info.icp_brasil)%> | |
| 26 | - <%= label_tag "icp_brasil_false", "No"%> | |
| 27 | - <%= radio_button_tag("software[icp_brasil]", false, !@software_info.icp_brasil)%> | |
| 28 | -</div> | |
| 29 | - | |
| 30 | -<div class="formfieldline"> | |
| 31 | - <%= label_tag _("Adherent to e-ARQ ?") %> | |
| 32 | - | |
| 33 | - <%= label_tag "e_arq_true", "Yes"%> | |
| 34 | - <%= radio_button_tag("software[e_arq]", true, @software_info.e_arq)%> | |
| 35 | - <%= label_tag "e_arq_false", "No"%> | |
| 36 | - <%= radio_button_tag("software[e_arq]", false, !@software_info.e_arq)%> | |
| 37 | -</div> | |
| 38 | - | |
| 39 | -<div class="formfieldline"> | |
| 40 | - <%= label_tag _("Internacionalizable ?") %> | |
| 41 | - | |
| 42 | - <%= label_tag "intern_true", "Yes" %> | |
| 43 | - <%= radio_button_tag("software[intern]", true, @software_info.intern)%> | |
| 44 | - <%= label_tag "intern_false", "No"%> | |
| 45 | - <%= radio_button_tag("software[intern]", false, !@software_info.intern)%> | |
| 46 | -</div> | |
| 47 | - | |
| 48 | -<div class="formfieldline"> | |
| 49 | - <%= label_tag "operating_platform", _("Operating Platform: ") %> <br /> | |
| 4 | + <h4> <%= _("Operating Platform") %> </h4> | |
| 50 | 5 | <%= text_area_tag "software[operating_platform]", @software_info.operating_platform, :cols => 40, :rows => 5%> |
| 51 | 6 | </div> |
| 52 | 7 | |
| 53 | 8 | <div class="formfieldline"> |
| 54 | - <%= label_tag "features", _("Features: ")%><br /> | |
| 9 | + <h4> <%= _("Features") %> </h4> | |
| 55 | 10 | <%= text_area_tag "software[features]", @software_info.features, :maxlength=>"4000", :cols => 40, :rows => 5%> |
| 56 | 11 | </div> |
| 57 | 12 | |
| ... | ... | @@ -84,6 +39,60 @@ |
| 84 | 39 | </div> |
| 85 | 40 | |
| 86 | 41 | <div id = "demonstration_url"> |
| 87 | - <%= label_tag(:demonstration_url ,_("Demonstration url:"), :class=>"formlabel") %> | |
| 88 | - <%= text_field_tag("software[demonstration_url]", @software_info.demonstration_url) %> | |
| 42 | + <h4> <%= _("Demonstration url") %> </h4> | |
| 43 | + <%= text_field_tag("software[demonstration_url]", @software_info.demonstration_url) %> | |
| 44 | +</div> | |
| 45 | + | |
| 46 | +<div id = "public_software"> | |
| 47 | + <% if @show_public_software_field %> | |
| 48 | + <%= check_box_tag("software[public_software]", "true", @software_info.public_software?) %> | |
| 49 | + <%= label_tag _("Public Software"), _("Is a public software") %> | |
| 50 | + <% end %> | |
| 51 | + <% if @software_info.public_software? %> | |
| 52 | + <h4> <%= _("Public Software") %> </h4> | |
| 53 | + <div class="formfieldline"> | |
| 54 | + <%= label_tag _("Adherent to e-PING ?") %> | |
| 55 | + | |
| 56 | + <%= label_tag "e_ping_true", "Yes" %> | |
| 57 | + <%= radio_button_tag("software[e_ping]", true, @software_info.e_ping)%> | |
| 58 | + <%= label_tag "e_ping_false", "No"%> | |
| 59 | + <%= radio_button_tag("software[e_ping]", false, !@software_info.e_ping)%> | |
| 60 | + </div> | |
| 61 | + | |
| 62 | + <div class="formfieldline"> | |
| 63 | + <%= label_tag _("Adherent to e-MAG ?") %> | |
| 64 | + | |
| 65 | + <%= label_tag "e_mag_true", "Yes"%> | |
| 66 | + <%= radio_button_tag("software[e_mag]", true, @software_info.e_mag)%> | |
| 67 | + <%= label_tag "e_mag_false", "No"%> | |
| 68 | + <%= radio_button_tag("software[e_mag]", false, !@software_info.e_mag)%> | |
| 69 | + </div> | |
| 70 | + | |
| 71 | + <div class="formfieldline"> | |
| 72 | + <%= label_tag _("Adherent to ICP-Brasil ?") %> | |
| 73 | + | |
| 74 | + <%= label_tag "icp_brasil_true", "Yes"%> | |
| 75 | + <%= radio_button_tag("software[icp_brasil]", true, @software_info.icp_brasil)%> | |
| 76 | + <%= label_tag "icp_brasil_false", "No"%> | |
| 77 | + <%= radio_button_tag("software[icp_brasil]", false, !@software_info.icp_brasil)%> | |
| 78 | + </div> | |
| 79 | + | |
| 80 | + <div class="formfieldline"> | |
| 81 | + <%= label_tag _("Adherent to e-ARQ ?") %> | |
| 82 | + | |
| 83 | + <%= label_tag "e_arq_true", "Yes"%> | |
| 84 | + <%= radio_button_tag("software[e_arq]", true, @software_info.e_arq)%> | |
| 85 | + <%= label_tag "e_arq_false", "No"%> | |
| 86 | + <%= radio_button_tag("software[e_arq]", false, !@software_info.e_arq)%> | |
| 87 | + </div> | |
| 88 | + | |
| 89 | + <div class="formfieldline"> | |
| 90 | + <%= label_tag _("Internacionalizable ?") %> | |
| 91 | + | |
| 92 | + <%= label_tag "intern_true", "Yes" %> | |
| 93 | + <%= radio_button_tag("software[intern]", true, @software_info.intern)%> | |
| 94 | + <%= label_tag "intern_false", "No"%> | |
| 95 | + <%= radio_button_tag("software[intern]", false, !@software_info.intern)%> | |
| 96 | + </div> | |
| 97 | +<% end %> | |
| 89 | 98 | </div> | ... | ... |