From 9891eef5965f2c4e6ef51839dc128538efffe10d Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 2 Apr 2015 11:14:45 -0400 Subject: [PATCH] [SIGNED-OFF] Bug 13948: Add ability to dump template toolkit variables to html comment It would be incredibly helpful if we could easily enable Koha to dump all Template Toolkit variables to a comment for debugging purposes. Test Plan: 1) Apply this patch 2) Run updatedatabase 3) Enable the new system preferences DumpTemplateVarsIntranet and DumpTemplateVarsOpac 4) Load a page in the staff intranet, view the html source 5) Note the template toolkit variables are embedded in an html comment 6) Load a page in the opac, view the html source 7) Note the template toolkit variable are embedded in an html comment NOTE: I had to cpan2deb Template::Plugin::Stash to test. This is not optimal. Additionally: http://www.template-toolkit.org/docs/modules/Template/Plugin/index.html does not contain Stash. I suspect this was how it was introduced initially by TT. Signed-off-by: Mark Tompsett Signed-off-by: Bernardo Gonzalez Kriegel http://bugs.koha-community.org/show_bug.cgi?id=13848 --- C4/Installer/PerlDependencies.pm | 13 ++- installer/data/mysql/sysprefs.sql | 2 + installer/data/mysql/updatedatabase.pl | 24 +++- .../prog/en/includes/doc-head-open.inc | 14 +++ .../prog/en/modules/admin/preferences/logs.pref | 122 ++++++++++++--------- .../bootstrap/en/includes/doc-head-open.inc | 14 +++ 6 files changed, 130 insertions(+), 59 deletions(-) diff --git a/C4/Installer/PerlDependencies.pm b/C4/Installer/PerlDependencies.pm index 4b2067e..21b46b2 100644 --- a/C4/Installer/PerlDependencies.pm +++ b/C4/Installer/PerlDependencies.pm @@ -518,10 +518,15 @@ our $PERL_DEPS = { 'min_ver' => '2.05', }, 'Template' => { - 'usage' => 'Core', - 'required' => '1', - 'min_ver' => '2.22', - }, + 'usage' => 'Core', + 'required' => '1', + 'min_ver' => '2.22', + }, + 'Template::Plugin::Stash' => { + 'usage' => 'Debugging', + 'required' => '1', + 'min_ver' => '1.006', + }, 'Gravatar::URL' => { 'usage' => 'Photos in OPAC reviews', 'required' => '0', diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql index f371193..06a7d7c 100644 --- a/installer/data/mysql/sysprefs.sql +++ b/installer/data/mysql/sysprefs.sql @@ -115,6 +115,8 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('DisplayMultiPlaceHold','1','','Display the ability to place multiple holds or not','YesNo'), ('DisplayOPACiconsXSLT','1','','If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages in the OPAC.','YesNo'), ('dontmerge','1',NULL,'If ON, modifying an authority record will not update all associated bibliographic records immediately, ask your system administrator to enable the merge_authorities.pl cron job','YesNo'), +('DumpTemplateVarsIntranet', '0', NULL , 'If enabled, dump all Template Toolkit variable to a comment in the html source for the staff intranet.', 'YesNo'), +('DumpTemplateVarsOpac', '0', NULL , 'If enabled, dump all Template Toolkit variable to a comment in the html source for the opac.', 'YesNo'), ('EasyAnalyticalRecords','0','','If on, display in the catalogue screens tools to easily setup analytical record relationships','YesNo'), ('emailLibrarianWhenHoldIsPlaced','0',NULL,'If ON, emails the librarian whenever a hold is placed','YesNo'), ('EnableBorrowerFiles','0',NULL,'If enabled, allows librarians to upload and attach arbitrary files to a borrower record.','YesNo'), diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index 13c03d5..38d9393 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -38,7 +38,6 @@ use C4::Context; use C4::Installer; use C4::Dates; use Koha::Database; - use Koha; use MARC::Record; @@ -10425,6 +10424,29 @@ if ( CheckVersion($DBversion) ) { SetVersion ($DBversion); } +$DBversion = "XXX"; +if ( CheckVersion($DBversion) ) { + my $rs = Koha::Database->new()->schema()->resultset('Systempreference'); + $rs->find_or_create( + { + variable => 'DumpTemplateVarsIntranet', + value => 0, + explanation => 'If enabled, dump all Template Toolkit variable to a comment in the html source for the staff intranet.', + type => 'YesNo', + } + ); + $rs->find_or_create( + { + variable => 'DumpTemplateVarsOpac', + value => 0, + explanation => 'If enabled, dump all Template Toolkit variable to a comment in the html source for the opac.', + type => 'YesNo', + } + ); + print "Upgrade to $DBversion done (Bug 13948 - Add ability to dump template toolkit variables to html comment)\n"; + SetVersion($DBversion); +} + # DEVELOPER PROCESS, search for anything to execute in the db_update directory # SEE bug 13068 # if there is anything in the atomicupdate, read and execute it. 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 23449a5..0cafa59 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 @@ -1,4 +1,18 @@ + +[% USE Koha %] +[% IF Koha.Preference('DumpTemplateVarsIntranet') %] + [% USE Stash %] + [% USE Dumper %] + ', '- ->') %] + [% Dumper.dump( Stash.stash() ) %] + [% END %] + [% END %] + --> +[% END %] + [% IF ( bidi ) %][% ELSE %][% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/logs.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/logs.pref index 73f76c2..7227c8c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/logs.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/logs.pref @@ -1,55 +1,69 @@ Logging: - - - - pref: LetterLog - choices: - on: Log - off: "Don't log" - - when an automatic claim notice is sent. - - - - pref: BorrowersLog - choices: - on: Log - off: "Don't log" - - changes to patron records. - - - - pref: CataloguingLog - choices: - on: Log - off: "Don't log" - - any changes to bibliographic or item records. Since this occurs whenever a book is checked in or out as well, it is not advisable to turn this on. - - - - pref: AuthoritiesLog - choices: - on: Log - off: "Don't log" - - changes to authority records. - - - - pref: FinesLog - choices: - on: Log - off: "Don't log" - - when fines are charged, paid, or forgiven. - - - - pref: IssueLog - choices: - on: Log - off: "Don't log" - - when items are checked out. - - - - pref: ReturnLog - choices: - on: Log - off: "Don't log" - - when items are returned. - - - - pref: SubscriptionLog - choices: - on: Log - off: "Don't log" - - when serials are added, deleted or changed. - - - - pref: CronjobLog - choices: - on: Log - off: "Don't log" - - information from cron jobs. + Logging: + - + - pref: LetterLog + choices: + on: Log + off: "Don't log" + - when an automatic claim notice is sent. + - + - pref: BorrowersLog + choices: + on: Log + off: "Don't log" + - changes to patron records. + - + - pref: CataloguingLog + choices: + on: Log + off: "Don't log" + - any changes to bibliographic or item records. Since this occurs whenever a book is checked in or out as well, it is not advisable to turn this on. + - + - pref: AuthoritiesLog + choices: + on: Log + off: "Don't log" + - changes to authority records. + - + - pref: FinesLog + choices: + on: Log + off: "Don't log" + - when fines are charged, paid, or forgiven. + - + - pref: IssueLog + choices: + on: Log + off: "Don't log" + - when items are checked out. + - + - pref: ReturnLog + choices: + on: Log + off: "Don't log" + - when items are returned. + - + - pref: SubscriptionLog + choices: + on: Log + off: "Don't log" + - when serials are added, deleted or changed. + - + - pref: CronjobLog + choices: + on: Log + off: "Don't log" + - information from cron jobs. + Debugging: + - + - pref: DumpTemplateVarsIntranet + choices: + on: Do + off: "Don't" + - dump all Template Toolkit variable to a comment in the html source for the staff intranet. + - + - pref: DumpTemplateVarsOpac + choices: + on: Do + off: "Don't" + - dump all Template Toolkit variable to a comment in the html source for the OPAC. 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 b288c18..4dc6cd5 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 @@ -1,5 +1,19 @@ + +[% USE Koha %] +[% IF Koha.Preference('DumpTemplateVarsOpac') %] + [% USE Stash %] + [% USE Dumper %] + ', '- ->') %] + [% Dumper.dump( Stash.stash() ) %] + [% END %] + [% END %] + --> +[% END %] + [% IF ( bidi ) %][% ELSE %][% END %] -- 1.9.1