Difference between revisions of "Miscellaneous Config Options/get users owned eprints"

From EPrints Documentation
Jump to: navigation, search
(Added example)
 
(Example)
Line 1: Line 1:
 +
This example should work with v3.4.6+.
 +
 +
Prior to v3.4.6 defining this method resulted in unexpected behaviour when eprint_status checkboxes were used on the ''Manage deposits'' page.
 +
 
== Example ==
 
== Example ==
 
  $c->{get_users_owned_eprints} = sub  
 
  $c->{get_users_owned_eprints} = sub  

Revision as of 14:33, 26 July 2024

This example should work with v3.4.6+.

Prior to v3.4.6 defining this method resulted in unexpected behaviour when eprint_status checkboxes were used on the Manage deposits page.

Example

$c->{get_users_owned_eprints} = sub 
{
    my( $session, $user, %opts ) = @_;
    # for non-editorial accounts, return the normal list
    if( $user->get_type ne "editor" )
    {
        return $user->owned_eprints_list_actual( %opts );
    }
    # only interested in editor accounts now
    # allow editors to see their items, and items from a specific userid e.g. 99999
    my $extra_userid = 99999;
    my $searchexp = $opts{dataset}->prepare_search( %opts );
    $searchexp->add_field( $opts{dataset}->field( "userid" ), $user->id . " $extra_userid", "IN", "ANY" );
    return $searchexp->perform_search;
};