EPrints Technical Mailing List Archive
Message: #07489
< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First
Re: [EP-tech] EPScript - Author Limit
- To: <drn@ecs.soton.ac.uk>
- Subject: Re: [EP-tech] EPScript - Author Limit
- From: James Kerwin <jkerwin2101@gmail.com>
- Date: Wed, 19 Sep 2018 10:45:42 +0100
Hi David,
I'm very jealous; that's exactly what I'm going for, even the clickable "et al" (I thought I might have had an original idea up until I saw that).
Any guidance you can give me would be brilliant. I may hold off jumping in and editing that file for the time being and do some more investigating.
Thanks,
James
On Wed, Sep 19, 2018 at 9:58 AM David R Newman <drn@ecs.soton.ac.uk> wrote:
Hi James,
This is what I did for one of the repository I help maintain:
http://researchonline.ljmu.ac.uk/7570/
I should be able to share the code if I can extract it from the rest of
the codebase, as it requires edits to 3-4 files, if I remember
correctly. Also, if you have other features like people_with_orcids
that modifies the list of authors in the citation in some way (i.e. in
this case add little ORCID buttons to click), then it may require a bit
more of an effort to merge.
Regards
David Newman
On Wed, 2018-09-19 at 09:36 +0100, James Kerwin via Eprints-tech wrote:
> Hi All,
>
> I have been tasked with limiting the number of authors that display
> in any given EPrint Abstract page as when there are many
> authors/creators associated with an EPrint it ruins the abstract
> page.
>
> I have edited default.xml in citations and can make it show ten
> authors and add an "et al" to the end if there are more than ten
> authors.
>
> However, previously the creators/authors list was generated via:
>
> <print expr="people_with_orcids(creators)" />
>
> I wasn't able to iterate through this so I instead used:
>
> <epc:foreach expr="creators_name" iterator="name" limit="10">
> <print expr="$name" />
>
> If I wanted to change the behaviour of "people_with_orcids(creators)
> how would I do this? I don't need detailed instruction, just a nudge
> towards which file(s) control this if anybody knows.
>
> My suspicion is that I need to change the sub
> "run_people_with_orcids" in a file named z_orcid_support.pl in
> ../[Archive_Id]/cfg/cfg.d, but I'm not super excited about chopping
> and changing things without fully knowing if I should (sub snippet
> below).
>
> Thanks,
> James
>
> #Rendering ORCIDs
> {
> package EPrints::Script::Compiled;
> use strict;
>
> sub run_people_with_orcids
> {
> my( $self, $state, $value ) = @_;
>
> my $session = $state->{session};
> my $r = $state->{session}->make_doc_fragment;
>
> my $creators = $value->[0];
>
> foreach my $i (0..$#$creators)
> {
>
> my $creator = @$creators[$i];
>
> if( $i > 0 )
> {
> #not first item (or only one item)
> if( $i == $#$creators )
> {
> #last item
> $r->appendChild( $session->make_text( "
> and " ) );
> }
> else
> {
> $r->appendChild( $session->make_text(
> ", " ) );
> }
> }
>
> *** 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/
- Follow-Ups:
- Re: [EP-tech] EPScript - Author Limit
- From: James Kerwin <jkerwin2101@gmail.com>
- Re: [EP-tech] EPScript - Author Limit
- References:
- [EP-tech] EPScript - Author Limit
- From: James Kerwin <jkerwin2101@gmail.com>
- Re: [EP-tech] EPScript - Author Limit
- From: James Kerwin <jkerwin2101@gmail.com>
- [EP-tech] EPScript - Author Limit
- Prev by Date: Re: [EP-tech] EPScript - Author Limit
- Next by Date: Re: [EP-tech] EPScript - Author Limit
- Previous by thread: [EP-tech] Sort view with creators_name and corp_creators
- Index(es):