EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #04130


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: How to add functions for use in citations ?


Hi Gilles,
Yes - you can do this!
If you're just adding a new method, it's not too problematic.
If you look at: http://wiki.eprints.org/w/Tips_to_write_plugins, the first code example is basically what you need.

This: http://files.eprints.org/773/ has a good example in it (perl_lib\EPrints\Script\Kultur.pm) that adds methods to EPrints::Script::Compiled.

If you Google for 'site:bazaar.eprints.org Compiled' you'll see other examples of exactly what you want to do.

If you're trying to overwrite a method it's abit more messy, especially if you have multiple archives running under one EPrints install, and they need different things...

Cheers,
John

-----Original Message-----
From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Gilles Fournié
Sent: 15 April 2015 16:24
To: eprints-tech@ecs.soton.ac.uk
Subject: [EP-tech] How to add functions for use in citations ?

Hi,

I would like to add a function to work on varaibles in citations (like 
the ones in perl_lib/EPrints/Script/Compiled.pm).
I have already written the one we need... (basically it changes 
occurrences of #...# in titles or abstracts to italics)

I have added a :
     sub run_crd_make_ital { ... }
in perl_lib/EPrints/Script/Compiled.pm.

It works, but I don't like modifying core files.

Is it possible to do something like what we do for Plugins :  write a 
module in archives/ID/plugins/EPrints/Scripts/... and make it extend the 
core module ?
I tried a few things but none worked.

Do you have any idea about the right way to do it ?

Thanks
GF


*** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
*** Archive: http://www.eprints.org/tech.php/
*** EPrints community wiki: http://wiki.eprints.org/
*** EPrints developers Forum: http://forum.eprints.org/