<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.eprints.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Robert.berry%40liverpool.ac.uk</id>
	<title>EPrints Documentation - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.eprints.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Robert.berry%40liverpool.ac.uk"/>
	<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/Special:Contributions/Robert.berry@liverpool.ac.uk"/>
	<updated>2026-06-06T07:57:23Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.8</generator>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=Change_Deposit_Status_in_Bulk&amp;diff=10539</id>
		<title>Change Deposit Status in Bulk</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=Change_Deposit_Status_in_Bulk&amp;diff=10539"/>
		<updated>2012-06-20T08:57:37Z</updated>

		<summary type="html">&lt;p&gt;Robert.berry@liverpool.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Management]]&lt;br /&gt;
&lt;br /&gt;
At times it may be useful for you to move a large number of deposits from &amp;quot;User Workarea&amp;quot; to &amp;quot;Live Archive&amp;quot;. While you could do this manually using the Web interface one-by-one, this could be a very time-consuming process.&lt;br /&gt;
&lt;br /&gt;
The following [http://files.eprints.org/777/ plug in] allows you to do this from the command line. Otherwise, execute the following update command in MySQL:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 UPDATE eprint SET eprint_status=&amp;quot;archive&amp;quot; WHERE userid=3 AND eprint_status=&amp;quot;inbox&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 UPDATE eprint SET eprint_status=&amp;quot;archive&amp;quot; WHERE eprintid &amp;lt; 101&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
depending on the criteria that identifies the deposits you want to change.&lt;br /&gt;
&lt;br /&gt;
Then you will need to run &amp;lt;tt&amp;gt;generate_abstracts&amp;lt;/tt&amp;gt; in order for the deposited items to have an abstract page:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 /opt/eprints3/bin/generate_abstracts &amp;lt;archive_id&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now your items should be available from the repository.&lt;/div&gt;</summary>
		<author><name>Robert.berry@liverpool.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=User:Robert.berry@liverpool.ac.uk&amp;diff=10485</id>
		<title>User:Robert.berry@liverpool.ac.uk</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=User:Robert.berry@liverpool.ac.uk&amp;diff=10485"/>
		<updated>2012-05-03T15:22:23Z</updated>

		<summary type="html">&lt;p&gt;Robert.berry@liverpool.ac.uk: Created page with 'I work at the University of Liverpool on their institutional repository.'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I work at the University of Liverpool on their institutional repository.&lt;/div&gt;</summary>
		<author><name>Robert.berry@liverpool.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=How_to_write_plugins&amp;diff=10484</id>
		<title>How to write plugins</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=How_to_write_plugins&amp;diff=10484"/>
		<updated>2012-05-03T15:20:54Z</updated>

		<summary type="html">&lt;p&gt;Robert.berry@liverpool.ac.uk: /* Screen Plugin */ - adding links to the existing tutorials, I didn't know they existed.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Plugins]]&lt;br /&gt;
[[Category:Contribute]]&lt;br /&gt;
&lt;br /&gt;
== What is a Plugin? ==&lt;br /&gt;
&lt;br /&gt;
The plugin system for EPrints 3 has been developed to make it easy and share the most common extensions to the code without having to hack the core system (and causing yourself problems with upgrades etc.)&lt;br /&gt;
&lt;br /&gt;
Plugins are a way to make functionality easy to maintain and transfer. If you make any customizations to your repository other than metadata and appearence changes then you will probably want to write a plugin.&lt;br /&gt;
&lt;br /&gt;
== You will need ==&lt;br /&gt;
* A basic understanding of perl (dont be scared - its not hard and theres plenty of tutorials on the web)&lt;br /&gt;
&lt;br /&gt;
* An EPrints installation to play about on. A Virtual box with [[:Category:Installation|EPrints installed]] is ideal.&lt;br /&gt;
&lt;br /&gt;
* Information from the [[:Category:API|EPrints API]]&lt;br /&gt;
&lt;br /&gt;
* For some types of plugin you might also find some Javascript and CSS knowledge helpful.&lt;br /&gt;
&lt;br /&gt;
== Write a Plugin! ==&lt;br /&gt;
&lt;br /&gt;
When the system loads, it automatically loads all modules in the archives/ARCHIVE_ID/cfg/plugins/EPrints/Plugin/ directory, so for simple plugins you just drop them in that directory and you're done!&lt;br /&gt;
&lt;br /&gt;
When a plugin is loaded it has a registration method which is called which tells the core EPrints system what this plugin does. EPrints then makes it available as appropriate.&lt;br /&gt;
&lt;br /&gt;
Clever plugins can detect features they need and adapt to use the tools available, or disable themselves if they are missing required tools (rather than crash the system). Some specialised plugins are disabled in their default state and must be enabled in the repository configuration.&lt;br /&gt;
&lt;br /&gt;
Another cool thing is that plugins are Perl Objects, which means you can subclass them. Here's an real-world example: We have a research group which uses BibTeX but over the years standardised within the group on an extra field. This is not a valid bibtex field, but are essential to their working because they have ancient and essential scripts which depend on it. To handle this we can subclass the default BibTeX Export plugin and override a single method (the data mapping one). We then just call the original parent plugins mapping method to do all the heavy lifting, then just add our non-standard extra field. Total code required: less than one screen. Number of happy researchers: none (they are never satisfied), but number of researchers able to get their work done: lots. Don't believe me? [[BibTeX Extension Example|look here]]!&lt;br /&gt;
&lt;br /&gt;
* See also [[Extension Packages]] for how to add configuration and resource files to plugins.&lt;br /&gt;
&lt;br /&gt;
=== Types of Plugin ===&lt;br /&gt;
&lt;br /&gt;
There are a number of different kinds of plugin for EPrints. You can find a comprehensive list of [[Perl_lib/EPrints/Plugin/|types of plugins here]]. The most of common of those are... &lt;br /&gt;
&lt;br /&gt;
==== Export Plugin ====&lt;br /&gt;
&lt;br /&gt;
These are used to export the data in a variety of formats. A number of tutorials have been created to help you create your own export plugins:&lt;br /&gt;
&lt;br /&gt;
* [[Contribute:_Plugins/ExportPluginsHello| Export Plugin Tutorial 1: &amp;quot;Hello, World!&amp;quot;]]&lt;br /&gt;
* [[Contribute:_Plugins/ExportPluginsList| Export Plugin Tutorial 2: List handling]]&lt;br /&gt;
* [[Contribute:_Plugins/ExportPluginsHTML| Export Plugin Tutorial 3: HTML]]&lt;br /&gt;
* [[Contribute:_Plugins/ExportPluginsExcel| Export Plugin Tutorial 4: Excel]]&lt;br /&gt;
* [[Contribute:_Plugins/ExportPluginsZip| Export Plugin Tutorial 5: Zip]]&lt;br /&gt;
&lt;br /&gt;
==== Import Plugin ====&lt;br /&gt;
&lt;br /&gt;
These are used to import data into a repository. They can take datafiles directly, or they can take an ID of a record that can be retrieved in a known way, or a URL of a file, or... whatever.&lt;br /&gt;
&lt;br /&gt;
These are a bit trickier to write than export plugins as parsing data is harder than just &amp;quot;print&amp;quot;ing it, but they are still reasonably straight forward. To get you started a small selection of tutorials has been written:&lt;br /&gt;
&lt;br /&gt;
* [[Contribute:_Plugins/ImportPluginsCSV| Import Plugin Tutorial 1: CSV]]&lt;br /&gt;
* [[Contribute:_Plugins/ImportPluginsAWS| Import Plugin Tutorial 2: Amazon Web Services]]&lt;br /&gt;
&lt;br /&gt;
==== Screen Plugin ====&lt;br /&gt;
&lt;br /&gt;
These handle (almost) all the user interface screens. Pages like &amp;quot;Review&amp;quot; and &amp;quot;Profile&amp;quot; are just built-in plugins. You can add your own very easily. &lt;br /&gt;
&lt;br /&gt;
Examples you could create...&lt;br /&gt;
* Birds Eye View - a view of various statistics on the database, all in one page.&lt;br /&gt;
* Spellchecking Tab - an additional tab in the item control page which checks the spelling on certain fields.&lt;br /&gt;
* Bulk Delete tool - a tool which takes a list of eprintid's and deletes them all in a fell swoop.&lt;br /&gt;
&lt;br /&gt;
Look at the existing Screen Plugins for an idea of how they work. They can be very simple.&lt;br /&gt;
&lt;br /&gt;
* [[How to make a Screen for the Admin Section]]&lt;br /&gt;
* [[How to make a Screen perform Actions]]&lt;br /&gt;
&lt;br /&gt;
==== Input Component Plugin ====&lt;br /&gt;
&lt;br /&gt;
These handle how the workflow components are rendered. Built in components include the default (one field) component, the multiple fields component, the upload component, the subject component (which does pretty things to a field of type &amp;quot;subject&amp;quot;) and the XHTML component. You can add your own or sub-class existing ones.&lt;br /&gt;
&lt;br /&gt;
==== Convert Plugin ====&lt;br /&gt;
&lt;br /&gt;
These are used for two things, currently.&lt;br /&gt;
&lt;br /&gt;
* Converting the full text of documents into utf-8 text for search indexing&lt;br /&gt;
* Converting images and pdfs into thumbnails and previews&lt;br /&gt;
&lt;br /&gt;
Some examples you could create:&lt;br /&gt;
&lt;br /&gt;
* RTF to utf-8 to allow rich text documents to be indexed.&lt;br /&gt;
* Powerpoint to Thumbnail to allow thumbnail and previews of powerpoint slides&lt;br /&gt;
* Video to Thumbnail/Preview to make a still preview of a video file.&lt;br /&gt;
&lt;br /&gt;
== What next ==&lt;br /&gt;
Try out some of the examples and see where you get to. If you hit problems you can always talk to EP-Tech. {{EPrintsTech}}.&lt;br /&gt;
&lt;br /&gt;
Go take a look at [[Extension Packages]] for a bit more about how you can make your plugins richer.&lt;br /&gt;
&lt;br /&gt;
Its probably a good a idea to look at [[Tips to write plugins|some tips]]. It will help you write better plugins.&lt;br /&gt;
&lt;br /&gt;
Probably the best place you can go is your own perl_lib/EPrints/Plugin directory and have a look at some of similar cases. Or to [http://files.eprints.org http://files.eprints.org] to take a look at other peoples plugins.&lt;br /&gt;
&lt;br /&gt;
If you've written a plugin and you're happy with it the EPrints Team encourages you to share it with the EPrints community at [http://files.eprints.org http://files.eprints.org]. If nothing else its a good place to store your code for future use. You might even get some valuable feed back.&lt;/div&gt;</summary>
		<author><name>Robert.berry@liverpool.ac.uk</name></author>
		
	</entry>
</feed>