From ab12d204d935d43ba1f4f056661c82ec212b4385 Mon Sep 17 00:00:00 2001 From: baarkerlounger Date: Tue, 29 Mar 2022 09:29:23 +0100 Subject: [PATCH] Use radio buttons rather than check box --- app/views/users/edit.html.erb | 10 +++++++--- app/views/users/new.html.erb | 10 +++++++--- spec/requests/users_controller_spec.rb | 6 +++--- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/app/views/users/edit.html.erb b/app/views/users/edit.html.erb index 06152533b..e0434b7ec 100644 --- a/app/views/users/edit.html.erb +++ b/app/views/users/edit.html.erb @@ -26,9 +26,13 @@ spellcheck: "false" %> - <%= f.govuk_check_boxes_fieldset :is_dpo, multiple: false, legend: { text: "Are #{@user == current_user ? "you" : "they"} a data protection officer?", size: "m" } do %> - <%= f.govuk_check_box :is_dpo, 1, 0, multiple: false, link_errors: true, label: { text: "Yes" } %> - <% end %> + <%= f.govuk_collection_radio_buttons :is_dpo, + [OpenStruct.new(id: false, name: "No"), OpenStruct.new(id: true, name: "Yes")], + :id, + :name, + inline: true, + legend: { text: "Are they a data protection officer?", size: "m" } + %> <%= f.govuk_submit "Save changes" %> diff --git a/app/views/users/new.html.erb b/app/views/users/new.html.erb index 4cc66da03..aca158171 100644 --- a/app/views/users/new.html.erb +++ b/app/views/users/new.html.erb @@ -31,9 +31,13 @@ f.govuk_collection_radio_buttons :role, roles, :id, :name, legend: { text: "Role", size: "m" } %> - <%= f.govuk_check_boxes_fieldset :is_dpo, legend: { text: "Are they a data protection officer?", size: "m" } do %> - <%= f.govuk_check_box :is_dpo, :is_dpo, label: { text: "Yes" } %> - <% end %> + <%= f.govuk_collection_radio_buttons :is_dpo, + [OpenStruct.new(id: false, name: "No"), OpenStruct.new(id: true, name: "Yes")], + :id, + :name, + inline: true, + legend: { text: "Are they a data protection officer?", size: "m" } + %> <%= f.govuk_submit "Continue" %> diff --git a/spec/requests/users_controller_spec.rb b/spec/requests/users_controller_spec.rb index b517186e9..c71eaf0f8 100644 --- a/spec/requests/users_controller_spec.rb +++ b/spec/requests/users_controller_spec.rb @@ -211,7 +211,7 @@ RSpec.describe UsersController, type: :request do end context "when user changes email and dpo" do - let(:params) { { id: user.id, user: { name: new_name, email: new_email, is_dpo: "1" } } } + let(:params) { { id: user.id, user: { name: new_name, email: new_email, is_dpo: "true" } } } it "allows changing email and dpo" do user.reload @@ -399,7 +399,7 @@ RSpec.describe UsersController, type: :request do end context "when user changes email and dpo" do - let(:params) { { id: user.id, user: { name: new_name, email: new_email, is_dpo: "1" } } } + let(:params) { { id: user.id, user: { name: new_name, email: new_email, is_dpo: "true" } } } it "allows changing email and dpo" do user.reload @@ -444,7 +444,7 @@ RSpec.describe UsersController, type: :request do end context "when user changes email and dpo" do - let(:params) { { id: other_user.id, user: { name: new_name, email: new_email, is_dpo: "1" } } } + let(:params) { { id: other_user.id, user: { name: new_name, email: new_email, is_dpo: "true" } } } it "allows changing email and dpo" do patch "/users/#{other_user.id}", headers: headers, params: params