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,7 +79,11 @@ class MpogSoftwarePluginMyprofileController < MyProfileController | ||
79 | @list_operating_systems = @software_info.operating_systems | 79 | @list_operating_systems = @software_info.operating_systems |
80 | @software_categories = @software_info.software_categories | 80 | @software_categories = @software_info.software_categories |
81 | @software_categories = SoftwareCategories.new if @software_categories.blank? | 81 | @software_categories = SoftwareCategories.new if @software_categories.blank? |
82 | + | ||
83 | + @show_public_software_field = show_public_software_field | ||
84 | + | ||
82 | if request.post? | 85 | if request.post? |
86 | + params[:software][:public_software] ||= false | ||
83 | @software_info = @profile.software_info | 87 | @software_info = @profile.software_info |
84 | @license = LicenseInfo.find(params[:license][:license_infos_id]) | 88 | @license = LicenseInfo.find(params[:license][:license_infos_id]) |
85 | @software_info.license_info = @license | 89 | @software_info.license_info = @license |
@@ -132,4 +136,8 @@ class MpogSoftwarePluginMyprofileController < MyProfileController | @@ -132,4 +136,8 @@ class MpogSoftwarePluginMyprofileController < MyProfileController | ||
132 | end | 136 | end |
133 | end | 137 | end |
134 | 138 | ||
139 | + def show_public_software_field | ||
140 | + environment.admins.include?(current_user.person) | ||
141 | + end | ||
142 | + | ||
135 | end | 143 | end |
db/migrate/20141103180655_add_public_software_field_validation.rb
0 → 100644
lib/software_info.rb
1 | class SoftwareInfo < ActiveRecord::Base | 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 | has_many :libraries, :dependent => :destroy | 4 | has_many :libraries, :dependent => :destroy |
5 | has_many :software_databases | 5 | has_many :software_databases |
views/mpog_software_plugin_myprofile/_public_software_info.html.erb
1 | <h1><%= _('Edit software') %></h1> | 1 | <h1><%= _('Edit software') %></h1> |
2 | 2 | ||
3 | <div class="formfieldline"> | 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 | <%= text_area_tag "software[operating_platform]", @software_info.operating_platform, :cols => 40, :rows => 5%> | 5 | <%= text_area_tag "software[operating_platform]", @software_info.operating_platform, :cols => 40, :rows => 5%> |
51 | </div> | 6 | </div> |
52 | 7 | ||
53 | <div class="formfieldline"> | 8 | <div class="formfieldline"> |
54 | - <%= label_tag "features", _("Features: ")%><br /> | 9 | + <h4> <%= _("Features") %> </h4> |
55 | <%= text_area_tag "software[features]", @software_info.features, :maxlength=>"4000", :cols => 40, :rows => 5%> | 10 | <%= text_area_tag "software[features]", @software_info.features, :maxlength=>"4000", :cols => 40, :rows => 5%> |
56 | </div> | 11 | </div> |
57 | 12 | ||
@@ -84,6 +39,60 @@ | @@ -84,6 +39,60 @@ | ||
84 | </div> | 39 | </div> |
85 | 40 | ||
86 | <div id = "demonstration_url"> | 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 | </div> | 98 | </div> |