EPrints Technical Mailing List Archive

Message: #04540

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

[EP-tech] Re: Per user-group workflow and permissions

Hi George

There isn't really a way to review changes to records, though this has been discussed a number of times, and that would really be the ideal solution (i.e. let any user suggest changes to any record, and those changes need to have editorial oversight before they're applied).

I would say that if you want to provide a different piece of functionality, it may be worth looking at writing a new plugin.  I think it should be quite simple if you subclass the EPrint::Edit screen plugin.  You'll need to:

Create a new workflow file
Write a 'new' function that called the superclass 'new', and then sets 'appears' and an icon.
Write a 'can_be_viewed' function that takes your new role and the associated permissions into account.
Write a 'workflow_id' function, that returns the filename of your new workflow
Create phrases, and an icon if necessary.

Check out:

Best Wishes

Adam Field
Business Relationship Manager and Community Lead
EPrints Services

I am currently not working in the UK.  Due to timezone differences (GMT -9) email responses may take longer.

On 27 Jul 2015, at 17:33, George Mamalakis <mamalos@eng.auth.gr> wrote:


To reply to my problem, our previous repository has the author-field in
every record, so I'll be able to map an EPrints user to one or more
author names, which will help me to address this issue.

Now my basic question is as follows: If I create a specific role that
will be used to generate the minimalistic workflow I explained in my
previous email, what is the best way of incorporating it with EPrints?
OK, I obviously know I can change the cfg/workflow/eprint/default.xml
directly, but this will make upgrading my repository even harder.

Thanks all in advance,


On 23/07/2015 05:18 μμ, George Mamalakis wrote:
Hello everybody!

In our previous repository (DSpace) there are many entries of
faculty-members' publications that contain only some metadata, and no
manuscript is uploaded. The library staff needs a process in EPrints
that will allow faculty members to *easily* update these deposits with
the related manuscripts, and optionally fill-in some metadata as well.
After updating these deposits, editors will review them and make them
publicly available if everything is OK. Next, the faculty-members will
have to be able to make additional changes, if needed. Of course,
faculty will have to be able to deposit new stuff as well.

My proposal to them was to create a "group of users" (for faculty
members) using a custom role, where a simple workflow will be presented
to users belonging to this group, by applying the appropriate
conditionals in the eprints' workflow.

What worries me is that I am not sure how this will work with
permissions. In DSpace, the records have been mainly uploaded by library
staff members, so when migrating the deposits, I'm not sure that I'll be
able to assign an EPrints user to each one of them. OK, I'm thinking of
mapping a citation pattern for each EPrints user and maybe find each
deposit's "owner" based on DSpace's citation field (if exists), but I'm
not sure that the appropriate information will be available in DSpace.
OK, I may have to search other resources as well (eg. Google scholar),
but this complicates things even more. So if I am unable to find an
appropriate user during migration, I'll have to come up with a more
generic solution.

Such a solution would be to maybe add all these deposits in a specific
collection (a custom field I added), in a different dataset than
archive, where the specific user group will be able to somehow edit all
eprints belonging to this collection, and once they deposit it, the
reviewer will -somehow- declare the owner and publish it if everything
is OK.

A combination of both alternatives would also probably fit the problem...

I am not sure if my alternatives are feasible in EPrints, I just hope to
find a solution for this requirement, because it's very crucial.

Maybe a much easier solution is around and I'm not seeing it, so any
help would be greatly appreciated!

Thanks all in advance,


George Mamalakis

IT and Security Officer,
Electrical and Computer Engineer (Aristotle Univ. of Thessaloniki),
PhD (Aristotle Univ. of Thessaloniki),
MSc (Imperial College of London)

School of Electrical and Computer Engineering
Aristotle University of Thessaloniki

phone number : +30 (2310) 994379

*** 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/