In authorities and biblios editors, a repeatable subfield can be deleted (small icon next to input). Clone subfields are really deleted but last existing subfield is just set empty instead of deleted. But when same field is repeated, the last subfield can be deleted. The code checks for existing subfields in all fields instead of in field of the deleting subfield.
Created attachment 15927 [details] [review] Proposed patch See commit message
Created attachment 15985 [details] [review] Bug 9759: last subfield can be deleted In authorities and biblios editors, a repeatable subfield can be deleted (small icon next to input). Clone subfields are really deleted but last existing subfield is just set empty instead of deleted. But when same field is repeated, the last subfield can be deleted. This patch corrects this, last subfield of a field, even repeated, can not be deleted. Test plan : - Edit a biblio - Choose a repeatable field with a repeatable subfield : ie 600 and $x - Edit 600, enter a text in $x : ie "subA" - Clone $x - Delete second $x => second $x is deleted - Delete first $x => $x is not deleted but set empty - Edit 600, enter a text in $x : ie "subA" - Clone 600 - Edit second 600, enter a text in $x : ie "subB" - Clone $x of second 600 - Delete second $x of second 600 => second $x of second 600 is deleted - Delete first $x of second 600 => with this patch : first $x of second 600 is set empty => without this patch : first $x of second 600 is deleted, second 600 has no $x anymore Perform same test plan on an authority. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Created attachment 17028 [details] [review] Bug 9759: last subfield can be deleted In authorities and biblios editors, a repeatable subfield can be deleted (small icon next to input). Clone subfields are really deleted but last existing subfield is just set empty instead of deleted. But when same field is repeated, the last subfield can be deleted. This patch corrects this, last subfield of a field, even repeated, can not be deleted. Test plan : - Edit a biblio - Choose a repeatable field with a repeatable subfield : ie 600 and $x - Edit 600, enter a text in $x : ie "subA" - Clone $x - Delete second $x => second $x is deleted - Delete first $x => $x is not deleted but set empty - Edit 600, enter a text in $x : ie "subA" - Clone 600 - Edit second 600, enter a text in $x : ie "subB" - Clone $x of second 600 - Delete second $x of second 600 => second $x of second 600 is deleted - Delete first $x of second 600 => with this patch : first $x of second 600 is set empty => without this patch : first $x of second 600 is deleted, second 600 has no $x anymore Perform same test plan on an authority. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
QA Comment: Works as advertised. Nothing to say. Passed QA
When testing, you may need to refresh (Ctrl+F5) for clearing the cached js.
This patch has been pushed to master.
Pushed to 3.10.x will be in 3.10.6