From 4f40ddf6c1c97a9ae5821b051ac504b6fb7ca566 Mon Sep 17 00:00:00 2001
From: Fridolin Somers <fridolin.somers@biblibre.com>
Date: Thu, 19 Mar 2020 17:01:13 +0300
Subject: [PATCH] Bug 20415: add Koha.Config Template Toolkit method

In order to remove UseKohaPlugins syspref, adds to Koha Template Toolkit
plugin a method Config() that calls C4::Context->config().

Test plan:
1) Set syspref UseKohaPlugins enabled
2) Set config enable_plugins=1
3) Check you see "Tool plugins" in "Tools" home page and menu
4) Check you see "Manage plugins" in "Koha administration" home page
5) Check you see "Report plugins" in "Reports" home page and menu
6) Set config enable_plugins=0
7) Check you don't see in 3) 4) 5)
---
 Koha/Template/Plugin/Koha.pm                                 | 5 +++++
 koha-tmpl/intranet-tmpl/prog/en/includes/reports-menu.inc    | 4 +++-
 koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc      | 4 ++--
 .../prog/en/modules/plugins/plugins-disabled.tt              | 2 +-
 .../intranet-tmpl/prog/en/modules/reports/reports-home.tt    | 2 +-
 koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt  | 4 ++--
 6 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/Koha/Template/Plugin/Koha.pm b/Koha/Template/Plugin/Koha.pm
index 0532a0479a..b934e1d5e7 100644
--- a/Koha/Template/Plugin/Koha.pm
+++ b/Koha/Template/Plugin/Koha.pm
@@ -58,4 +58,9 @@ sub Version {
     };
 }
 
+sub Config {
+    my ( $self, $key ) = @_;
+    return C4::Context->config($key);
+}
+
 1;
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-menu.inc
index e79f2db105..e64285a672 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-menu.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-menu.inc
@@ -1,3 +1,5 @@
+[% USE Koha %]
+
 <div id="navmenu">
     <div id="navmenulist">
 
@@ -26,7 +28,7 @@
                 <li><a href="/cgi-bin/koha/reports/reserves_stats.pl">Holds</a></li>
             </ul>
 
-        [% IF UseKohaPlugins %]
+        [% IF Koha.Config('enable_plugins') %]
             <h5>Report plugins</h5>
             <ul>
                 <li><a href="/cgi-bin/koha/plugins/plugins-home.pl?method=report">Report plugins</a></li>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc
index 877e68fd84..f4df73deed 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc
@@ -102,7 +102,7 @@
 </ul>
 [% END %]
 [% IF ( CAN_user_tools_edit_calendar || CAN_user_tools_manage_csv_profiles || CAN_user_tools_view_system_logs || CAN_user_tools_edit_news
-  || CAN_user_tools_schedule_tasks || CAN_user_tools_edit_quotes || ( UseKohaPlugins && CAN_user_plugins_tool )
+  || CAN_user_tools_schedule_tasks || CAN_user_tools_edit_quotes || ( Koha.Config('enable_plugins') && CAN_user_plugins_tool )
   || CAN_user_tools_upload_general_files || CAN_user_tools_access_files ) %]
 <h5>Additional tools</h5>
 <ul>
@@ -124,7 +124,7 @@
     [% IF ( CAN_user_tools_edit_quotes ) %]
        <li><a href="/cgi-bin/koha/tools/quotes.pl">Quote editor</a></li>
     [% END %]
-    [% IF ( UseKohaPlugins && CAN_user_plugins_tool ) %]
+    [% IF ( Koha.Config('enable_plugins') && CAN_user_plugins_tool ) %]
         <li><a href="/cgi-bin/koha/plugins/plugins-home.pl?method=tool">Tool plugins</a></li>
     [% END %]
     [% IF ( CAN_user_tools_upload_general_files ) %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-disabled.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-disabled.tt
index 3b2a3fe559..b17d140b82 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-disabled.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-disabled.tt
@@ -19,7 +19,7 @@
             <div class="col-sm-6 col-sm-offset-3 col-md-6 col-md-offset-3">
                 <h1>Plugins disabled!</h1>
 
-                <p>To enable Koha plugins, the system preference UseKohaPlugins must be enabled, and the flag enable_plugins must be set in the Koha configuration file</p>
+                <p>To enable Koha plugins, the flag enable_plugins must be set in the Koha configuration file</p>
             </div>
         </div>
 
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/reports-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/reports-home.tt
index e4901bbd62..b8165ac543 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/reports-home.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/reports-home.tt
@@ -55,7 +55,7 @@
             <li><a href="/cgi-bin/koha/reports/reserves_stats.pl">Holds</a></li>
       </ul>
 
-        [% IF UseKohaPlugins %]
+        [% IF Koha.Config('enable_plugins') %]
             <h2>Report plugins</h2>
             <ul>
                 <li><a href="/cgi-bin/koha/plugins/plugins-home.pl?method=report">Report plugins</a></li>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt
index 4074aa2190..600197daf8 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt
@@ -84,7 +84,7 @@
 
 <div class="col-sm-4 col-sm-push-4">
 [% IF ( CAN_user_tools_edit_calendar || CAN_user_tools_manage_csv_profiles || CAN_user_tools_view_system_logs || CAN_user_tools_edit_news
-  || CAN_user_tools_schedule_tasks || CAN_user_tools_edit_quotes || ( UseKohaPlugins && CAN_user_plugins_tool )
+  || CAN_user_tools_schedule_tasks || CAN_user_tools_edit_quotes || ( Koha.Config('enable_plugins') && CAN_user_plugins_tool )
   || CAN_user_tools_upload_general_files || CAN_user_tools_access_files ) %]
 <h3>Additional tools</h3>
 [% END %]
@@ -119,7 +119,7 @@
     <dd>Quote editor for Quote-of-the-day feature in OPAC</dd>
     [% END %]
 
-    [% IF ( UseKohaPlugins && CAN_user_plugins_tool ) %]
+    [% IF ( Koha.Config('enable_plugins') && CAN_user_plugins_tool ) %]
     <dt><a href="/cgi-bin/koha/plugins/plugins-home.pl?method=tool">Tool plugins</a></dt>
     <dd>Use tool plugins</dd>
     [% END %]
-- 
2.25.1