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;