From a1d0dc1c72c35519f5f6b80a571d6dad6136ae3b Mon Sep 17 00:00:00 2001
From: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Date: Mon, 18 Dec 2017 16:21:25 -0300
Subject: [PATCH] Bug 19817: Make the location of the manual configurable -
 KohaManualBaseURL

---
 help.pl                                                           | 7 +++++--
 installer/data/mysql/atomicupdate/bug_19817.sql                   | 2 ++
 installer/data/mysql/sysprefs.sql                                 | 1 +
 .../prog/en/modules/admin/preferences/enhanced_content.pref       | 8 ++++++++
 4 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 installer/data/mysql/atomicupdate/bug_19817.sql

diff --git a/help.pl b/help.pl
index f1a273cc55..0c500b6d8e 100755
--- a/help.pl
+++ b/help.pl
@@ -36,9 +36,12 @@ if ( $help_version =~ m|^(\d+)\.(\d{2}).*$| ) {
     $help_version = "$version.$major";
 }
 
-# FIXME remote url must be a pref
 # FIXME /en/ must be configurable (or guessed)
-our $base_url = 'http://koha-community.org/manual/' . $help_version . '/en/html';
+my $KohaManualBaseURL = C4::Context->preference('KohaManualBaseURL') || 'http://koha-community.org/manual';
+if ( $KohaManualBaseURL =~ m|^/| ) {
+    $KohaManualBaseURL = C4::Context->preference('staffClientBaseURL') . $KohaManualBaseURL;
+}
+our $base_url = $KohaManualBaseURL . '/' . $help_version . '/en/html';
 our $mapping = {
     'about'                                    => '/14_plugins.html#about-koha',
     'acqui/acqui-home'                         => '/09_acquisitions.html',
diff --git a/installer/data/mysql/atomicupdate/bug_19817.sql b/installer/data/mysql/atomicupdate/bug_19817.sql
new file mode 100644
index 0000000000..b2409ebbd6
--- /dev/null
+++ b/installer/data/mysql/atomicupdate/bug_19817.sql
@@ -0,0 +1,2 @@
+INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` )
+VALUES ('KohaManualBaseURL','http://koha-community.org/manual/','','Where is the Koha manual/documentation located?','Free');
diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql
index ad8f41d677..bb608ce6ab 100644
--- a/installer/data/mysql/sysprefs.sql
+++ b/installer/data/mysql/sysprefs.sql
@@ -239,6 +239,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `
 ('itemBarcodeInputFilter','','whitespace|T-prefix|cuecat|libsuite8|EAN13','If set, allows specification of a item barcode input filter','Choice'),
 ('itemcallnumber','082ab',NULL,'The MARC field/subfield that is used to calculate the itemcallnumber (Dewey would be 082ab or 092ab; LOC would be 050ab or 090ab) could be 852hi from an item record','free'),
 ('KohaAdminEmailAddress','root@localhost','','Define the email address where patron modification requests are sent','free'),
+('KohaManualBaseURL','http://koha-community.org/manual/','','Where is the Koha manual/documentation located?','Free'),
 ('LabelMARCView','standard','standard|economical','Define how a MARC record will display','Choice'),
 ('language','en',NULL,'Set the default language in the staff client.','Languages'),
 ('LetterLog','1',NULL,'If ON, log all notices sent','YesNo'),
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/enhanced_content.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/enhanced_content.pref
index 81e96c6147..286589151b 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/enhanced_content.pref
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/enhanced_content.pref
@@ -396,3 +396,11 @@ Enhanced Content:
                 aws: Amazon Web Services
                 gb: Google Books
                 ol: Open Library
+
+    Manual:
+        -
+            - Location of the Koha manual
+            - pref: KohaManualBaseURL
+            - You can specify the location of the Koha manual to use. By default it is http://koha-community.org/manual/
+            - If starts with '/',  the value of staffClientBaseURL will be used as a prefix.
+            - Note that it will be suffixed by the version / the language / the format (/17.11/en/html)
-- 
2.11.0