From ffeaaa6dda72545cf861799a825da6debd622f28 Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Mon, 16 Oct 2023 16:16:13 +0000 Subject: [PATCH] Bug 35065: Convert SelfCheckHelpMessage system preference to HTML customization This patch moves the SelfCheckHelpMessage system preference into HTML customizations, making it possible to have language- and library-specific content. To test you should have some content in the SelfCheckHelpMessage system preference before applying the patch. Apply the patch, run the database update process, and rebuild the OPAC CSS. - In the staff client, go to Tools -> HTML customizations and verify that the content from SelfCheckHelpMessage is now stored there. - The HTML customization entry form should offer SelfCheckHelpMessage as a choice under "Display location." - Update and reinstall active translations (for instance fr-FR): - perl misc/translator/translate update fr-FR - perl misc/translator/translate install fr-FR - Enable the translation if necessary under Administration -> System preferences -> language. - Enable the "opaclanguagesdisplay" preference if necessary. - Edit the SelfCheckHelpMessage HTML customization and add unique content to the "fr-FR" tab. - Log into the self checkout system and click the "Help" link at the top. - On the help page, confirm that the SelfCheckHelpMessage content is shown there. - Switch to your updated translation and confirm that the content you added for your translation shows up correctly. - Go to Administration -> System preferences and search for "SelfCheckHelpMessage." It should return no results. --- ...CheckHelpMessage-to-additional-contents.pl | 32 +++++++++++++++++++ installer/data/mysql/mandatory/sysprefs.sql | 1 - .../admin/preferences/circulation.pref | 6 ---- .../en/modules/tools/additional-contents.tt | 2 +- .../bootstrap/en/modules/sco/help.tt | 4 ++- 5 files changed, 36 insertions(+), 9 deletions(-) create mode 100755 installer/data/mysql/atomicupdate/bug-35065-move-SelfCheckHelpMessage-to-additional-contents.pl diff --git a/installer/data/mysql/atomicupdate/bug-35065-move-SelfCheckHelpMessage-to-additional-contents.pl b/installer/data/mysql/atomicupdate/bug-35065-move-SelfCheckHelpMessage-to-additional-contents.pl new file mode 100755 index 0000000000..7933cccf59 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug-35065-move-SelfCheckHelpMessage-to-additional-contents.pl @@ -0,0 +1,32 @@ +use Modern::Perl; + +return { + bug_number => "35065", + description => "Move SelfCheckHelpMessage to additional contents", + up => sub { + my ($args) = @_; + my ( $dbh, $out ) = @$args{qw(dbh out)}; + + # Get any existing value from the SelfCheckHelpMessage system preference + my ($selfcheckhelpmessage) = $dbh->selectrow_array( + q| + SELECT value FROM systempreferences WHERE variable='SelfCheckHelpMessage'; + | + ); + if ($selfcheckhelpmessage) { + + # Insert any values found from system preference into additional_contents + foreach my $lang ('default') { + $dbh->do( + "INSERT INTO additional_contents ( category, code, location, branchcode, title, content, lang, published_on ) VALUES ('html_customizations', 'SelfCheckHelpMessage', 'SelfCheckHelpMessage', NULL, ?, ?, ?, CAST(NOW() AS date) )", + undef, "SelfCheckHelpMessage $lang", + $selfcheckhelpmessage, $lang + ); + } + + # Remove old system preference + $dbh->do("DELETE FROM systempreferences WHERE variable='SelfCheckHelpMessage'"); + say $out "Bug 35065 update done"; + } + } + } diff --git a/installer/data/mysql/mandatory/sysprefs.sql b/installer/data/mysql/mandatory/sysprefs.sql index 156238bb27..7cff681435 100644 --- a/installer/data/mysql/mandatory/sysprefs.sql +++ b/installer/data/mysql/mandatory/sysprefs.sql @@ -654,7 +654,6 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('SearchWithISBNVariations','0',NULL,'If enabled, search on all variations of the ISBN','YesNo'), ('SearchWithISSNVariations','0',NULL,'If enabled, search on all variations of the ISSN','YesNo'), ('SelfCheckAllowByIPRanges','',NULL,'(Leave blank if not used. Use ranges or simple ip addresses separated by spaces, like 192.168.1.1 192.168.0.0/24.)','Short'), -('SelfCheckHelpMessage','','70|10','Enter HTML to include under the basic Web-based Self Checkout instructions on the Help page','Textarea'), ('SelfCheckInMainUserBlock','','70|10','Add a block of HTML that will display on the self check-in screen.','Textarea'), ('SelfCheckInModule', 0, NULL, 'Enable the standalone self-checkin module.', 'YesNo'), ('SelfCheckInTimeout','120','','Define the number of seconds before the self check-in module times out.','Integer'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref index 9fa83f7246..bd67efe19a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/circulation.pref @@ -1156,12 +1156,6 @@ Circulation: 1: Allow 0: "Don't allow" - patrons to return items through web-based self checkout system. - - - - "Include the following HTML in the Help page of the web-based self checkout system:" - - pref: SelfCheckHelpMessage - type: textarea - syntax: text/html - class: code - - pref: AutoSelfCheckAllowed choices: diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/additional-contents.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/additional-contents.tt index b41e2f2e9d..cc46d91038 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/additional-contents.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/additional-contents.tt @@ -523,7 +523,7 @@ [% END %] [% END %] [% ELSE %] - [% SET available_options = [ 'OpacNavRight', 'opacheader', 'OpacCustomSearch', 'OpacMainUserBlock', 'opaccredits', 'OpacLoginInstructions', 'OpacNav', 'OpacNavBottom', 'OpacSuggestionInstructions', 'ArticleRequestsDisclaimerText', 'OpacMoreSearches', 'OpacMySummaryNote', 'OpacLibraryInfo', 'CatalogConcernHelp', 'CatalogConcernTemplate', 'CookieConsentBar', 'CookieConsentPopup', 'SCOMainUserBlock' ] %] + [% SET available_options = [ 'OpacNavRight', 'opacheader', 'OpacCustomSearch', 'OpacMainUserBlock', 'opaccredits', 'OpacLoginInstructions', 'OpacNav', 'OpacNavBottom', 'OpacSuggestionInstructions', 'ArticleRequestsDisclaimerText', 'OpacMoreSearches', 'OpacMySummaryNote', 'OpacLibraryInfo', 'CatalogConcernHelp', 'CatalogConcernTemplate', 'CookieConsentBar', 'CookieConsentPopup', 'SCOMainUserBlock', 'SelfCheckHelpMessage' ] %] [% FOREACH l IN available_options.sort %] [% IF l == location %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/help.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/help.tt index eb8a349ee9..d963413399 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/help.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/help.tt @@ -2,8 +2,10 @@ [% USE Koha %] [% USE Asset %] [% USE KohaDates %] +[% USE AdditionalContents %] [% PROCESS 'i18n.inc' %] [% INCLUDE 'doc-head-open.inc' %] +[% SET SelfCheckHelpMessage = AdditionalContents.get( location => "SelfCheckHelpMessage", lang => lang, library => logged_in_user.branchcode || default_branch, blocktitle => 0 ) %] Self checkout help › [% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha [% END %] @@ -35,7 +37,7 @@ [% IF ( SelfCheckHelpMessage ) %]
- [% SelfCheckHelpMessage | $raw %] + [% PROCESS koha_news_block news => SelfCheckHelpMessage %]
[% END %] -- 2.30.2