@@ -, +, @@ tools/plugins. /var/lib/koha/kohadev/plugins/Koha/Plugin/Com/ByWaterSolutions/KitchenSink.pm this won't compile loading). tools/plugins. --- Koha/Plugins.pm | 3 +-- .../intranet-tmpl/prog/en/modules/plugins/plugins-home.tt | 15 +++++++++++++++ plugins/plugins-home.pl | 11 +++++++---- 3 files changed, 23 insertions(+), 6 deletions(-) --- a/Koha/Plugins.pm +++ a/Koha/Plugins.pm @@ -164,14 +164,13 @@ sub InstallPlugins { my @plugin_classes = $self->plugins(); my @plugins; - # If we can reload the plugin we will add the methods back, if not they should be removed - Koha::Plugins::Methods->search()->delete(); foreach my $plugin_class (@plugin_classes) { if ( can_load( modules => { $plugin_class => undef }, nocache => 1 ) ) { next unless $plugin_class->isa('Koha::Plugins::Base'); my $plugin = $plugin_class->new({ enable_plugins => $self->{'enable_plugins'} }); + Koha::Plugins::Methods->search({ plugin_class => $plugin_class })->delete(); foreach my $method ( @{ Class::Inspector->methods( $plugin_class, 'public' ) } ) { Koha::Plugins::Method->new( --- a/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-home.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/plugins/plugins-home.tt @@ -116,6 +116,19 @@ [% FOREACH plugin IN plugins %] + [% IF plugin.error %] + + + [% plugin.name | html %] + ERRORS + + [% IF ( CAN_user_plugins_configure || CAN_user_plugins_manage || CAN_user_plugins_report || CAN_user_plugins_tool ) %] + Error found whilst attempting to load plugin + [% ELSE %] + Error found whilst attempting to load plugin + [% END %] + + [% ELSE %] [% plugin.metadata.name | html %] @@ -181,6 +194,8 @@ [% END %] + + [% END %] [% END %] [% END %] --- a/plugins/plugins-home.pl +++ a/plugins/plugins-home.pl @@ -52,10 +52,13 @@ if ($plugins_enabled) { method => $method, ); - my @plugins = Koha::Plugins->new()->GetPlugins({ - method => $method, - all => 1, - }); + my @plugins = Koha::Plugins->new()->GetPlugins( + { + method => $method, + all => 1, + errors => 1 + } + ); $template->param( plugins => \@plugins, ); --