Personalizzare ePrints – Aggiungere nuovi campi

Se avete, ad esempio, la necessità di aggiungere un nuovo campo (ad esempio distinguere se un brevetto è nazionale o internazionale) dovete fare alcune modifiche non proprio banali. La guida è anche sul Wiki di ePrints ed i passi sono i seguenti:

1) Aggiungete la definizione nel file cfg/cfg.d/eprint_fields.pm:

{
‘name’ => ‘patent_type’,
‘type’ => ‘set’,
‘options’ => [
‘nazionale’,
‘internazionale’,
],
‘input_style’ => ‘medium’,
},

In questo caso ho aggiunto la possibilità di definire un brevetto (patent) nazionale o internazionale.

2) Aggiungete le frasi nel relativo file di lingua cfg/lang/it/phrases/eprint_fields.xml

<epp:phrase id=”eprint_fieldname_patent_type”>Tipo brevetto</epp:phrase>
<epp:phrase id=”eprint_fieldhelp_patent_type”></epp:phrase>
<epp:phrase id=”eprint_fieldopt_patent_type_nazionale”>Nazionale</epp:phrase>
<epp:phrase id=”eprint_fieldopt_patent_type_internazionale”>Internazionale</epp:phrase>

3) Aggiungete il campo alle tabelle “eprint” :

patent_type VARCHAR(255)

e “eprint__ordervalues_it“:

patent_type TEXT

4) Adesso potete aggiungere il nuovo campo alla lista dei possibili indici per le ricerche avanzate. Editate il file cfg/cfg.d/eprint_search_advanced.pl:

search_fields => [

{ meta_fields => [ “patent_type” ] },

],

5) Adesso aggiungete il nuovo campo al workflow nel file cfg/workflows/eprint/default.xml:

<epc:if test=”type = ‘patent'”><component><field ref=”patent_type” required=”yes” /></component></epc:if>

6) Aggiornate ePrints e riavviate Apache:

./bin/epadmin update_database_structure ARCHIVEID
apachectl restart

il risultato sarà questo (nel wordkflow dei Brevetti, ovviamente):

screenshot106oltre ad avere anche, nella ricerca avanzata, la relativa opzione di ricerca:

screenshot107

2 comments
  1. Inserirsi in una discussione a distanza di 8 anni … probabilmente ti starai occupando di tutt’altro!
    Per la mia biblioteca sto cercando di utilizzare eprints per conservare e indicizzare le tesi di magistrale e della scuola di specializzazione. Sono bibliotecario (digiuno di perl … sob) e devo dire che il wiki di eprints non è il più semplice da compulsare: queste tue pillole sono molto interessanti!
    Per la traduzione ho usato i file che ho trovato qua: http://files.eprints.org/409/; a cura di Stefano Pittau (che ringrazio).
    Ora sto sbattendo la testa non tanto per aggiungere campi, quanto per crearmi una tipologia Tesi ad hoc, con molti meno campi di quella di default! Eliminando tra gli altri, a esempio, il campo .

    Per sfrondare devo agire sugli stessi file che tu usi per aggiungere?
    Grazie per le indicazioni che potrai darmi, ammesso che tu abbia ancora volglia di occuparti di eprints!
    Mario

    1. Salve Mario, in effetti non mi occupo più di ePrints da circa 5 anni, avendo cambiato ufficio (ora mi occupo di VoIP e telefonia). Ho pertanto difficoltà a darti una indicazione giusta ma, a naso, credo che puoi rimuovere le definizioni che non ti servono (mantenendo una copia di backup dei file !) e fare delle prove.

      Buona fortuna !
      Michele

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.