@@ -, +, @@ --- catalogue/updateitem.pl | 3 +++ cataloguing/additem.pl | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) --- a/catalogue/updateitem.pl +++ a/catalogue/updateitem.pl @@ -68,6 +68,9 @@ elsif ( $op eq "set_public_note" ) { # i.e., itemnotes parameter passed from for $item->itemnotes($itemnotes); } } elsif ( $op eq "set_lost" && $itemlost ne $item_data_hashref->{'itemlost'}) { + $item->set_found + if !$itemlost && $item->itemlost && $item->itemlost ge '1'; + $item->itemlost($itemlost); } elsif ( $op eq "set_withdrawn" && $withdrawn ne $item_data_hashref->{'withdrawn'}) { $item->withdrawn($withdrawn); --- a/cataloguing/additem.pl +++ a/cataloguing/additem.pl @@ -749,8 +749,11 @@ if ($op eq "additem") { $itemnumber = q{}; my $olditemlost = $item->itemlost; my $newitemlost = $newitem->{itemlost}; - LostItem( $item->itemnumber, 'additem' ) - if $newitemlost && $newitemlost ge '1' && !$olditemlost; + if ( $newitemlost && $newitemlost ge '1' && !$olditemlost ) { + LostItem( $item->itemnumber, 'additem' ) + } elsif ( !$newitemlost && $olditemlost && $olditemlost ge '1' ) { + $item->set_found; + } } $nextop="additem"; } elsif ($op eq "delinkitem"){ --