package EPrints::Plugin::Screen::EPMC::Manipulate_Abstract_Ex;
@ISA = ( 'EPrints::Plugin::Screen::EPMC' );
use strict;
# Make the plug-in
sub new
{
my( $class, %params ) = @_;
my $self = $class->SUPER::new( %params );
$self->{actions} = [qw( enable disable )];
$self->{disable} = 0; # always enabled, even in lib/plugins
$self->{package_name} = "Manipulate_Abstract_Ex";
return $self;
}
=item $screen->action_enable( [ SKIP_RELOAD ] )
Enable the L for the current repository.
If SKIP_RELOAD is true will not reload the repository configuration.
=cut
sub action_enable
{
my( $self, $skip_reload ) = @_;
$self->SUPER::action_enable( $skip_reload );
my $repository = $self->{repository};
my $filename = $repository->config( "config_path" )."/workflows/eprint/default.xml";
# Gap for the stuff to be defined we need to add
my $string = '
';
EPrints::XML::add_to_xml( $filename, $string, $self->{package_name} );
my $citation = $repository->dataset( "eprint" )->citation( "summary_page" );
$filename = $citation->{filename};
$string = "
Hello
";
EPrints::XML::add_to_xml( $filename, $string, $self->{package_name} );
unless( $repository->expire_abstracts() )
{
$self->{processor}->add_message( "warning","You need to regenerate abstracts" );
}
$self->reload_config if !$skip_reload;
}
=item $screen->action_disable( [ SKIP_RELOAD ] )
Disable the L for the current repository.
If SKIP_RELOAD is true will not reload the repository configuration.
=cut
sub action_disable
{
my( $self, $skip_reload ) = @_;
$self->SUPER::action_disable( $skip_reload );
my $repository = $self->{repository};
my $filename = $repository->config( "config_path" )."/workflows/eprint/default.xml";
EPrints::XML::remove_package_from_xml( $filename, $self->{package_name} );
my $citation = $repository->dataset( "eprint" )->citation( "summary_page" );
$filename = $citation->{filename};
EPrints::XML::remove_package_from_xml( $filename, $self->{package_name} );
unless( $repository->expire_abstracts() )
{
$self->{processor}->add_message( "warning","You need to regenerate abstracts" );
}
$self->reload_config if !$skip_reload;
}
1;