From 284d460d877be106bd4eb171dcc3bde953aeefd4 Mon Sep 17 00:00:00 2001 From: natdeanlewissoftwire Date: Thu, 4 May 2023 17:05:34 +0100 Subject: [PATCH] feat: run clearing twice in case first clear creates different errors --- app/models/log.rb | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/app/models/log.rb b/app/models/log.rb index 49831e7d0..5df04a72f 100644 --- a/app/models/log.rb +++ b/app/models/log.rb @@ -98,15 +98,19 @@ class Log < ApplicationRecord def blank_invalid_non_setup_fields! setup_ids = form.setup_sections.flat_map(&:subsections).flat_map(&:questions).map(&:id) - errors.each do |error| - next if setup_ids.include?(error.attribute.to_s) + 2.times do + next if valid? - public_send("#{error.attribute}=", nil) - end + errors.each do |error| + next if setup_ids.include?(error.attribute.to_s) + + public_send("#{error.attribute}=", nil) + end - blank_compound_invalid_non_setup_fields! + blank_compound_invalid_non_setup_fields! - errors.clear + errors.clear + end end (1..8).each do |person_num|