Skip to content

Commit

Permalink
pkp/pkp-lib#9925 add license data to Onix export
Browse files Browse the repository at this point in the history
  • Loading branch information
kaitlinnewson committed Aug 2, 2024
1 parent 0e28547 commit 5250c8b
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion plugins/importexport/onix30/filter/MonographONIX30XmlFilter.php
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,28 @@ public function createProductNode($doc, $submission, $publicationFormat)
$descDetailNode->appendChild($this->_buildTextNode($doc, 'EpubTechnicalProtection', $publicationFormat->getTechnicalProtectionCode()));
}

/* --- License information --- */

$publication = $submission->getCurrentPublication();

if ($publication->isCCLicense()) {
$licenseOpts = Application::getCCLicenseOptions();
$licenseUrl = $publication->getData('licenseUrl');
if (array_key_exists($licenseUrl, $licenseOpts)) {
$licenseName = (__($licenseOpts[$licenseUrl], [], $publication->getData('locale')));

$epubLicenseNode = $doc->createElementNS($deployment->getNamespace(), 'EpubLicense');
$descDetailNode->appendChild($epubLicenseNode);
$epubLicenseNode->appendChild($this->_buildTextNode($doc, 'EpubLicenseName', $licenseName));

$epubLicenseExpressionNode = $doc->createElementNS($deployment->getNamespace(), 'EpubLicenseExpression');
$epubLicenseNode->appendChild($epubLicenseExpressionNode);

$epubLicenseExpressionNode->appendChild($this->_buildTextNode($doc, 'EpubLicenseExpressionType', '02'));
$epubLicenseExpressionNode->appendChild($this->_buildTextNode($doc, 'EpubLicenseExpressionLink', $licenseUrl));
}
}

/* --- Collection information, first for series and then for product --- */

/* --- Series information, if this monograph is part of one. --- */
Expand Down Expand Up @@ -303,7 +325,6 @@ public function createProductNode($doc, $submission, $publicationFormat)

$productTitleDetailNode->appendChild($titleElementNode);

$publication = $submission->getCurrentPublication();
if (!$publication->getLocalizedData('prefix') || !$publication->getLocalizedData('title')) {
$titleElementNode->appendChild($this->_buildTextNode($doc, 'TitleText', trim($publication->getLocalizedData('prefix') ?? $publication->getLocalizedTitle())));
} else {
Expand Down

0 comments on commit 5250c8b

Please sign in to comment.