Skip to content

Commit 87d5428

Browse files
authored
Fix partner disabling for distributions from requests (#5061)
1 parent 6937172 commit 87d5428

2 files changed

Lines changed: 11 additions & 5 deletions

File tree

app/views/distributions/_form.html.erb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,15 @@
1111
<%= f.association :partner,
1212
collection: @partner_list,
1313
label: "Partner",
14-
readonly: !!@request,
14+
disabled: !!@request,
1515
error: "Which partner is this distribution going to?" %>
1616

17+
<%# If the distribution is from a request, the partner has been set already. %>
18+
<%# We send it via hidden_field because params aren't sent for disabled fields. %>
19+
<% if @request %>
20+
<%= f.hidden_field :partner_id, value: distribution.partner_id %>
21+
<% end %>
22+
1723
<div class='w-72'>
1824
<%= f.input :issued_at, as: :datetime, ampm: true, minute_step: 15, label: "Distribution date and time", html5: true, :input_html => { :value => date_place_holder&.strftime("%Y-%m-%dT%0k:%M")} %>
1925
</div>

spec/requests/distributions_requests_spec.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@
326326
get new_distribution_path(default_params)
327327
page = Nokogiri::HTML(response.body)
328328

329-
expect(page.at_css("select#distribution_partner_id").classes).to include("readonly")
329+
expect(page.at_css("select#distribution_partner_id").classes).to include("disabled")
330330
end
331331

332332
context "with org default but no partner default" do
@@ -404,7 +404,7 @@
404404
get new_distribution_path({})
405405
page = Nokogiri::HTML(response.body)
406406

407-
expect(page.at_css("select#distribution_partner_id").classes).not_to include("readonly")
407+
expect(page.at_css("select#distribution_partner_id").classes).not_to include("disabled")
408408
end
409409
end
410410
end
@@ -680,7 +680,7 @@
680680
get edit_distribution_path(id: distribution.id)
681681
page = Nokogiri::HTML(response.body)
682682

683-
expect(page.at_css("select#distribution_partner_id").classes).not_to include("readonly")
683+
expect(page.at_css("select#distribution_partner_id").classes).not_to include("disabled")
684684
end
685685

686686
context 'with units' do
@@ -740,7 +740,7 @@
740740
get edit_distribution_path(id: distribution.id)
741741
page = Nokogiri::HTML(response.body)
742742

743-
expect(page.at_css("select#distribution_partner_id").classes).to include("readonly")
743+
expect(page.at_css("select#distribution_partner_id").classes).to include("disabled")
744744
end
745745

746746
context 'with no request' do

0 commit comments

Comments
 (0)