Bug 8630: Adlibris covers (syspref files)
authorMartin Persson <xarragon@gmail.com>
Mon, 5 Oct 2015 09:13:15 +0000 (11:13 +0200)
committerNick Clemens <nick@bywatersolutions.com>
Mon, 5 Nov 2018 14:41:05 +0000 (14:41 +0000)
This patch adds a system preference for cover images from Swedish
book retailer Adlibris. Images are retrieved via http or https
from an external web server. This might leak OPAC and Staff
interface data to third parties and should thus be used with
caution.

Sponsored-By: Halland County Library

Test plan:

Test 1: Test upgrade procedure for clean installation.

  Start by removing existing sysprefs, if present:

  $ mysql -u kohaadmin -p -D koha
  > DELETE FROM `systempreferences` WHERE `variable` LIKE 'Adlibris%';

* Apply this patch which will add a pref file, update the 'syspref'
  structure and add an atomic upgrade file.

* Install the update:
  Koha$ perl installer/data/mysql/updatedatabase.pl

* Once upgraded and logged in, Select 'More', 'Administration',
  'Global Preferences' and finally 'Enhanced content'.
  There should be a new option called 'Adlibris'.

  The first option should default to "Don't show", if not the
  patch is broken.

  The second options should show the default URL:
  http://www.adlibris.com/se/organisationer/showimagesafe.aspx

  If not, the patch is broken.

Test 2: Changing sysprefs

* In the control panel, change the first value from "Don't show"
  to "Show" and save the changes. Use MySQL client to inspect changes:

  $ mysql -u kohaadmin -p -D koha
  > SELECT * FROM `systempreferences` WHERE `variable` LIKE 'Adlibris%';

  The column 'value' should now have the value '1', if not the patch
  is broken.

Test 3: Apply update to existing data

* Re-execute the installer now that the database has the data already:
  Koha$ perl installer/data/mysql/updatedatabase.pl

  If any errors occur the patch is broken.

  Examine the database contents:

  $ mysql -u kohaadmin -p -D koha
  > SELECT * FROM `systempreferences` WHERE `variable` LIKE 'Adlibris%';

  If the values were overwritten by the installer the patch is broken.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

installer/data/mysql/atomicupdate/bug_8630-add_adlibris_cover_image_syspref.sql [new file with mode: 0644]
installer/data/mysql/sysprefs.sql
koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/enhanced_content.pref

diff --git a/installer/data/mysql/atomicupdate/bug_8630-add_adlibris_cover_image_syspref.sql b/installer/data/mysql/atomicupdate/bug_8630-add_adlibris_cover_image_syspref.sql
new file mode 100644 (file)
index 0000000..36107cd
--- /dev/null
@@ -0,0 +1,3 @@
+INSERT IGNORE INTO `systempreferences` (`variable`, `value`, `options`, `explanation`, `type`) VALUES
+('AdlibrisCoversEnabled', '0', NULL, 'Display cover images in OPAC results and detail listing from Swedish retailer Adlibris.','YesNo'),
+('AdlibrisCoversURL', 'http://www.adlibris.com/se/organisationer/showimagesafe.aspx', NULL, 'Base URL for Adlibris cover image web service.', 'Free');
index ed85d2b..2317a38 100644 (file)
@@ -8,6 +8,8 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `
 ('AcqWarnOnDuplicateInvoice','0','','Warn librarians when they try to create a duplicate invoice','YesNo'),
 ('AdditionalFieldsInZ3950ResultSearch', '', NULL, 'Determines which MARC field/subfields are displayed in -Additional field- column in the result of a search Z3950', 'Free'),
 ('AddressFormat','us','us|de|fr','Choose format to display postal addresses', 'Choice'),
+('AdlibrisCoversEnabled','0',NULL,'Display cover images in OPAC results and detail listing from Swedish retailer Adlibris.','YesNo'),
+('AdlibrisCoversURL','http://www.adlibris.com/se/organisationer/showimagesafe.aspx',NULL,'Base URL for Adlibris cover image web service.','Free'),
 ('advancedMARCeditor','0','','If ON, the MARC editor won\'t display field/subfield descriptions','YesNo'),
 ('AdvancedSearchLanguages','','','ISO 639-2 codes of languages you wish to see appear as an Advanced search option.  Example: eng|fre|ita','Textarea'),
 ('AdvancedSearchTypes','itemtypes','itemtypes|ccode','Select which set of fields comprise the Type limit in the advanced search','Choice'),
index 03fb7fc..67db1fb 100644 (file)
@@ -1,4 +1,20 @@
 Enhanced Content:
+    Adlibris:
+        -
+            - <strong>NOTE:</strong> Using resources such as external images might leak sensitive data to third parties.
+        -
+            - pref: AdlibrisCoversEnabled
+              default: 0
+              choices:
+                  no: "Don't show"
+                  yes: "Show"
+            - cover images in OPAC results and detail listing from Swedish retailer <a href="https://www.adlibris.com/se">Adlibris</a>.
+        -
+            - Use base URL:
+            - pref: AdlibrisCoversURL
+              class: url
+              default: "http://www.adlibris.com/se/organisationer/showimagesafe.aspx"
+            - for the <a href="https://www.adlibris.com/se">Adlibris</a> cover service.
     All:
         -
             - <strong>NOTE:</strong> you can only choose one source of cover images from below, otherwise Koha will show the images from all sources selected.