From: Chris Sharp Date: Fri, 22 Nov 2019 20:18:57 +0000 (-0500) Subject: LP#1849334 - Protect precat volumes from accidental staff edits X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=aa5993f13168b0991d461e09a3f3d00d80b9d181;p=working%2FEvergreen.git LP#1849334 - Protect precat volumes from accidental staff edits It is possible to edit the precat volume (id = -1) in a batch volume/copy edit in the webclient. We assume that valid changeable volumes have an id > 0, then allow changes. Signed-off-by: Chris Sharp --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm index 4c4d977cca..6ac617364c 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat.pm @@ -1155,7 +1155,7 @@ sub fleshed_volume_update { $vol->editor($editor->requestor->id); $vol->edit_date('now'); - if( $vol->isdeleted ) { + if( $vol->isdeleted && $vol->id > 0 ) { $logger->info("vol-update: deleting volume"); return $editor->die_event unless @@ -1174,7 +1174,7 @@ sub fleshed_volume_update { ($vol,$evt) = $assetcom->create_volume( $auto_merge_vols ? { all => 1} : $oargs, $editor, $vol ); return $evt if $evt; - } elsif( $vol->ischanged ) { + } elsif( $vol->ischanged && $vol->id > 0 ) { $logger->info("vol-update: update volume"); # Three cases here: