Bugzilla – Attachment 171992 Details for
Bug 37944
Object deletion should be logged with a JSON diff of changes, implement for items
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 37944: Log object delete as JSON diff, implement for items
Bug-37944-Log-object-delete-as-JSON-diff-implement.patch (text/plain), 2.05 KB, created by
Sukhmandeep
on 2024-09-26 15:44:12 UTC
(
hide
)
Description:
Bug 37944: Log object delete as JSON diff, implement for items
Filename:
MIME Type:
Creator:
Sukhmandeep
Created:
2024-09-26 15:44:12 UTC
Size:
2.05 KB
patch
obsolete
>From cc179450c39550d37ba88fdc214777db0eec1edb Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Tue, 17 Sep 2024 09:37:26 -0400 >Subject: [PATCH] Bug 37944: Log object delete as JSON diff, implement for > items > >We should store deleted objects as diffs just as we do for modification and item created. >This enhancement will store modification diffs if the action is set to DELETE, and an "original" object is passed in. > >Test Plan: >1) Enable CataloguingLog >2) Deletee an item >3) Query the database for the newest action log: > select * from action_logs order by action_id desc limit 1\G >4) Note the diff column is NULL >5) Apply this patch >6) Restart all the things! >7) Delete another item >8) Query the database again >9) Note the diff has been created! > >Signed-off-by: Sukhmandeep Benipal <sukhmandeep.benipal@inLibro.com> >--- > C4/Log.pm | 4 ++++ > Koha/Item.pm | 2 +- > 2 files changed, 5 insertions(+), 1 deletion(-) > >diff --git a/C4/Log.pm b/C4/Log.pm >index 543096259a..d88b9598d5 100644 >--- a/C4/Log.pm >+++ b/C4/Log.pm >@@ -124,6 +124,10 @@ sub logaction { > # Log diff against empty hashref for newly created objects > $updated = $is_object ? $original->unblessed : $original; > $original = {}; >+ } elsif ( $actionname eq 'DELETE' ) { >+ # Log diff for deleted objects against empty hashref >+ $original = $is_object ? $original->unblessed : $original; >+ $updated = {}; > } else { > # Log diff against hashref of pre-modified object if passed in > $original = $is_object ? $original->unblessed : $original; >diff --git a/Koha/Item.pm b/Koha/Item.pm >index b086156d4f..e35851e937 100644 >--- a/Koha/Item.pm >+++ b/Koha/Item.pm >@@ -278,7 +278,7 @@ sub delete { > > $self->_after_item_action_hooks({ action => 'delete' }); > >- logaction( "CATALOGUING", "DELETE", $self->itemnumber, "item" ) >+ logaction( "CATALOGUING", "DELETE", $self->itemnumber, "item", undef, $self ) > if C4::Context->preference("CataloguingLog"); > > Koha::BackgroundJob::BatchUpdateBiblioHoldsQueue->new->enqueue( >-- >2.34.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 37944
:
171626
|
171992
|
173550