Bug 26803: Fix PLUGIN_DIR when plugin_dirs is multivalued
authorFrédéric Demians <f.demians@tamil.fr>
Fri, 23 Oct 2020 16:17:49 +0000 (18:17 +0200)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Wed, 4 Nov 2020 11:59:33 +0000 (12:59 +0100)
When plugin_dir koha-conf.xml parameter contains more than one
directory, PLUGIN_DIR parameter sent to templates doesn't contain the
proper value, ie the base directory of the current plugin.

See bug 23237

Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Koha/Plugins/Base.pm

index f1990ae..a5cb15e 100644 (file)
@@ -167,7 +167,7 @@ sub get_template {
         CLASS       => $self->{'class'},
         METHOD      => scalar $self->{'cgi'}->param('method'),
         PLUGIN_PATH => $self->get_plugin_http_path(),
-        PLUGIN_DIR  => $self->get_plugin_dir(),
+        PLUGIN_DIR  => $self->bundle_path(),
         LANG        => C4::Languages::getlanguage($self->{'cgi'}),
     );
 
@@ -215,22 +215,6 @@ sub get_plugin_http_path {
     return "/plugin/" . join( '/', split( '::', $self->{'class'} ) );
 }
 
-=head2 get_plugin_dir
-
-To [% INCLUDE %] another TT template from a template, an absolute path to the
-template is required. This method returns that absolute file system path.
-
-usage: my $path = $self->get_plugin_dir();
-
-=cut
-
-sub get_plugin_dir {
-    my ($self) = @_;
-
-    my $base = C4::Context->config('pluginsdir');
-    return "$base/" . join( '/', split( '::', $self->{'class'} ) );
-}
-
 =head2 go_home
 
    go_home is a quick redirect to the Koha plugins home page