| 
      
            Lines 26-33
          use Module::Load::Conditional qw(can_load);
      
      
        Link Here
      
     | 
  
        
          | 26 | 
          use C4::Context;  | 
          26 | 
          use C4::Context;  | 
        
        
          | 27 | 
           | 
          27 | 
           | 
        
        
          | 28 | 
          BEGIN { | 
          28 | 
          BEGIN { | 
        
          
            
              | 29 | 
                  push @INC, C4::Context->config("pluginsdir"); | 
              29 | 
                  my $pluginsdir = C4::Context->config("pluginsdir"); | 
            
            
              | 30 | 
                   pop @INC if $INC[-1] eq '.' ;  | 
              30 | 
                  my @pluginsdir = ref($pluginsdir) eq 'ARRAY' ? @$pluginsdir : $pluginsdir;  | 
            
            
               | 
               | 
              31 | 
                  push( @INC, @pluginsdir );  | 
            
            
              | 32 | 
                  pop @INC if $INC[-1] eq '.' ;  | 
            
        
          | 31 | 
          }  | 
          33 | 
          }  | 
        
        
          | 32 | 
           | 
          34 | 
           | 
        
        
          | 33 | 
          =head1 NAME  | 
          35 | 
          =head1 NAME  | 
        
  
    | 
      
            Lines 83-90
          sub delete {
      
      
        Link Here
      
     | 
  
        
          | 83 | 
              return unless ( C4::Context->config("enable_plugins") || $args->{'enable_plugins'} ); | 
          85 | 
              return unless ( C4::Context->config("enable_plugins") || $args->{'enable_plugins'} ); | 
        
        
          | 84 | 
           | 
          86 | 
           | 
        
        
          | 85 | 
              my $plugin_class = $args->{'class'}; | 
          87 | 
              my $plugin_class = $args->{'class'}; | 
        
          
            
              | 86 | 
                  my $plugin_dir   = C4::Context->config("pluginsdir"); | 
              88 | 
               | 
            
            
              | 87 | 
                  my $plugin_path  = "$plugin_dir/" . join( '/', split( '::', $args->{'class'} ) ); | 
              89 | 
                  my $plugin_path = $plugin_class;  | 
            
            
               | 
               | 
              90 | 
                  $plugin_path =~ s/::/\//g;  # Take class name, transform :: to / to get path  | 
            
            
              | 91 | 
                  $plugin_path =~ s/$/.pm/;   # Add .pm to the end  | 
            
            
              | 92 | 
                  require $plugin_path;   # Require the plugin to have it's path listed in INC  | 
            
            
              | 93 | 
                  $plugin_path =  | 
            
            
              | 94 | 
                    $INC{$plugin_path};   # Get the full true path to the plugin from INC | 
            
            
              | 95 | 
                  $plugin_path =~ s/.pm//;    # Remove the .pm from the end  | 
            
        
          | 88 | 
           | 
          96 | 
           | 
        
        
          | 89 | 
              Koha::Plugins::Handler->run({ | 
          97 | 
              Koha::Plugins::Handler->run({ | 
        
        
          | 90 | 
                  class          => $plugin_class,  | 
          98 | 
                  class          => $plugin_class,  |