Bugzilla – Attachment 128003 Details for
Bug 29275
Use the API to render checkout history for a biblio
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 29275: (follow-up) Split columns settings and handle upgrade
Bug-29275-follow-up-Split-columns-settings-and-han.patch (text/plain), 5.51 KB, created by
Martin Renvoize (ashimema)
on 2021-11-25 11:50:18 UTC
(
hide
)
Description:
Bug 29275: (follow-up) Split columns settings and handle upgrade
Filename:
MIME Type:
Creator:
Martin Renvoize (ashimema)
Created:
2021-11-25 11:50:18 UTC
Size:
5.51 KB
patch
obsolete
>From 159ea86fefbce0ce465a42e0b981ae8100f10050 Mon Sep 17 00:00:00 2001 >From: Tomas Cohen Arazi <tomascohen@theke.io> >Date: Tue, 16 Nov 2021 16:46:48 -0300 >Subject: [PATCH] Bug 29275: (follow-up) Split columns settings and handle > upgrade > >This patch splits the table settings as we now have two tables. The >atomic update takes care of setting the right values (if present) on the >new tables entries. > >To test: >1. Do not apply this patch >2. Set some values you will remember for the checkoutshistory-table > table >3. Run: > $ koha-mysql kohadev > > SELECT * FROM columns_settings WHERE tablename='checkoutshistory-table'; >=> SUCCESS: Koha currently works :-D >4. Apply this patch >5. Run: > $ updatedatabase >6. Repeat 3 >=> SUCCESS: Things have been deleted >7. Run: > $ koha-mysql kohadev > > SELECT * FROM columns_settings WHERE tablename LIKE '%_checkouts-table'; >=> SUCCESS: old_checkouts-table and current_checkouts-table have the >right setting >8. Sign off :-D > >Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> >Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> >--- > admin/columns_settings.yml | 23 ++++++++++++++- > .../data/mysql/atomicupdate/bug_29275.pl | 28 +++++++++++++++++++ > .../prog/en/modules/catalogue/issuehistory.tt | 11 +++++--- > 3 files changed, 57 insertions(+), 5 deletions(-) > create mode 100755 installer/data/mysql/atomicupdate/bug_29275.pl > >diff --git a/admin/columns_settings.yml b/admin/columns_settings.yml >index 18f4ce0c0e..19bf1fd627 100644 >--- a/admin/columns_settings.yml >+++ b/admin/columns_settings.yml >@@ -441,7 +441,28 @@ modules: > - > columnname: subscription_callnumber > >- checkoutshistory-table: >+ current_checkouts-table: >+ columns: >+ - >+ columnname: patron >+ cannot_be_toggled: 1 >+ cannot_be_modified: 1 >+ - >+ columnname: barcode >+ cannot_be_toggled: 1 >+ cannot_be_modified: 1 >+ - >+ columnname: checked_out_from >+ - >+ columnname: checked_out_by >+ - >+ columnname: renewed >+ - >+ columnname: checkout_on >+ - >+ columnname: due_date >+ >+ old_checkouts-table: > columns: > - > columnname: patron >diff --git a/installer/data/mysql/atomicupdate/bug_29275.pl b/installer/data/mysql/atomicupdate/bug_29275.pl >new file mode 100755 >index 0000000000..f029fe1f3d >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/bug_29275.pl >@@ -0,0 +1,28 @@ >+use Modern::Perl; >+ >+return { >+ bug_number => "29275", >+ description => "Use the API to render checkout history for a biblio", >+ up => sub { >+ my ($args) = @_; >+ my ($dbh, $out) = @$args{qw(dbh out)}; >+ >+ # Migrate checkoutshistory-table => current_checkouts-table ('checkin_on' excluded) >+ $dbh->do(q{ >+ INSERT INTO columns_settings >+ SELECT 'catalogue', 'detail', 'current_checkouts-table', columnname, cannot_be_toggled, is_hidden >+ FROM columns_settings WHERE tablename='checkoutshistory-table' AND columnname<>'checkin_on'; >+ }); >+ # Migrate checkoutshistory-table => old_checkouts-table ('checkin_on' included) >+ $dbh->do(q{ >+ INSERT INTO columns_settings >+ SELECT 'catalogue', 'detail', 'old_checkouts-table', columnname, cannot_be_toggled, is_hidden >+ FROM columns_settings WHERE tablename='checkoutshistory-table'; >+ }); >+ # Clean the old table settings >+ $dbh->do(q{ >+ DELETE FROM columns_settings >+ WHERE tablename='checkoutshistory-table'; >+ }); >+ }, >+} >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/issuehistory.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/issuehistory.tt >index d427bbf30f..32bb6a39e2 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/issuehistory.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/issuehistory.tt >@@ -220,17 +220,20 @@ > }, columns_settings); > } > >- var columns_settings = [% TablesSettings.GetColumns('catalogue', 'detail', 'checkoutshistory-table', 'json') %]; >+ var old_checkouts_columns_settings = [% TablesSettings.GetColumns('catalogue', 'detail', 'old_checkouts-table', 'json') %]; >+ var current_checkouts_columns_settings = [% TablesSettings.GetColumns('catalogue', 'detail', 'current_checkouts-table', 'json') %]; >+ > [% UNLESS show_patron_column %] > // Remove the patron column definition >- columns_settings.splice(0,1); >+ old_checkouts_columns_settings.splice(0,1); >+ current_checkouts_columns_settings.splice(0,1); > [% END %] > > var show_patron_column = [% IF show_patron_column %]1[% ELSE %]0[% END %]; > var default_sort_column = 3 + show_patron_column; > >- var old_checkouts = initialize_checkouts_table( '#old_checkouts', default_sort_column, true, columns_settings ); >- var current_checkouts = initialize_checkouts_table( '#current_checkouts', default_sort_column, false, columns_settings.slice(0,-1) ); >+ var old_checkouts = initialize_checkouts_table( '#old_checkouts', default_sort_column, true, old_checkouts_columns_settings ); >+ var current_checkouts = initialize_checkouts_table( '#current_checkouts', default_sort_column, false, current_checkouts_columns_settings ); > }); > </script> > [% END %] >-- >2.20.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 29275
:
126626
|
126627
|
126628
|
126634
|
126635
|
126636
|
127701
|
127702
|
127703
|
127704
|
127894
|
127895
|
127896
|
127897
|
128001
|
128002
|
128003
|
131333
|
131334
|
131335