From cd8b8fe842336e8be9c9cb076261d2d200ac6ac9 Mon Sep 17 00:00:00 2001 From: Katrin Fischer Date: Fri, 27 Mar 2020 06:00:29 +0000 Subject: [PATCH] Bug 4944: Add OpacNoItemTypeImages system preference At the moment noItemTypeImages pref controls staff and OPAC display. With this patch, there will be a separate OpacNoItemTypes preference that allows to control display of each separately. To test: - Apply patch and run database update In Administration: - Search for 'noItemTypes' preferences - Verify the settings of both prefs match - Toggle prefs, verify everything works ok - Go to the item types configuration page - Try different settings for both prefs: - Both set to No: Only a message with a link to the prefs should show - Both set to Yes or either set to Yes: image configuration options should show In the OPAC: - Check the following pages with item-level_itypes = record - advanced search - detail page - place hold page - Check the following pages with item-level_itypes = item - result list - a list (opac-shelves) - checkouts and overdues tabs in patron account (Note: this didn't work right before, but will now.) - reading history in patron account --- C4/UsageStats.pm | 1 + .../mysql/atomicupdate/bug_4944_OpacNoItemTypeImages.perl | 12 ++++++++++++ installer/data/mysql/sysprefs.sql | 3 ++- koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt | 14 +++++++------- .../prog/en/modules/admin/preferences/admin.pref | 2 +- .../prog/en/modules/admin/preferences/opac.pref | 7 +++++++ .../intranet-tmpl/prog/en/modules/catalogue/advsearch.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-advsearch.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt | 4 ++-- .../opac-tmpl/bootstrap/en/modules/opac-readingrecord.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt | 2 +- .../opac-tmpl/bootstrap/en/modules/opac-results-grouped.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-results.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt | 4 ++-- 15 files changed, 41 insertions(+), 20 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_4944_OpacNoItemTypeImages.perl diff --git a/C4/UsageStats.pm b/C4/UsageStats.pm index 55854366e9..d608eb9ea9 100644 --- a/C4/UsageStats.pm +++ b/C4/UsageStats.pm @@ -100,6 +100,7 @@ sub BuildReport { DebugLevel delimiter noItemTypeImages + OpacNoItemTypeImages virtualshelves AutoLocation IndependentBranches diff --git a/installer/data/mysql/atomicupdate/bug_4944_OpacNoItemTypeImages.perl b/installer/data/mysql/atomicupdate/bug_4944_OpacNoItemTypeImages.perl new file mode 100644 index 0000000000..0e2d2c4de3 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_4944_OpacNoItemTypeImages.perl @@ -0,0 +1,12 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + + my $noItemTypeImages = C4::Context->preference('noItemTypeImages'); + $dbh->do( "INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) + VALUES('OpacNoItemTypeImages',$noItemTypeImages,NULL,'If ON, disables itemtype images in the OPAC','YesNo')" ); + $dbh->do( "UPDATE systempreferences SET explanation = 'If ON, disables itemtype images in the staff interface' + WHERE variable = 'noItemTypeImages' "); + + # Always end with this (adjust the bug info) + NewVersion( $DBversion, 4944, "Add new system preference OpacNoItemTypeImages"); +} diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql index 01ec32d118..e2d5d51e74 100644 --- a/installer/data/mysql/sysprefs.sql +++ b/installer/data/mysql/sysprefs.sql @@ -327,7 +327,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('NewsAuthorDisplay','none','none|opac|staff|both','Display the author name for news items.','Choice'), ('noissuescharge','5','','Define maximum amount withstanding before check outs are blocked','Integer'), ('NoIssuesChargeGuarantees','','','Define maximum amount withstanding before check outs are blocked','Integer'), -('noItemTypeImages','0',NULL,'If ON, disables item-type images','YesNo'), +('noItemTypeImages','0',NULL,'If ON, disables itemtype images in the staff interface','YesNo'), ('NoRenewalBeforePrecision','exact_time','date|exact_time','Calculate "No renewal before" based on date only or exact time of due date','Choice'), ('NotesBlacklist','',NULL,'List of notes fields that should not appear in the title notes/description separator of details','free'), ('NotHighlightedWords','and|or|not',NULL,'List of words to NOT highlight when OpacHitHighlight is enabled','free'), @@ -412,6 +412,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('OpacNav','Important links here.','70|10','Use HTML tags to add navigational links to the left-hand navigational bar in OPAC','Textarea'), ('OpacNavBottom','Important links here.','70|10','Use HTML tags to add navigational links to the left-hand navigational bar in OPAC','Textarea'), ('OpacNewsLibrarySelect','0','','Show selector for branches on OPAC news page','YesNo'), +('OpacNoItemTypeImages','0',NULL,'If ON, disables itemtype images in the OPAC','YesNo'), ('OPACNoResultsFound','','70|10','Display this HTML when no results are found for a search in the OPAC','Textarea'), ('OPACNumbersPreferPhrase','0',NULL,'Control the use of phr operator in callnumber and standard number OPAC searches','YesNo'), ('OPACnumSearchResults','20',NULL,'Specify the maximum number of results to display on a page of results','Integer'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt index a0240539fa..9045f6c712 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt @@ -140,13 +140,13 @@ Item types administration Options are defined as the authorized values for the ITEMTYPECAT category. - [% IF Koha.Preference('noItemTypeImages') %] + [% IF ( Koha.Preference('noItemTypeImages') && Koha.Preference('OpacNoItemTypeImages') ) %]
  • - Image: Item type images are disabled. To enable them, turn off the noItemTypeImages system preference + Image: Item type images are disabled. To enable them, turn off the noItemTypeImages or OpacNoItemTypeImages system preferences
  • [% END %] - [% UNLESS Koha.Preference('noItemTypeImages') %] + [% UNLESS Koha.Preference('noItemTypeImages') && Koha.Preference('OpacNoItemTypeImages') %]
    Choose an icon: