Bugzilla – Attachment 152950 Details for
Bug 30708
Creation of a new 'Preservation' module
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 30708: Keep item attributes when editing a new processing
Bug-30708-Keep-item-attributes-when-editing-a-new-.patch (text/plain), 3.88 KB, created by
Jonathan Druart
on 2023-07-03 13:29:35 UTC
(
hide
)
Description:
Bug 30708: Keep item attributes when editing a new processing
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2023-07-03 13:29:35 UTC
Size:
3.88 KB
patch
obsolete
>From 578f3459817d3a41a6a4c69b15e73522c2dbdb91 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Thu, 6 Apr 2023 15:57:35 +0200 >Subject: [PATCH] Bug 30708: Keep item attributes when editing a new processing > >Sponsored-by: BULAC - http://www.bulac.fr/ >Signed-off-by: BULAC - http://www.bulac.fr/ >--- > Koha/Preservation/Processing.pm | 25 +++++++++++++++++-- > .../SettingsProcessingsFormAdd.vue | 20 +++++++++++++-- > 2 files changed, 41 insertions(+), 4 deletions(-) > >diff --git a/Koha/Preservation/Processing.pm b/Koha/Preservation/Processing.pm >index ee21b727b2e..e3c5ef95dc0 100644 >--- a/Koha/Preservation/Processing.pm >+++ b/Koha/Preservation/Processing.pm >@@ -46,10 +46,31 @@ sub attributes { > my $schema = $self->_result->result_source->schema; > $schema->txn_do( > sub { >- $self->attributes->delete; >+ my @existing_ids = map { $_->{processing_attribute_id} || () } @$attributes; >+ if (@existing_ids || !@$attributes) { >+ $self->attributes->search( >+ { >+ ( >+ # If no attributes passed we delete all the existing ones >+ @$attributes >+ ? ( >+ processing_attribute_id => { >+ -not_in => \@existing_ids >+ } >+ ) >+ : () >+ ) >+ } >+ )->delete; >+ } > > for my $attribute (@$attributes) { >- $self->_result->add_to_preservation_processing_attributes($attribute); >+ my $existing_attribute = $self->attributes->find( $attribute->{processing_attribute_id} ); >+ if ($existing_attribute) { >+ $existing_attribute->set($attribute)->store; >+ } else { >+ $self->_result ->add_to_preservation_processing_attributes( $attribute ); >+ } > } > } > ); >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Preservation/SettingsProcessingsFormAdd.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Preservation/SettingsProcessingsFormAdd.vue >index 14b29cd639b..338eb0dcacc 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Preservation/SettingsProcessingsFormAdd.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Preservation/SettingsProcessingsFormAdd.vue >@@ -25,6 +25,17 @@ > </fieldset> > <fieldset class="rows"> > <legend>{{ $__("Attributes") }}</legend> >+ <div >+ v-if="processing.processing_id" >+ id="alert-removal" >+ class="dialog message" >+ > >+ {{ >+ $__( >+ "Be careful removing attribute to this processing, the items using it will be impacted as well!" >+ ) >+ }} >+ </div> > <fieldset > :id="`attribute_${counter}`" > class="rows" >@@ -246,8 +257,7 @@ export default { > } > > processing.attributes = processing.attributes.map( >- ({ processing_id, processing_attribute_id, ...keepAttrs }) => >- keepAttrs >+ ({ processing_id, ...keepAttrs }) => keepAttrs > ) > > const client = APIClient.preservation >@@ -284,3 +294,9 @@ export default { > name: "SettingsProcessingsFormAdd", > } > </script> >+ >+<style> >+#alert-removal { >+ margin: 0; >+} >+</style> >-- >2.25.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 30708
:
134715
|
134716
|
134732
|
134733
|
134734
|
134736
|
134737
|
134738
|
134782
|
134783
|
134784
|
134785
|
152939
|
152940
|
152941
|
152942
|
152943
|
152944
|
152945
|
152946
|
152947
|
152948
|
152949
|
152950
|
152951
|
152952
|
152953
|
152954
|
152955
|
152956
|
152957
|
152958
|
152959
|
152960
|
152961
|
152962
|
152963
|
152964
|
152965
|
152966
|
152967
|
152968
|
152969
|
152970
|
153102
|
153576
|
154167
|
154168
|
154169
|
154170
|
154171
|
154172
|
154173
|
154174
|
154175
|
154176
|
154177
|
154178
|
154179
|
154180
|
154181
|
154182
|
154183
|
154184
|
154185
|
154186
|
154187
|
154188
|
154189
|
154190
|
154191
|
154192
|
154193
|
154194
|
154195
|
154196
|
154197
|
154198
|
154199
|
154200
|
154201
|
154202
|
154203
|
156592
|
156596
|
156597
|
156636
|
156637
|
156638
|
156639
|
156640
|
156641
|
156642
|
156643
|
156644
|
156645
|
156646
|
156647
|
156648
|
156649
|
156650
|
156651
|
156652
|
156653
|
156654
|
156655
|
156656
|
156657
|
156658
|
156659
|
156660
|
156661
|
156662
|
156663
|
156664
|
156665
|
156666
|
156667
|
156668
|
156669
|
156670
|
156671
|
156672
|
156673
|
156674
|
156675
|
157502
|
157503
|
157506
|
157508
|
157512
|
157514
|
157557