From 7e10f6fb78ae7fa2dfc4f52a3791ac35082237ac Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Mon, 6 May 2013 14:25:23 -0400 Subject: [PATCH] Bug 10206 - Add Koha TT Plugin - Koha.Preference This plugin is meant to be a place to put general purpose TT functions directly related to Koha. If a plugin is not a filter, and does not have more than one subroutine, that subroutine most likely belongs in this TT plugin. This first and only function the plugin currently has is Preference, which allows a template to get the value of a system preference without, it needing to be passed in from a perl script. For example, to use, first include the line '[% USE Koha %]' at the top of the template to enable the plugin, then do something like this to check the value of a system prefence in the template: [% IF Koha.Preference( 'MyPreference ) == 'SettingA' %] ... Signed-off-by: Kyle M Hall Signed-off-by: Marcel de Rooy Signed-off-by: Galen Charlton --- Koha/Template/Plugin/Koha.pm | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Koha/Template/Plugin/Koha.pm diff --git a/Koha/Template/Plugin/Koha.pm b/Koha/Template/Plugin/Koha.pm new file mode 100644 index 0000000000..2eff9f1428 --- /dev/null +++ b/Koha/Template/Plugin/Koha.pm @@ -0,0 +1,47 @@ +package Koha::Template::Plugin::Koha; + +# Copyright ByWater Solutions 2013 + +# This file is part of Koha. +# +# Koha is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# +# Koha is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +use Modern::Perl; + +use base qw( Template::Plugin ); + +use C4::Context; + +=pod + +This plugin contains various Koha replated Template Toolkit functions +to help streamline Koha and to move logic from the Perl code into the +Templates when it makes sense to do so. + +To use, first, include the line '[% USE Koha %]' at the top +of the template to enable the plugin. + +For example: [% IF Koha.Preference( 'MyPreference ) == 'SettingA' %] +removes the necessity of setting a template variable in Perl code for +each and every system preference, even if no evaluation of the setting +is necessary. + +=cut + +sub Preference { + my ( $self, $pref ) = @_; + return C4::Context->preference( $pref ); +} + +1; -- 2.39.5