Skip to content

GaziYucel/pidManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

PID Manager Plugin

PID Manager for OJS

Project Status: Active – The project has reached a stable, usable state and is being actively developed.

Features

IGSN

  • Manual adding sample PIDs and labels
  • Allows suggesting PIDs and Labels from DataCite
    • Marks samples already added
  • Add PIDs as a csv
    • Reject duplicates

PIDINST

  • Manual adding sample PIDs and labels
  • Allows suggesting PIDs and Labels from DataCite
    • Marks samples already added
  • Add PIDs as a csv
    • Reject duplicates

Screenshot(s) / screen recording(s)

screenrecording.gif

IGSN PIDINST
igsn-screenshot.png pidinst-screenshot.png

Install and configure the plugin

Requirements

  • PHP 8.0+

Install with Git

Get the correct version for your OJS version:

  • branch main: development version, don't use for production
  • branch stable-3_5_0: use this version for OJS version 3.5.0.x
  • branch stable-3_4_0: use this version for OJS version 3.4.0.x
  • branch stable-3_3_0: use this version for OJS version 3.3.0.x

Install via direct download

  • Download release for your OJS version. Note the correct version for you OJS version.
  • Alternatively, download the code with the option 'Download ZIP'. Note the correct branch for your OJS version.
  • Extract the downloaded file to /plugins/generic/pidManager.

Configuration of the plugin

  • Login in your OJS instance as an Administrator or Manager
  • Navigate to Website > Plugins > Installed Plugins > Generic Plugins > PID Manager
  • Activate the plugin by clicking the checkbox
  • Click on 'Settings'
  • Activate all PIDs you want to use

Development

Structure

.
├─ .github                       # Github specific
├─ .project                      # Project related files
├─ assets                        # Styles, images, javascript files
├─ classes                       # Models, classes
├─ locale                        # Language files
├─ public                        # Build files VueJs
├─ registry                      # Generated by localize
├─ resources                     # Source files VueJs
├─ templates                     # Templates folder
├─ .gitignore                    # Git ignore file
├─ composer.json                 # Composer configuration file
├─ LICENSE                       # License file
├─ package.json                  # Npm configuration file
├─ PidManagerPlugin.php          # Main class of plugin
├─ README.md                     # This file
├─ vite.config.*.js              # Vite configuration file(s)
└─ version.xml                   # Version information of the plugin

Notes

  • OJS 3.3.0
    • Loading of the classes in the folder classes is done with composer classmap.
    • If you add or remove classes in this folder, run the following command to update the autoload files: composer dump-autoload -o.
    • Running composer install -o or composer update -o will also generate the autoload files.
    • The -o option generates the optimised files ready for production.
  • OJS 3.4.0+
    • Loading of classes depends on PSR-4.
    • No composer.json file or vendor directory is needed.

Data models

IGSN

De IGSN's are saved in the publication_settings as an array of IGSN data models in the form of an JSON blob.

name description
doi Persistent identifier of the sample
label Label of the sample
creators Creator(s) of the sample
publisher Publisher of the sample
publicationYear Publication year of the sample
[
  {
    'doi': '10.60792/qda014666',
    'label': 'Plant Voucher Specimen QDA014666',
    'creators': 'TERN Ecosystem Surveillance',
    'publisher': 'Terrestrial Ecosystem Research Network (TERN)',
    'publicationYear': '2025'
  },
  ...
]

PIDINST

De PIDINST's are saved in the publication_settings as an array of PIDINST data models in the form of an JSON blob.

name description
doi Persistent identifier of the instrument
label Label of the instrument
creators Creator(s) of the sample
publisher Publisher of the sample
publicationYear Publication year of the sample
[
  {
    'doi': '10.5286/isis.instrument.1189',
    'label': 'CHRONUS',
    'creators': 'ISIS Neutron and Muon Source',
    'publisher': 'Science and Technology Facilities Council',
    'publicationYear': '2025'
  },
  ...
]

Contribute

All help is welcome: asking questions, providing documentation, testing, or even development.

How to contribute

  • Fork the repository
  • Create a feature branch in your fork
  • Make your changes
  • Open a PR with your changes

License

This project is published under GNU General Public License, Version 3.

About

PID Manager for OJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published