From c2cbce21998c18650e29870c2ccc9f2dbe9feea0 Mon Sep 17 00:00:00 2001
From: Mark Tompsett <mtompset@hotmail.com>
Date: Fri, 15 May 2015 00:49:18 -0400
Subject: [PATCH] Bug 13948: Prevent explosion when Template::Plugin::Stash not
 installed

TEST PLAN
---------
1) Install first two patches
2) do not install, or uninstall Template::Plugin::Stash
3) Upgrade to make sure system preference is added.
4) Set the system preference to turn it on for Staff and OPAC
5) Refresh staff -- kaboom
6) Load OPAC -- kaboom
7) Apply this patch
8) Reload staff and OPAC
   -- nice HTML comment about what is wrong.
9) run koha qa test tools.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Neat, runs well. Tested with/without sysprefs and Template::Plugin::Stash
No koha-qa errors

Signed-off-by: Jonathan Druart <jonathan.druart@koha-community.org>
---
 .../prog/en/includes/doc-head-open.inc              | 21 ++++++++++++++-------
 .../bootstrap/en/includes/doc-head-open.inc         | 21 ++++++++++++++-------
 2 files changed, 28 insertions(+), 14 deletions(-)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc
index 0cafa59..59e6d53 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc
@@ -3,15 +3,22 @@
 
 [% USE Koha %]
 [% IF Koha.Preference('DumpTemplateVarsIntranet') %]
-    [% USE Stash %]
-    [% USE Dumper %]
-    <!--
-    [% FILTER replace('<!--', '<!- -') %]
-        [% FILTER replace('-->', '- ->') %]
-            [% Dumper.dump( Stash.stash() ) %]
+    [% TRY %]
+        [% USE Stash %]
+        [% USE Dumper %]
+        <!--
+        [% FILTER replace('<!--', '<!- -') %]
+            [% FILTER replace('-->', '- ->') %]
+                [% Dumper.dump( Stash.stash() ) %]
+            [% END %]
         [% END %]
+        -->
+    [% CATCH %]
+        <!--
+            DumpTemplateVarsIntranet is set to 'Do', but
+            Template::Plugin::Stash is not installed.
+        -->
     [% END %]
-    -->
 [% END %]
 
 [% IF ( bidi ) %]<html lang="[% lang %]" dir="[% bidi %]">[% ELSE %]<html lang="[% lang %]">[% END %]
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-open.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-open.inc
index 4dc6cd5..62505aa 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-open.inc
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-open.inc
@@ -3,15 +3,22 @@
 
 [% USE Koha %]
 [% IF Koha.Preference('DumpTemplateVarsOpac') %]
-    [% USE Stash %]
-    [% USE Dumper %]
-    <!--
-    [% FILTER replace('<!--', '<!- -') %]
-        [% FILTER replace('-->', '- ->') %]
-            [% Dumper.dump( Stash.stash() ) %]
+    [% TRY %]
+        [% USE Stash %]
+        [% USE Dumper %]
+        <!--
+        [% FILTER replace('<!--', '<!- -') %]
+            [% FILTER replace('-->', '- ->') %]
+                [% Dumper.dump( Stash.stash() ) %]
+            [% END %]
         [% END %]
+        -->
+    [% CATCH %]
+        <!--
+            DumpTemplateVarsOpac is set to 'Do', but
+            Template::Plugin::Stash is not installed.
+        -->
     [% END %]
-    -->
 [% END %]
 
 [% IF ( bidi ) %]<html lang="[% lang %]" dir="[% bidi %]" class="no-js">[% ELSE %]<html lang="[% lang %]" class="no-js">[% END %]
-- 
2.1.0