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>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This commit is contained in:
Fridolyn SOMERS 2013-03-07 11:54:57 +01:00 committed by Jared Camins-Esakov
parent f57c58bcb9
commit 8f7929d615

View file

@ -342,8 +342,8 @@ function UnCloneField(index) {
} else {
// unclone a subfield, check if there will remain one subfield
var subfieldCode = getFieldAndSubfieldCode(index);
// subfield divs with id begining with original field and subfield field code
var cloneSubfields = $('.subfield_line[id^="subfield'+subfieldCode+'"]');
// subfield divs of same field with id begining with original field and subfield field code
var cloneSubfields = $(original).parent().children('.subfield_line[id^="subfield'+subfieldCode+'"]');
if (cloneSubfields.length > 1) {
canUnclone = true;
}