[EP-tech] Re: Altering DajaObj/Eprint.pm behaviour without altering core code
Tim Brody
tdb2 at ecs.soton.ac.uk
Wed Apr 4 13:00:20 BST 2012
On Wed, 2012-04-04 at 12:18 +0100, John Salter wrote:
> I'm trying to do something the 'right way'*.
> This advice: http://wiki.eprints.org/w/Read_Only_Directories says I shouldn't be editing anything under eprints3/perl_lib/ (with a couple of exceptions).
>
> I need to alter the 'render_fileinfo' subroutine in ~/perl_lib/EPrints/DataObj/EPrint.pm.
> How do I achieve this without:
> - altering the Eprint.pm file
> - ending up with some 'Subroutine render_fileinfo redefined' messages
> - using "no warnings 'redefine';" ;o)
>
> I've tried various attempts - without success.
> I'm sure it can be done, and I'm sure it's a bit of perl magic I'm missing, and hopefully someone here can help!
You can override the render method in your citation:
<epc:print expr="fileinfo" opts="value=render_fileinfo" />
$c->{render_fileinfo} = sub { ... };
(value becomes "render_value" ... clunky I know)
Check perl_lib/EPrints/Script::print has support for opts if it doesn't
work.
/Tim.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part
Url : http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20120404/0f49b64f/attachment.bin
More information about the Eprints-tech
mailing list