When StripWhitespaceChars is enabled and the user by chance enters some white spaces in the input field, Koha generates empty subfield (or even entirely empty field). To reproduce: 1. Enable StripWhitespaceChars system preference. 2. Edit an existing record, putting just some spaces into an empty subfield. Save the record. 3. Go to bibliographic record Normal view and in modal "MARC preview" notice that the subfield you entered spaces in exists as an empty subfield. If it was the only subfield in a field, the field exists with no data at all. This is wrong. Koha::Filter::MARC::TrimFields::filter should be corrected to avoid this.
Created attachment 183259 [details] [review] Bug 40128: StripWhitespaceChars can create empty subfields When StripWhitespaceChars is enabled and the user by chance enters some white spaces in the input field, Koha generates empty subfield (or even entirely empty field). Test plan: ========== 1. Enable StripWhitespaceChars system preference. 2. Edit an existing record, putting just some spaces into an empty subfield. Save the record. 3. Go to bibliographic record Normal view and in modal "MARC preview" notice that the subfield you entered spaces in exists as an empty subfield. If it was the only subfield in a field, the field exists with no data at all. This is wrong. 4. Apply the patch ; restart_all. 5. Repeat 2. and 3. You should not see any empty subfield now. If the empty subbfield was the only subfield in a field, the field should have been removed from the record.
Created attachment 183260 [details] [review] Bug 40128: Unit tests
Created attachment 183261 [details] [review] Bug 40128: StripWhitespaceChars can create empty subfields When StripWhitespaceChars is enabled and the user by chance enters some white spaces in the input field, Koha generates empty subfield (or even entirely empty field). Test plan: ========== 1. Enable StripWhitespaceChars system preference. 2. Edit an existing record, putting just some spaces into an empty subfield. Save the record. 3. Go to bibliographic record Normal view and in modal "MARC preview" notice that the subfield you entered spaces in exists as an empty subfield. If it was the only subfield in a field, the field exists with no data at all. This is wrong. 4. Apply the patch ; restart_all. 5. Repeat 2. and 3. You should not see any empty subfield now. If the empty subbfield was the only subfield in a field, the field should have been removed from the record. Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Created attachment 183262 [details] [review] Bug 40128: Unit tests Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>