From d4018ed2c9b3b17950903aa4c9e1305dd4d67ac0 Mon Sep 17 00:00:00 2001 From: Jason Stephenson Date: Tue, 22 Nov 2011 09:19:05 -0500 Subject: [PATCH] Make it so that COPY_DELETE_WARNING cannot be overridden. Also, base the throwing of COPY_DELETE_WARNING on the true or false value of copy_status.resctrict_copy_delete. Signed-off-by: Jason Stephenson --- .../src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm | 13 ++++--------- Open-ILS/xul/staff_client/server/cat/util.js | 1 - Open-ILS/xul/staff_client/server/circ/copy_status.js | 2 -- Open-ILS/xul/staff_client/server/serial/manage_items.js | 3 +-- 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm index 71a2020e59..595c638b3d 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Cat/AssetCommon.pm @@ -322,15 +322,10 @@ sub delete_copy { return $editor->event unless $editor->allowed('DELETE_COPY', $class->copy_perm_org($vol, $copy)); - my $stat = $U->copy_status($copy->status)->id; - - unless($override) { - return OpenILS::Event->new('COPY_DELETE_WARNING', payload => $copy->id ) - if $stat == OILS_COPY_STATUS_CHECKED_OUT or - $stat == OILS_COPY_STATUS_IN_TRANSIT or - $stat == OILS_COPY_STATUS_ON_HOLDS_SHELF or - $stat == OILS_COPY_STATUS_ILL; - } + my $stat = $U->copy_status($copy->status); + + return OpenILS::Event->new('COPY_DELETE_WARNING', payload => $copy->id ) + if $U->is_true($stat->restrict_copy_delete); $logger->info("vol-update: deleting copy ".$copy->id); $copy->deleted('t'); diff --git a/Open-ILS/xul/staff_client/server/cat/util.js b/Open-ILS/xul/staff_client/server/cat/util.js index 5719987b42..88df975e28 100644 --- a/Open-ILS/xul/staff_client/server/cat/util.js +++ b/Open-ILS/xul/staff_client/server/cat/util.js @@ -203,7 +203,6 @@ cat.util.transfer_copies = function(params) { 'title' : $("catStrings").getString('staff.cat.util.transfer_copies.override_transfer_failure'), 'overridable_events' : [ 1208 /* TITLE_LAST_COPY */, - 1227 /* COPY_DELETE_WARNING */, ] } ); diff --git a/Open-ILS/xul/staff_client/server/circ/copy_status.js b/Open-ILS/xul/staff_client/server/circ/copy_status.js index 89e6287657..e3bba6a54d 100644 --- a/Open-ILS/xul/staff_client/server/circ/copy_status.js +++ b/Open-ILS/xul/staff_client/server/circ/copy_status.js @@ -618,7 +618,6 @@ circ.copy_status.prototype = { 'title' : document.getElementById('circStrings').getString('staff.circ.copy_status.del_items.title'), 'overridable_events' : [ 1208 /* TITLE_LAST_COPY */, - 1227 /* COPY_DELETE_WARNING */ ] } ); @@ -626,7 +625,6 @@ circ.copy_status.prototype = { if (typeof robj.ilsevent != 'undefined') { switch(Number(robj.ilsevent)) { case 1208 /* TITLE_LAST_COPY */: - case 1227 /* COPY_DELETE_WARNING */: break; default: obj.error.standard_unexpected_error_alert(document.getElementById('circStrings').getString('staff.circ.copy_status.del_items.success.error'), robj); diff --git a/Open-ILS/xul/staff_client/server/serial/manage_items.js b/Open-ILS/xul/staff_client/server/serial/manage_items.js index 5e734ff40d..640ac4e271 100644 --- a/Open-ILS/xul/staff_client/server/serial/manage_items.js +++ b/Open-ILS/xul/staff_client/server/serial/manage_items.js @@ -283,13 +283,12 @@ serial.manage_items.prototype = { 'title' : document.getElementById('catStrings').getString('staff.cat.copy_browser.delete_items.override'), 'overridable_events' : [ // FIXME: replace or delete these events 1208 /* TITLE_LAST_COPY */, - 1227 /* COPY_DELETE_WARNING */, ] } ); if (robj == null) throw(robj); if (typeof robj.ilsevent != 'undefined') { - if ( (robj.ilsevent != 0) && (robj.ilsevent != 1227 /* COPY_DELETE_WARNING */) && (robj.ilsevent != 1208 /* TITLE_LAST_COPY */) ) throw(robj); + if ( (robj.ilsevent != 0) && (robj.ilsevent != 1208 /* TITLE_LAST_COPY */) ) throw(robj); } obj.refresh_list(obj.selected_list); } -- 2.11.0