first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-06-08 17:09:23 -04:00
commit df3a033196
17887 changed files with 8637778 additions and 0 deletions
@@ -0,0 +1,102 @@
<?php
/**
* @file plugins/importexport/native/NativeImportExportDeployment.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeImportExportDeployment
*
* @ingroup plugins_importexport_native
*
* @brief Class configuring the native import/export process to this
* application's specifics.
*/
namespace APP\plugins\importexport\native;
use APP\core\Application;
use APP\issue\Issue;
class NativeImportExportDeployment extends \PKP\plugins\importexport\native\PKPNativeImportExportDeployment
{
public $_issue;
//
// Deployment items for subclasses to override
//
/**
* Get the submission node name
*
* @return string
*/
public function getSubmissionNodeName()
{
return 'article';
}
/**
* Get the submissions node name
*
* @return string
*/
public function getSubmissionsNodeName()
{
return 'articles';
}
/**
* Get the representation node name
*/
public function getRepresentationNodeName()
{
return 'article_galley';
}
/**
* Get the schema filename.
*
* @return string
*/
public function getSchemaFilename()
{
return 'native.xsd';
}
/**
* Set the import/export issue.
*
* @param Issue $issue
*/
public function setIssue($issue)
{
$this->_issue = $issue;
}
/**
* Get the import/export issue.
*
* @return Issue
*/
public function getIssue()
{
return $this->_issue;
}
/**
* @see PKPNativeImportExportDeployment::getObjectTypes()
*/
protected function getObjectTypes()
{
return parent::getObjectTypes() + [
Application::ASSOC_TYPE_JOURNAL => __('context.context'),
Application::ASSOC_TYPE_ISSUE => __('issue.issue'),
Application::ASSOC_TYPE_ISSUE_GALLEY => __('editor.issues.galley'),
Application::ASSOC_TYPE_PUBLICATION => __('common.publication'),
Application::ASSOC_TYPE_GALLEY => __('submission.galley'),
];
}
}
@@ -0,0 +1,174 @@
<?php
/**
* @file plugins/importexport/native/NativeImportExportPlugin.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeImportExportPlugin
*
* @ingroup plugins_importexport_native
*
* @brief Native XML import/export plugin
*/
namespace APP\plugins\importexport\native;
use APP\facades\Repo;
use APP\template\TemplateManager;
use PKP\plugins\importexport\native\PKPNativeImportExportDeployment;
class NativeImportExportPlugin extends \PKP\plugins\importexport\native\PKPNativeImportExportPlugin
{
/**
* @see ImportExportPlugin::display()
*/
public function display($args, $request)
{
parent::display($args, $request);
if ($this->isResultManaged) {
if ($this->result) {
return $this->result;
}
return false;
}
$templateMgr = TemplateManager::getManager($request);
switch ($this->opType) {
case 'exportIssuesBounce':
return $this->getBounceTab(
$request,
__('plugins.importexport.native.export.issues.results'),
'exportIssues',
['selectedIssues' => $request->getUserVar('selectedIssues')]
);
case 'exportIssues':
$selectedEntitiesIds = (array) $request->getUserVar('selectedIssues');
$deployment = $this->getDeployment();
$this->getExportIssuesDeployment($selectedEntitiesIds, $deployment);
return $this->getExportTemplateResult($deployment, $templateMgr, 'issues');
default:
$dispatcher = $request->getDispatcher();
$dispatcher->handle404();
}
}
/**
* Get the issues and proceed to the export
*
* @param array $issueIds Array of issueIds to export
* @param PKPNativeImportExportDeployment $deployment
* @param array $opts
*/
public function getExportIssuesDeployment($issueIds, &$deployment, $opts = [])
{
$issues = [];
foreach ($issueIds as $issueId) {
$issue = Repo::issue()->get($issueId);
$issue = $issue->getJournalId() == $deployment->getContext()->getId() ? $issue : null;
if ($issue) {
$issues[] = $issue;
}
}
$deployment->export('issue=>native-xml', $issues, $opts);
}
/**
* Get the XML for a set of issues.
*
* @param array $issueIds
* @param \PKP\context\Context $context
* @param \PKP\user\User $user
* @param array $opts
*
* @return string XML contents representing the supplied issue IDs.
*/
public function exportIssues($issueIds, $context, $user, $opts = [])
{
$deployment = new NativeImportExportDeployment($context, $user);
$this->getExportIssuesDeployment($issueIds, $deployment, $opts);
return $this->exportResultXML($deployment);
}
/**
* @see PKPNativeImportExportPlugin::getImportFilter
*/
public function getImportFilter($xmlFile)
{
$filter = 'native-xml=>issue';
// is this articles import:
$xmlString = file_get_contents($xmlFile);
$document = new \DOMDocument('1.0', 'utf-8');
$document->loadXml($xmlString);
if (in_array($document->documentElement->tagName, ['article', 'articles'])) {
$filter = 'native-xml=>article';
}
return [$filter, $xmlString];
}
/**
* @see PKPNativeImportExportPlugin::getExportFilter
*/
public function getExportFilter($exportType)
{
$filter = 'issue=>native-xml';
if ($exportType == 'exportSubmissions') {
$filter = 'article=>native-xml';
}
return $filter;
}
/**
* @see PKPNativeImportExportPlugin::getAppSpecificDeployment
*/
public function getAppSpecificDeployment($context, $user)
{
return new NativeImportExportDeployment($context, $user);
}
/**
* @see PKPImportExportPlugin::executeCLI()
*/
public function executeCLI($scriptName, &$args)
{
$result = parent::executeCLI($scriptName, $args);
if ($result) {
return $result;
}
$cliDeployment = $this->cliDeployment;
$deployment = $this->getDeployment();
switch ($cliDeployment->command) {
case 'export':
switch ($cliDeployment->exportEntity) {
case 'issue':
case 'issues':
$this->getExportIssuesDeployment(
$cliDeployment->args,
$deployment,
$cliDeployment->opts
);
$this->cliToolkit->getCLIExportResult($deployment, $cliDeployment->xmlFile);
$this->cliToolkit->getCLIProblems($deployment);
return true;
}
}
$this->usage($scriptName);
}
}
+11
View File
@@ -0,0 +1,11 @@
# Native Import/Export Plugin
## Documentation
See https://docs.pkp.sfu.ca/admin-guide/en/data-import-and-export#native-xml-plugin
for documentation.
## Sample XML
Sample XML can be found in https://github.com/pkp/ojs/blob/[tag]/cypress/fixtures/export-issues.xml,
where [tag] indicates your version of OJS, e.g.: 3_2_1-0 for OJS 3.1.2-0.
@@ -0,0 +1,59 @@
<?php
/**
* @file plugins/importexport/native/filter/ArticleGalleyNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class ArticleGalleyNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts an Galley to a Native XML document.
*/
namespace APP\plugins\importexport\native\filter;
use APP\facades\Repo;
use PKP\submission\Representation;
class ArticleGalleyNativeXmlFilter extends \PKP\plugins\importexport\native\filter\RepresentationNativeXmlFilter
{
//
// Extend functions in RepresentationNativeXmlFilter
//
/**
* Create and return a representation node. Extend the parent class
* with publication format specific data.
*
* @param \DOMDocument $doc
* @param Representation $representation
*
* @return \DOMElement
*/
public function createRepresentationNode($doc, $representation)
{
$representationNode = parent::createRepresentationNode($doc, $representation);
$representationNode->setAttribute('approved', $representation->getIsApproved() ? 'true' : 'false');
return $representationNode;
}
/**
* Get the available submission files for a representation
*
* @param Representation $representation
*
* @return array
*/
public function getFiles($representation)
{
$galleyFiles = [];
if ($representation->getData('submissionFileId')) {
$galleyFiles = [Repo::submissionFile()->get($representation->getData('submissionFileId'))];
}
return $galleyFiles;
}
}
@@ -0,0 +1,42 @@
<?php
/**
* @file plugins/importexport/native/filter/ArticleNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class ArticleNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Article to a Native XML document.
*/
namespace APP\plugins\importexport\native\filter;
use APP\submission\Submission;
use DOMElement;
class ArticleNativeXmlFilter extends \PKP\plugins\importexport\native\filter\SubmissionNativeXmlFilter
{
//
// Submission conversion functions
//
/**
* Create and return a submission node.
*
* @param \DOMDocument $doc
* @param Submission $submission
*
* @return DOMElement
*/
public function createSubmissionNode($doc, $submission)
{
$deployment = $this->getDeployment();
$submissionNode = parent::createSubmissionNode($doc, $submission);
return $submissionNode;
}
}
@@ -0,0 +1,21 @@
<?php
/**
* @file plugins/importexport/native/filter/AuthorNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class AuthorNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Author to a Native XML document.
*/
namespace APP\plugins\importexport\native\filter;
class AuthorNativeXmlFilter extends \PKP\plugins\importexport\native\filter\PKPAuthorNativeXmlFilter
{
}
@@ -0,0 +1,156 @@
<?php
/**
* @file plugins/importexport/native/filter/IssueGalleyNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class IssueGalleyNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Base class that converts a set of issue galleys to a Native XML document
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\file\IssueFileManager;
use APP\issue\IssueFileDAO;
use APP\issue\IssueGalley;
use DOMDocument;
use DOMElement;
use PKP\db\DAORegistry;
use PKP\filter\FilterGroup;
class IssueGalleyNativeXmlFilter extends \PKP\plugins\importexport\native\filter\NativeExportFilter
{
/**
* Constructor
*
* @param FilterGroup $filterGroup
*/
public function __construct($filterGroup)
{
$this->setDisplayName('Native XML issue galley export');
parent::__construct($filterGroup);
}
//
// Implement template methods from Filter
//
/**
* @see Filter::process()
*
* @param array $issueGalleys Array of issue galleys
*
* @return \DOMDocument
*/
public function &process(&$issueGalleys)
{
// Create the XML document
$doc = new DOMDocument('1.0', 'utf-8');
$doc->preserveWhiteSpace = false;
$doc->formatOutput = true;
$deployment = $this->getDeployment();
$rootNode = $doc->createElementNS($deployment->getNamespace(), 'issue_galleys');
foreach ($issueGalleys as $issueGalley) {
if ($issueGalleyNode = $this->createIssueGalleyNode($doc, $issueGalley)) {
$rootNode->appendChild($issueGalleyNode);
}
}
$doc->appendChild($rootNode);
$rootNode->setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance');
$rootNode->setAttribute('xsi:schemaLocation', $deployment->getNamespace() . ' ' . $deployment->getSchemaFilename());
return $doc;
}
//
// Submission conversion functions
//
/**
* Create and return an issueGalley node.
*/
public function createIssueGalleyNode(DOMDocument $doc, IssueGalley $issueGalley): ?DOMElement
{
// Create the root node and attributes
$deployment = $this->getDeployment();
$issueGalleyNode = $doc->createElementNS($deployment->getNamespace(), 'issue_galley');
$issueGalleyNode->setAttribute('locale', $issueGalley->getLocale());
$issueGalleyNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'label', htmlspecialchars($issueGalley->getLabel(), ENT_COMPAT, 'UTF-8')));
$this->addIdentifiers($doc, $issueGalleyNode, $issueGalley);
if (!$this->addFile($doc, $issueGalleyNode, $issueGalley)) {
return null;
}
return $issueGalleyNode;
}
/**
* Add the issue file to its DOM element.
*/
public function addFile(DOMDocument $doc, DOMElement $issueGalleyNode, IssueGalley $issueGalley): bool
{
$issueFileDao = DAORegistry::getDAO('IssueFileDAO'); /** @var IssueFileDAO $issueFileDao */
$issueFile = $issueFileDao->getById($issueGalley->getFileId());
if (!$issueFile) {
return false;
}
$issueFileManager = new IssueFileManager($issueGalley->getIssueId());
$filePath = $issueFileManager->getFilesDir() . '/' . $issueFileManager->contentTypeToPath($issueFile->getContentType()) . '/' . $issueFile->getServerFileName();
$deployment = $this->getDeployment();
if (!file_exists($filePath)) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE_GALLEY, $issueGalley->getId(), __('plugins.importexport.common.error.issueGalleyFileMissing', ['id' => $issueGalley->getId(), 'path' => $filePath]));
return false;
}
$issueFileNode = $doc->createElementNS($deployment->getNamespace(), 'issue_file');
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'file_name', htmlspecialchars($issueFile->getServerFileName(), ENT_COMPAT, 'UTF-8')));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'file_type', htmlspecialchars($issueFile->getFileType(), ENT_COMPAT, 'UTF-8')));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'file_size', $issueFile->getFileSize()));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'content_type', htmlspecialchars($issueFile->getContentType(), ENT_COMPAT, 'UTF-8')));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'original_file_name', htmlspecialchars($issueFile->getOriginalFileName(), ENT_COMPAT, 'UTF-8')));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'date_uploaded', date('Y-m-d', strtotime($issueFile->getDateUploaded()))));
$issueFileNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'date_modified', date('Y-m-d', strtotime($issueFile->getDateModified()))));
$embedNode = $doc->createElementNS($deployment->getNamespace(), 'embed', base64_encode(file_get_contents($filePath)));
$embedNode->setAttribute('encoding', 'base64');
$issueFileNode->appendChild($embedNode);
$issueGalleyNode->appendChild($issueFileNode);
return true;
}
/**
* Create and add identifier nodes to an issue galley node.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueGalleyNode
* @param IssueGalley $issueGalley
*/
public function addIdentifiers($doc, $issueGalleyNode, $issueGalley)
{
$deployment = $this->getDeployment();
// Add internal ID
$issueGalleyNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', $issueGalley->getId()));
$node->setAttribute('type', 'internal');
$node->setAttribute('advice', 'ignore');
// Add public ID
if ($pubId = $issueGalley->getStoredPubId('publisher-id')) {
$issueGalleyNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', htmlspecialchars($pubId, ENT_COMPAT, 'UTF-8')));
$node->setAttribute('type', 'public');
$node->setAttribute('advice', 'update');
}
}
}
@@ -0,0 +1,318 @@
<?php
/**
* @file plugins/importexport/native/filter/IssueNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class IssueNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Base class that converts a set of issues to a Native XML document
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\facades\Repo;
use APP\issue\Issue;
use APP\issue\IssueGalleyDAO;
use APP\plugins\importexport\native\NativeImportExportDeployment;
use APP\plugins\PubIdPlugin;
use Exception;
use PKP\db\DAORegistry;
use PKP\filter\FilterGroup;
use PKP\plugins\importexport\native\filter\SubmissionNativeXmlFilter;
use PKP\plugins\importexport\PKPImportExportFilter;
use PKP\plugins\PluginRegistry;
class IssueNativeXmlFilter extends \PKP\plugins\importexport\native\filter\NativeExportFilter
{
/**
* Constructor
*
* @param FilterGroup $filterGroup
*/
public function __construct($filterGroup)
{
$this->setDisplayName('Native XML issue export');
parent::__construct($filterGroup);
}
//
// Implement template methods from Filter
//
/**
* @see Filter::process()
*
* @param array $issues Array of issues
*
* @return \DOMDocument
*/
public function &process(&$issues)
{
// Create the XML document
$doc = new \DOMDocument('1.0', 'utf-8');
$doc->preserveWhiteSpace = false;
$doc->formatOutput = true;
$deployment = $this->getDeployment();
if (count($issues) == 1) {
// Only one issue specified; create root node
$rootNode = $this->createIssueNode($doc, $issues[0]);
} else {
// Multiple issues; wrap in a <issues> element
$rootNode = $doc->createElementNS($deployment->getNamespace(), 'issues');
foreach ($issues as $issue) {
$rootNode->appendChild($this->createIssueNode($doc, $issue));
}
}
$doc->appendChild($rootNode);
$rootNode->setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance');
$rootNode->setAttribute('xsi:schemaLocation', $deployment->getNamespace() . ' ' . $deployment->getSchemaFilename());
return $doc;
}
//
// Submission conversion functions
//
/**
* Create and return an issue node.
*
* @param \DOMDocument $doc
* @param Issue $issue
*
* @return \DOMElement
*/
public function createIssueNode($doc, $issue)
{
// Create the root node and attributes
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$deployment->setIssue($issue);
$issueNode = $doc->createElementNS($deployment->getNamespace(), 'issue');
$this->addIdentifiers($doc, $issueNode, $issue);
$issueNode->setAttribute('published', (int) $issue->getPublished());
$currentIssue = Repo::issue()->getCurrent($issue->getJournalId());
$isCurrentIssue = $currentIssue != null && $issue->getId() == $currentIssue->getId();
$issueNode->setAttribute('current', (int) $isCurrentIssue);
$issueNode->setAttribute('access_status', $issue->getAccessStatus());
$issueNode->setAttribute('url_path', $issue->getData('urlPath'));
$this->createLocalizedNodes($doc, $issueNode, 'description', $issue->getDescription(null));
$nativeFilterHelper = new NativeFilterHelper();
$issueNode->appendChild($nativeFilterHelper->createIssueIdentificationNode($this, $doc, $issue));
$this->addDates($doc, $issueNode, $issue);
$this->addSections($doc, $issueNode, $issue);
// cover images
$nativeFilterHelper = new NativeFilterHelper();
$coversNode = $nativeFilterHelper->createIssueCoversNode($this, $doc, $issue);
if ($coversNode) {
$issueNode->appendChild($coversNode);
}
$this->addIssueGalleys($doc, $issueNode, $issue);
$this->addArticles($doc, $issueNode, $issue);
return $issueNode;
}
/**
* Create and add identifier nodes to an issue node.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
*/
public function addIdentifiers($doc, $issueNode, $issue)
{
$deployment = $this->getDeployment();
// Add internal ID
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', $issue->getId()));
$node->setAttribute('type', 'internal');
$node->setAttribute('advice', 'ignore');
// Add public ID
if ($pubId = $issue->getStoredPubId('publisher-id')) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', htmlspecialchars($pubId, ENT_COMPAT, 'UTF-8')));
$node->setAttribute('type', 'public');
$node->setAttribute('advice', 'update');
}
// Add pub IDs by plugin
$pubIdPlugins = PluginRegistry::loadCategory('pubIds', true, $deployment->getContext()->getId());
foreach ($pubIdPlugins as $pubIdPlugin) {
$this->addPubIdentifier($doc, $issueNode, $issue, $pubIdPlugin);
}
// Add DOI
if ($doi = $issue->getStoredPubId('doi')) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', htmlspecialchars($doi, ENT_COMPAT, 'UTF-8')));
$node->setAttribute('type', 'doi');
$node->setAttribute('advice', 'update');
}
}
/**
* Add a single pub ID element for a given plugin to the document.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
* @param PubIdPlugin $pubIdPlugin
*
* @return \DOMElement|null
*/
public function addPubIdentifier($doc, $issueNode, $issue, $pubIdPlugin)
{
$pubId = $issue->getStoredPubId($pubIdPlugin->getPubIdType());
if ($pubId) {
$deployment = $this->getDeployment();
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', htmlspecialchars($pubId, ENT_COMPAT, 'UTF-8')));
$node->setAttribute('type', $pubIdPlugin->getPubIdType());
$node->setAttribute('advice', 'update');
return $node;
}
return null;
}
/**
* Create and add various date nodes to an issue node.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
*/
public function addDates($doc, $issueNode, $issue)
{
$deployment = $this->getDeployment();
if ($issue->getDatePublished()) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'date_published', date('Y-m-d', strtotime($issue->getDatePublished()))));
}
if ($issue->getDateNotified()) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'date_notified', date('Y-m-d', strtotime($issue->getDateNotified()))));
}
if ($issue->getLastModified()) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'last_modified', date('Y-m-d', strtotime($issue->getLastModified()))));
}
if ($issue->getOpenAccessDate()) {
$issueNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'open_access_date', date('Y-m-d', strtotime($issue->getOpenAccessDate()))));
}
}
/**
* Create and add articles to an issue node.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
*/
public function addArticles($doc, $issueNode, $issue)
{
/** @var SubmissionNativeXmlFilter */
$currentFilter = PKPImportExportFilter::getFilter('article=>native-xml', $this->getDeployment(), $this->opts);
$currentFilter->setIncludeSubmissionsNode(true);
$submissions = Repo::submission()
->getCollector()
->filterByContextIds([$issue->getJournalId()])
->filterByIssueIds([$issue->getId()])
->getMany()
->toArray();
$articlesDoc = $currentFilter->execute($submissions);
if ($articlesDoc->documentElement instanceof \DOMElement) {
$clone = $doc->importNode($articlesDoc->documentElement, true);
$issueNode->appendChild($clone);
}
}
/**
* Create and add issue galleys to an issue node.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
*/
public function addIssueGalleys($doc, $issueNode, $issue)
{
$currentFilter = PKPImportExportFilter::getFilter('issuegalley=>native-xml', $this->getDeployment());
$issueGalleyDao = DAORegistry::getDAO('IssueGalleyDAO'); /** @var IssueGalleyDAO $issueGalleyDao */
$issues = $issueGalleyDao->getByIssueId($issue->getId());
$issueGalleysDoc = $currentFilter->execute($issues);
if ($issueGalleysDoc && $issueGalleysDoc->documentElement instanceof \DOMElement) {
$clone = $doc->importNode($issueGalleysDoc->documentElement, true);
$issueNode->appendChild($clone);
} else {
$deployment = $this->getDeployment();
$deployment->addError(Application::ASSOC_TYPE_ISSUE, reset($issues)?->getId(), __('plugins.importexport.issueGalleys.exportFailed'));
throw new Exception(__('plugins.importexport.issueGalleys.exportFailed'));
}
}
/**
* Add the sections to the Issue DOM element.
*
* @param \DOMDocument $doc
* @param \DOMElement $issueNode
* @param Issue $issue
*/
public function addSections($doc, $issueNode, $issue)
{
$sections = Repo::section()->getByIssueId($issue->getId());
$deployment = $this->getDeployment();
$journal = $deployment->getContext();
// Boundary condition: no sections in this issue.
if (!count($sections)) {
return;
}
$sectionsNode = $doc->createElementNS($deployment->getNamespace(), 'sections');
foreach ($sections as $section) {
$sectionNode = $doc->createElementNS($deployment->getNamespace(), 'section');
$sectionNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'id', $section->getId()));
$node->setAttribute('type', 'internal');
$node->setAttribute('advice', 'ignore');
if ($section->getReviewFormId()) {
$sectionNode->setAttribute('review_form_id', $section->getReviewFormId());
}
$sectionNode->setAttribute('ref', $section->getAbbrev($journal->getPrimaryLocale()));
$sectionNode->setAttribute('seq', (int) $section->getSequence());
$sectionNode->setAttribute('editor_restricted', (int) $section->getEditorRestricted());
$sectionNode->setAttribute('meta_indexed', (int) $section->getMetaIndexed());
$sectionNode->setAttribute('meta_reviewed', (int) $section->getMetaReviewed());
$sectionNode->setAttribute('abstracts_not_required', (int) $section->getAbstractsNotRequired());
$sectionNode->setAttribute('hide_title', (int) $section->getHideTitle());
$sectionNode->setAttribute('hide_author', (int) $section->getHideAuthor());
$sectionNode->setAttribute('abstract_word_count', (int) $section->getAbstractWordCount());
$this->createLocalizedNodes($doc, $sectionNode, 'abbrev', $section->getAbbrev(null));
$this->createLocalizedNodes($doc, $sectionNode, 'policy', $section->getPolicy(null));
$this->createLocalizedNodes($doc, $sectionNode, 'title', $section->getTitle(null));
$sectionsNode->appendChild($sectionNode);
}
$issueNode->appendChild($sectionsNode);
}
}
@@ -0,0 +1,178 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeFilterHelper.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeFilterHelper
*
* @ingroup plugins_importexport_native
*
* @brief Class that provides native import/export filter-related helper methods.
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\file\PublicFileManager;
use APP\issue\Issue;
use DOMDocument;
use DOMElement;
use PKP\plugins\importexport\native\filter\NativeExportFilter;
use PKP\plugins\importexport\native\filter\NativeImportFilter;
class NativeFilterHelper extends \PKP\plugins\importexport\native\filter\PKPNativeFilterHelper
{
/**
* Create and return an issue identification node.
*
* @param NativeExportFilter $filter
* @param \DOMDocument $doc
* @param Issue $issue
*
* @return DOMElement
*/
public function createIssueIdentificationNode($filter, $doc, $issue)
{
$deployment = $filter->getDeployment();
$vol = $issue->getVolume();
$num = $issue->getNumber();
$year = $issue->getYear();
$title = $issue->getTitle(null);
assert($issue->getShowVolume() || $issue->getShowNumber() || $issue->getShowYear() || $issue->getShowTitle());
$issueIdentificationNode = $doc->createElementNS($deployment->getNamespace(), 'issue_identification');
if ($issue->getShowVolume()) {
assert(!empty($vol));
$issueIdentificationNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'volume', htmlspecialchars($vol, ENT_COMPAT, 'UTF-8')));
}
if ($issue->getShowNumber()) {
assert(!empty($num));
$issueIdentificationNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'number', htmlspecialchars($num, ENT_COMPAT, 'UTF-8')));
}
if ($issue->getShowYear()) {
assert(!empty($year));
$issueIdentificationNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'year', $year));
}
if ($issue->getShowTitle()) {
assert(!empty($title));
$filter->createLocalizedNodes($doc, $issueIdentificationNode, 'title', $title);
}
return $issueIdentificationNode;
}
/**
* Create and return an object covers node.
*/
public function createIssueCoversNode(NativeExportFilter $filter, DOMDocument $doc, Issue $object): ?DOMElement
{
$coverImages = $object->getCoverImage(null);
if (empty($coverImages)) {
return null;
}
$deployment = $filter->getDeployment();
$publicFileManager = new PublicFileManager();
$coversNode = $doc->createElementNS($deployment->getNamespace(), 'covers');
foreach ($coverImages as $locale => $coverImage) {
$coverNode = $doc->createElementNS($deployment->getNamespace(), 'cover');
$filePath = $publicFileManager->getContextFilesPath($object->getJournalId()) . '/' . $coverImage;
if (!file_exists($filePath)) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $object->getId(), __('plugins.importexport.common.error.issueCoverImageMissing', ['id' => $object->getId(), 'path' => $filePath]));
continue;
}
$coverNode->setAttribute('locale', $locale);
$coverNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'cover_image', htmlspecialchars($coverImage, ENT_COMPAT, 'UTF-8')));
$coverNode->appendChild($doc->createElementNS($deployment->getNamespace(), 'cover_image_alt_text', htmlspecialchars($object->getCoverImageAltText($locale), ENT_COMPAT, 'UTF-8')));
$embedNode = $doc->createElementNS($deployment->getNamespace(), 'embed', base64_encode(file_get_contents($filePath)));
$embedNode->setAttribute('encoding', 'base64');
$coverNode->appendChild($embedNode);
$coversNode->appendChild($coverNode);
}
return $coversNode->firstChild?->parentNode;
}
/**
* Parse out the object covers.
*
* @param NativeImportFilter $filter
* @param DOMElement $node
* @param Issue $object
*/
public function parseIssueCovers($filter, $node, $object)
{
$deployment = $filter->getDeployment();
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'cover':
$this->parseIssueCover($filter, $n, $object);
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $object->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
/**
* Parse out the cover and store it in the object.
*
* @param NativeImportFilter $filter
* @param DOMElement $node
* @param Issue $object
*/
public function parseIssueCover($filter, $node, $object)
{
$deployment = $filter->getDeployment();
$context = $deployment->getContext();
$locale = $node->getAttribute('locale');
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'cover_image':
$object->setCoverImage(
preg_replace(
"/[^a-z0-9\.\-]+/",
'',
str_replace(
[' ', '_', ':'],
'-',
strtolower($n->textContent)
)
),
$locale
);
break;
case 'cover_image_alt_text':
$object->setCoverImageAltText($n->textContent, $locale);
break;
case 'embed':
if (!$object->getCoverImage($locale)) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $object->getId(), __('plugins.importexport.common.error.coverImageNameUnspecified'));
break;
}
$publicFileManager = new PublicFileManager();
$filePath = $publicFileManager->getContextFilesPath($context->getId()) . '/' . $object->getCoverImage($locale);
$allowedFileTypes = ['gif', 'jpg', 'png', 'webp'];
$extension = pathinfo(strtolower($filePath), PATHINFO_EXTENSION);
if (!in_array($extension, $allowedFileTypes)) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $object->getId(), __('plugins.importexport.common.error.invalidFileExtension'));
break;
}
file_put_contents($filePath, base64_decode($n->textContent));
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $object->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
}
@@ -0,0 +1,21 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlArticleFileFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlArticleFileFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Native XML document to an article file.
*/
namespace APP\plugins\importexport\native\filter;
class NativeXmlArticleFileFilter extends \PKP\plugins\importexport\native\filter\NativeXmlSubmissionFileFilter
{
}
@@ -0,0 +1,52 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlArticleFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlArticleFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Native XML document to a set of articles.
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use PKP\filter\Filter;
use PKP\plugins\importexport\PKPImportExportFilter;
class NativeXmlArticleFilter extends \PKP\plugins\importexport\native\filter\NativeXmlSubmissionFilter
{
/**
* Get the import filter for a given element.
*
* @param string $elementName Name of XML element
*
* @return Filter
*/
public function getImportFilter($elementName)
{
$deployment = $this->getDeployment();
$submission = $deployment->getSubmission();
switch ($elementName) {
case 'submission_file':
$importClass = 'SubmissionFile';
break;
case 'publication':
$importClass = 'Publication';
break;
default:
$importClass = null; // Suppress scrutinizer warn
$deployment->addWarning(Application::ASSOC_TYPE_SUBMISSION, $submission->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $elementName]));
}
// Caps on class name for consistency with imports, whose filter
// group names are generated implicitly.
$currentFilter = PKPImportExportFilter::getFilter('native-xml=>' . $importClass, $deployment);
return $currentFilter;
}
}
@@ -0,0 +1,113 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlArticleGalleyFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlArticleGalleyFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Native XML document to a set of publication formats.
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\facades\Repo;
use APP\submission\Submission;
use DOMElement;
use PKP\galley\Galley;
class NativeXmlArticleGalleyFilter extends \PKP\plugins\importexport\native\filter\NativeXmlRepresentationFilter
{
//
// Implement template methods from NativeImportFilter
//
/**
* Return the plural element name
*
* @return string
*/
public function getPluralElementName()
{
return 'article_galleys'; // defined if needed in the future.
}
/**
* Get the singular element name
*
* @return string
*/
public function getSingularElementName()
{
return 'article_galley';
}
/**
* Handle a submission element
*
* @param DOMElement $node
*
* @return Galley Galley object
*/
public function handleElement($node)
{
$deployment = $this->getDeployment();
$submission = $deployment->getSubmission();
assert($submission instanceof Submission);
$submissionFileRefNodes = $node->getElementsByTagName('submission_file_ref');
assert($submissionFileRefNodes->length <= 1);
$addSubmissionFile = false;
if ($submissionFileRefNodes->length == 1) {
/** @var DOMElement */
$fileNode = $submissionFileRefNodes->item(0);
$newSubmissionFileId = $deployment->getSubmissionFileDBId($fileNode->getAttribute('id'));
if ($newSubmissionFileId) {
$addSubmissionFile = true;
}
}
/** @var Galley $representation */
$representation = parent::handleElement($node);
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'name':
// Labels are not localized in OJS Galleys, but we use the <name locale="....">...</name> structure.
$locale = $n->getAttribute('locale');
if (empty($locale)) {
$locale = $submission->getLocale();
}
$representation->setLabel($n->textContent);
$representation->setLocale($locale);
break;
}
}
}
if ($addSubmissionFile) {
$representation->setData('submissionFileId', $newSubmissionFileId);
}
Repo::galley()->dao->insert($representation);
if ($addSubmissionFile) {
// Update the submission file.
$submissionFile = Repo::submissionFile()->get($newSubmissionFileId);
Repo::submissionFile()->edit(
$submissionFile,
[
'assocType' => Application::ASSOC_TYPE_REPRESENTATION,
'assocId' => $representation->getId(),
]
);
}
// representation proof files
return $representation;
}
}
@@ -0,0 +1,21 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlAuthorFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlAuthorFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Native XML document to a set of articles.
*/
namespace APP\plugins\importexport\native\filter;
class NativeXmlAuthorFilter extends \PKP\plugins\importexport\native\filter\NativeXmlPKPAuthorFilter
{
}
@@ -0,0 +1,584 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlIssueFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlIssueFilter
*
* @ingroup plugins_importexport_native
*
* @brief Base class that converts a Native XML document to a set of issues
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\facades\Repo;
use APP\issue\Issue;
use APP\plugins\importexport\native\NativeImportExportDeployment;
use APP\section\Section;
use DOMElement;
use DOMNode;
use PKP\filter\FilterGroup;
use PKP\plugins\importexport\PKPImportExportFilter;
use PKP\plugins\PluginRegistry;
class NativeXmlIssueFilter extends \PKP\plugins\importexport\native\filter\NativeImportFilter
{
/**
* Constructor
*
* @param FilterGroup $filterGroup
*/
public function __construct($filterGroup)
{
$this->setDisplayName('Native XML issue import');
parent::__construct($filterGroup);
}
//
// Implement template methods from NativeImportFilter
//
/**
* Return the plural element name
*
* @return string
*/
public function getPluralElementName()
{
return 'issues';
}
/**
* Get the singular element name
*
* @return string
*/
public function getSingularElementName()
{
return 'issue';
}
/**
* Handle a singular element import.
*
* @param DOMElement $node
*
* @return Issue
*/
public function handleElement($node)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$context = $deployment->getContext();
// if the issue identification matches an existing issue, flag to process only child objects
$issueExists = false;
$issue = $this->_issueExists($node);
if ($issue) {
$issueExists = true;
} else {
// Create and insert the issue (ID needed for other entities)
$issue = Repo::issue()->newDataObject();
$issue->setJournalId($context->getId());
$issue->setPublished($node->getAttribute('published'));
$issue->setAccessStatus($node->getAttribute('access_status'));
$issue->setData('urlPath', strlen($urlPath = (string) $node->getAttribute('url_path')) ? $urlPath : null);
$issueId = Repo::issue()->add($issue);
// Should update current status on journal once issue has been created
if ($node->getAttribute('current')) {
Repo::issue()->updateCurrent($context->getId(), Repo::issue()->get($issueId));
}
$deployment->addProcessedObjectId(Application::ASSOC_TYPE_ISSUE, $issue->getId());
$deployment->addImportedRootEntity(Application::ASSOC_TYPE_ISSUE, $issue);
}
$deployment->setIssue($issue);
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
$this->handleChildElement($n, $issue, $issueExists);
}
}
if (!$issueExists) {
Repo::issue()->edit($issue, []); // Persist setters
}
return $issue;
}
/**
* Handle an element whose parent is the issue element.
*
* @param DOMElement $n
* @param Issue $issue
* @param bool $processOnlyChildren Do not modify the issue itself, only generate child objects
*/
public function handleChildElement($n, $issue, $processOnlyChildren)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$localizedSetterMappings = $this->_getLocalizedIssueSetterMappings();
$dateSetterMappings = $this->_getDateIssueSetterMappings();
if (isset($localizedSetterMappings[$n->tagName])) {
if (!$processOnlyChildren) {
// If applicable, call a setter for localized content.
$setterFunction = $localizedSetterMappings[$n->tagName];
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$issue->$setterFunction($value, $locale);
}
} elseif (isset($dateSetterMappings[$n->tagName])) {
if (!$processOnlyChildren) {
// Not a localized element? Check for a date.
$setterFunction = $dateSetterMappings[$n->tagName];
$issue->$setterFunction($n->textContent);
}
} else {
switch ($n->tagName) {
// Otherwise, delegate to specific parsing code
case 'id':
if (!$processOnlyChildren) {
$this->parseIdentifier($n, $issue);
}
break;
case 'articles':
$this->parseArticles($n, $issue);
break;
case 'issue_galleys':
if (!$processOnlyChildren) {
$this->parseIssueGalleys($n, $issue);
}
break;
case 'sections':
$this->parseSections($n, $issue);
break;
case 'covers':
if (!$processOnlyChildren) {
$nativeFilterHelper = new NativeFilterHelper();
$nativeFilterHelper->parseIssueCovers($this, $n, $issue);
}
break;
case 'issue_identification':
if (!$processOnlyChildren) {
$this->parseIssueIdentification($n, $issue);
}
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
//
// Element parsing
//
/**
* Parse an identifier node and set up the issue object accordingly
*
* @param DOMElement $element
* @param Issue $issue
*/
public function parseIdentifier($element, $issue)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$advice = $element->getAttribute('advice');
switch ($element->getAttribute('type')) {
case 'internal':
// "update" advice not supported yet.
assert(!$advice || $advice == 'ignore');
break;
case 'public':
if ($advice == 'update') {
$issue->setStoredPubId('publisher-id', $element->textContent);
}
break;
default:
if ($advice == 'update') {
if ($element->getAttribute('type') == 'doi') {
$doiFound = Repo::doi()->getCollector()->filterByIdentifier($element->textContent)->getMany()->first();
if ($doiFound) {
$issue->setData('doiId', $doiFound->getId());
} else {
$newDoiObject = Repo::doi()->newDataObject(
[
'doi' => $element->textContent,
'contextId' => $context->getId()
]
);
$doiId = Repo::doi()->add($newDoiObject);
$issue->setData('doiId', $doiId);
}
} else {
// Load pub id plugins
$pubIdPlugins = PluginRegistry::loadCategory('pubIds', true, $context->getId());
$issue->setStoredPubId($element->getAttribute('type'), $element->textContent);
}
}
}
}
/**
* Parse an articles element
*
* @param DOMElement $node
* @param Issue $issue
*/
public function parseIssueGalleys($node, $issue)
{
$deployment = $this->getDeployment();
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'issue_galley':
$this->parseIssueGalley($n, $issue);
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
/**
* Parse an issue galley and add it to the issue.
*
* @param DOMElement $n
* @param Issue $issue
*/
public function parseIssueGalley($n, $issue)
{
$currentFilter = PKPImportExportFilter::getFilter('native-xml=>IssueGalley', $this->getDeployment());
$issueGalleyDoc = new \DOMDocument('1.0', 'utf-8');
$issueGalleyDoc->appendChild($issueGalleyDoc->importNode($n, true));
return $currentFilter->execute($issueGalleyDoc);
}
/**
* Parse an articles element
*
* @param DOMElement $node
* @param Issue $issue
*/
public function parseArticles($node, $issue)
{
$deployment = $this->getDeployment();
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'article':
$this->parseArticle($n, $issue);
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
/**
* Parse an article and add it to the issue.
*
* @param DOMElement $n
* @param Issue $issue
*/
public function parseArticle($n, $issue)
{
$currentFilter = PKPImportExportFilter::getFilter('native-xml=>article', $this->getDeployment());
$articleDoc = new \DOMDocument('1.0', 'utf-8');
$articleDoc->appendChild($articleDoc->importNode($n, true));
return $currentFilter->execute($articleDoc);
}
/**
* Parse a submission file and add it to the submission.
*
* @param DOMElement $node
* @param Issue $issue
*/
public function parseSections($node, $issue)
{
$deployment = $this->getDeployment();
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'section':
$this->parseSection($n);
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
/**
* Parse a section stored in an issue.
*
* @param DOMElement $node
*/
public function parseSection($node)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
// Create the data object
$section = Repo::section()->newDataObject();
$section->setContextId($context->getId());
$reviewFormId = $node->getAttribute('review_form_id');
$section->setReviewFormId($reviewFormId ? (int) $reviewFormId : null);
$section->setSequence($node->getAttribute('seq'));
$section->setEditorRestricted((bool) $node->getAttribute('editor_restricted'));
$section->setMetaIndexed((bool) $node->getAttribute('meta_indexed'));
$section->setMetaReviewed((bool) $node->getAttribute('meta_reviewed'));
$section->setAbstractsNotRequired((bool) $node->getAttribute('abstracts_not_required'));
$section->setHideAuthor((bool) $node->getAttribute('hide_author'));
$section->setHideTitle((bool) $node->getAttribute('hide_title'));
$section->setAbstractWordCount($node->getAttribute('abstract_word_count'));
$unknownNodes = [];
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'id':
// Only support "ignore" advice for now
$advice = $n->getAttribute('advice');
assert(!$advice || $advice == 'ignore');
break;
case 'abbrev':
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$section->setAbbrev($value, $locale);
break;
case 'policy':
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$section->setPolicy($value, $locale);
break;
case 'title':
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$section->setTitle($value, $locale);
break;
default:
$unknownNodes[] = $n->tagName;
}
}
}
if (!$this->_sectionExist($section)) {
$sectionId = Repo::section()->add($section);
if (count($unknownNodes)) {
foreach ($unknownNodes as $tagName) {
$deployment->addWarning(Application::ASSOC_TYPE_SECTION, $sectionId, __('plugins.importexport.common.error.unknownElement', ['param' => $tagName]));
}
}
$deployment->addProcessedObjectId(Application::ASSOC_TYPE_SECTION, $sectionId);
}
}
/**
* Parse out the issue identification and store it in an issue.
*
* @param DOMElement $node
* @param Issue $issue
* @param bool $allowWarnings Warnings should be suppressed if this function is not being used to populate a new issue
*/
public function parseIssueIdentification($node, $issue, $allowWarnings = true)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'volume':
$issue->setVolume($n->textContent);
$issue->setShowVolume(1);
break;
case 'number':
$issue->setNumber($n->textContent);
$issue->setShowNumber(1);
break;
case 'year':
$issue->setYear($n->textContent);
$issue->setShowYear(1);
break;
case 'title':
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$issue->setTitle($value, $locale);
$issue->setShowTitle(1);
break;
default:
if ($allowWarnings) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
}
}
//
// Helper functions
//
/**
* Get node name to setter function mapping for localized data.
*
* @return array
*/
public function _getLocalizedIssueSetterMappings()
{
return [
'description' => 'setDescription',
];
}
/**
* Get node name to setter function mapping for issue date fields.
*
* @return array
*/
public function _getDateIssueSetterMappings()
{
return [
'date_published' => 'setDatePublished',
'date_notified' => 'setDateNotified',
'last_modified' => 'setLastModified',
'open_access_date' => 'setOpenAccessDate',
];
}
/**
* Check if the issue already exists.
*
* @param DOMNode $node issue node
* return Issue|null matching issue, or null if no match
*/
public function _issueExists($node)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$issue = null;
foreach ($node->getElementsByTagName('issue_identification') as $n) {
$searchIssue = Repo::issue()->newDataObject();
$this->parseIssueIdentification($n, $searchIssue, false);
$collector = Repo::issue()->getCollector()
->filterByContextIds([$context->getId()]);
if ($searchIssue->getVolume() !== null) {
$collector->filterByVolumes([$searchIssue->getVolume()]);
}
if ($searchIssue->getNumber() !== null) {
$collector->filterByNumbers([$searchIssue->getNumber()]);
}
if ($searchIssue->getYear() !== null) {
$collector->filterByYears([$searchIssue->getYear()]);
}
if (!empty((array) $searchIssue->getTitle(null))) {
$collector->filterByTitles((array) $searchIssue->getTitle(null));
}
$foundIssues = $collector->getMany();
foreach ($foundIssues as $issue) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.issueIdentificationDuplicate', ['issueId' => $issue->getId(), 'issueIdentification' => $n->ownerDocument->saveXML($n)]));
}
}
return $issue;
}
/**
* Check if the section already exists.
*
* @param Section $importSection New created section
*
* @return bool
*/
public function _sectionExist($importSection)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$issue = $deployment->getIssue();
// title and, optionally, abbrev contain information that can
// be used to locate an existing section. If title and abbrev each match an
// existing section, but not the same section, throw an error.
$contextId = $importSection->getContextId();
$section = null;
$foundSectionId = $foundSectionTitle = null;
$index = 0;
$titles = $importSection->getTitle(null);
foreach ($titles as $locale => $title) {
$section = Repo::section()->getCollector()->filterByContextIds([$contextId])->filterByTitles([$title])->getMany()->first();
if ($section) {
$sectionId = $section->getId();
if ($foundSectionId) {
if ($foundSectionId != $sectionId) {
// Mismatching sections found.
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionTitleMismatch', ['section1Title' => $title, 'section2Title' => $foundSectionTitle, 'issueTitle' => $issue->getIssueIdentification()]));
}
} elseif ($index > 0) {
// the current title matches, but the prev titles didn't
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionTitleMatch', ['sectionTitle' => $title, 'issueTitle' => $issue->getIssueIdentification()]));
}
$foundSectionId = $sectionId;
$foundSectionTitle = $title;
} else {
if ($foundSectionId) {
// a prev title matched, but the current doesn't
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionTitleMatch', ['sectionTitle' => $foundSectionTitle, 'issueTitle' => $issue->getIssueIdentification()]));
}
}
$index++;
}
// check abbrevs:
$abbrevSection = null;
$foundSectionId = $foundSectionAbbrev = null;
$index = 0;
$abbrevs = $importSection->getAbbrev(null);
foreach ($abbrevs as $locale => $abbrev) {
$section = Repo::section()->getCollector()->filterByContextIds([$contextId])->filterByAbbrevs([$abbrev])->getMany()->first();
if ($abbrevSection) {
$sectionId = $abbrevSection->getId();
if ($foundSectionId) {
if ($foundSectionId != $sectionId) {
// Mismatching sections found.
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionAbbrevMismatch', ['section1Abbrev' => $abbrev, 'section2Abbrev' => $foundSectionAbbrev, 'issueTitle' => $issue->getIssueIdentification()]));
}
} elseif ($index > 0) {
// the current abbrev matches, but the prev abbrevs didn't
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionAbbrevMatch', ['sectionAbbrev' => $abbrev, 'issueTitle' => $issue->getIssueIdentification()]));
}
$foundSectionId = $sectionId;
$foundSectionAbbrev = $abbrev;
} else {
if ($foundSectionId) {
// a prev abbrev matched, but the current doesn't
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE, $issue->getId(), __('plugins.importexport.native.import.error.sectionAbbrevMatch', ['sectionAbbrev' => $foundSectionAbbrev, 'issueTitle' => $issue->getIssueIdentification()]));
}
}
$index++;
}
if (isset($section) && isset($abbrevSection)) {
return $section->getId() == $abbrevSection->getId();
} else {
return isset($section) || isset($abbrevSection);
}
}
}
@@ -0,0 +1,172 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlIssueGalleyFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlIssueGalleyFilter
*
* @ingroup plugins_importexport_native
*
* @brief Base class that converts a Native XML document to a set of issue galleys
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\file\IssueFileManager;
use APP\issue\Issue;
use APP\issue\IssueFileDAO;
use APP\issue\IssueGalley;
use APP\issue\IssueGalleyDAO;
use APP\plugins\importexport\native\NativeImportExportDeployment;
use DOMElement;
use PKP\db\DAORegistry;
use PKP\filter\FilterGroup;
class NativeXmlIssueGalleyFilter extends \PKP\plugins\importexport\native\filter\NativeImportFilter
{
/**
* Constructor
*
* @param FilterGroup $filterGroup
*/
public function __construct($filterGroup)
{
$this->setDisplayName('Native XML issue galley import');
parent::__construct($filterGroup);
}
//
// Override methods in NativeImportFilter
//
/**
* Return the plural element name
*
* @return string
*/
public function getPluralElementName()
{
return 'issue_galleys';
}
/**
* Get the singular element name
*
* @return string
*/
public function getSingularElementName()
{
return 'issue_galley';
}
//
// Extend functions in the parent class
//
/**
* Handle a submission element
*
* @param DOMElement $node
*
* @return ?IssueGalley
*/
public function handleElement($node)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$issue = $deployment->getIssue();
assert($issue instanceof Issue);
// Create the data object
$issueGalleyDao = DAORegistry::getDAO('IssueGalleyDAO'); /** @var IssueGalleyDAO $issueGalleyDao */
$issueGalley = $issueGalleyDao->newDataObject();
$issueGalley->setIssueId($issue->getId());
$locale = $node->getAttribute('locale');
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$issueGalley->setLocale($locale);
$issueGalley->setSequence($issueGalleyDao->getNextGalleySequence($issue->getId()));
// Handle metadata in subelements.
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'id':
$this->parseIdentifier($n, $issueGalley);
break;
case 'label': $issueGalley->setLabel($n->textContent);
break;
case 'issue_file':
$issueFileDao = DAORegistry::getDAO('IssueFileDAO'); /** @var IssueFileDAO $issueFileDao */
$issueFile = $issueFileDao->newDataObject();
$issueFile->setIssueId($issue->getId());
for ($o = $n->firstChild; $o !== null; $o = $o->nextSibling) {
if ($o instanceof DOMElement) {
switch ($o->tagName) {
case 'file_name': $issueFile->setServerFileName($o->textContent);
break;
case 'file_type': $issueFile->setFileType($o->textContent);
break;
case 'file_size': $issueFile->setFileSize($o->textContent);
break;
case 'content_type': $issueFile->setContentType((int)$o->textContent);
break;
case 'original_file_name': $issueFile->setOriginalFileName($o->textContent);
break;
case 'date_uploaded': $issueFile->setDateUploaded($o->textContent);
break;
case 'date_modified': $issueFile->setDateModified($o->textContent);
break;
case 'embed':
$issueFileManager = new IssueFileManager($issue->getId());
$filePath = $issueFileManager->getFilesDir() . $issueFileManager->contentTypeToPath($issueFile->getContentType()) . '/' . $issueFile->getServerFileName();
$issueFileManager->writeFile($filePath, base64_decode($o->textContent));
break;
}
}
}
$issueFileId = $issueFileDao->insertObject($issueFile);
$issueGalley->setFileId($issueFileId);
break;
}
}
}
if (!$issueGalley->getFileId()) {
$deployment->addWarning(Application::ASSOC_TYPE_ISSUE_GALLEY, 0, __('plugins.importexport.common.error.import.issueGalleyFileMissing'));
return null;
}
$issueGalleyDao->insertObject($issueGalley);
return $issueGalley;
}
/**
* Parse an identifier node and set up the galley object accordingly
*
* @param DOMElement $element
* @param IssueGalley $issue
*/
public function parseIdentifier($element, $issue)
{
$deployment = $this->getDeployment();
$advice = $element->getAttribute('advice');
switch ($element->getAttribute('type')) {
case 'internal':
// "update" advice not supported yet.
assert(!$advice || $advice == 'ignore');
break;
case 'public':
if ($advice == 'update') {
$issue->setStoredPubId('publisher-id', $element->textContent);
}
break;
}
}
}
@@ -0,0 +1,270 @@
<?php
/**
* @file plugins/importexport/native/filter/NativeXmlPublicationFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class NativeXmlPublicationFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Native XML document to a set of articles.
*/
namespace APP\plugins\importexport\native\filter;
use APP\core\Application;
use APP\facades\Repo;
use APP\issue\Issue;
use APP\plugins\importexport\native\NativeImportExportDeployment;
use APP\publication\Publication;
use DOMElement;
use PKP\filter\Filter;
use PKP\plugins\importexport\PKPImportExportFilter;
class NativeXmlPublicationFilter extends \PKP\plugins\importexport\native\filter\NativeXmlPKPPublicationFilter
{
/**
* Handle an Article import.
* The Article must have a valid section in order to be imported
*
* @param DOMElement $node
*/
public function handleElement($node)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$sectionAbbrev = $node->getAttribute('section_ref');
if ($sectionAbbrev !== '') {
$section = Repo::section()->getCollector()->filterByContextIds([$context->getId()])->filterByAbbrevs([$sectionAbbrev])->getMany()->first();
if (!$section) {
$deployment->addError(Application::ASSOC_TYPE_SUBMISSION, null, __('plugins.importexport.native.error.unknownSection', ['param' => $sectionAbbrev]));
} else {
return parent::handleElement($node);
}
}
}
/**
* Populate the submission object from the node, checking first for a valid section and published_date/issue relationship
*
* @param Publication $publication
* @param DOMElement $node
*
* @return Publication
*/
public function populateObject($publication, $node)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$sectionAbbrev = $node->getAttribute('section_ref');
if ($sectionAbbrev !== '') {
$section = Repo::section()->getCollector()->filterByContextIds([$context->getId()])->filterByAbbrevs([$sectionAbbrev])->getMany()->first();
if (!$section) {
$deployment->addError(Application::ASSOC_TYPE_PUBLICATION, $publication->getId(), __('plugins.importexport.native.error.unknownSection', ['param' => $sectionAbbrev]));
} else {
$publication->setData('sectionId', $section->getId());
}
}
// check if publication is related to an issue, but has no published date
$datePublished = $node->getAttribute('date_published');
$issue = $deployment->getIssue();
$issue_identification = $node->getElementsByTagName('issue_identification');
if (!$datePublished && ($issue || $issue_identification->length)) {
$titleNodes = $node->getElementsByTagName('title');
$deployment->addWarning(Application::ASSOC_TYPE_PUBLICATION, $publication->getId(), __('plugins.importexport.native.import.error.publishedDateMissing', ['articleTitle' => $titleNodes->item(0)->textContent]));
}
$this->populatePublishedPublication($publication, $node);
return parent::populateObject($publication, $node);
}
/**
* Handle an element whose parent is the submission element.
*
* @param DOMElement $n
* @param Publication $publication
*/
public function handleChildElement($n, $publication)
{
switch ($n->tagName) {
case 'article_galley':
$this->parseArticleGalley($n, $publication);
break;
case 'issue_identification':
// do nothing, because this is done in populatePublishedSubmission
break;
case 'pages':
$publication->setData('pages', $n->textContent);
break;
case 'covers':
$nativeFilterHelper = new NativeFilterHelper();
$nativeFilterHelper->parsePublicationCovers($this, $n, $publication);
break;
default:
parent::handleChildElement($n, $publication);
}
}
/**
* Get the import filter for a given element.
*
* @param string $elementName Name of XML element
*
* @return Filter
*/
public function getImportFilter($elementName)
{
$deployment = $this->getDeployment();
$submission = $deployment->getSubmission();
switch ($elementName) {
case 'article_galley':
$importClass = 'ArticleGalley';
break;
default:
$importClass = null; // Suppress scrutinizer warn
$deployment->addWarning(Application::ASSOC_TYPE_SUBMISSION, $submission->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $elementName]));
}
// Caps on class name for consistency with imports, whose filter
// group names are generated implicitly.
$currentFilter = PKPImportExportFilter::getFilter('native-xml=>' . $importClass, $deployment);
return $currentFilter;
}
/**
* Parse an article galley and add it to the publication.
*
* @param DOMElement $n
* @param Publication $publication
*/
public function parseArticleGalley($n, $publication)
{
return $this->importWithXMLNode($n);
}
/**
* Class-specific methods for published publication.
*
* @param Publication $publication
* @param DOMElement $node
*
* @return Publication
*/
public function populatePublishedPublication($publication, $node)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$issue = $deployment->getIssue();
if (empty($issue)) {
$issueIdentificationNodes = $node->getElementsByTagName('issue_identification');
if ($issueIdentificationNodes->length != 1) {
$titleNodes = $node->getElementsByTagName('title');
$deployment->addError(Application::ASSOC_TYPE_PUBLICATION, $publication->getId(), __('plugins.importexport.native.import.error.issueIdentificationMissing', ['articleTitle' => $titleNodes->item(0)->textContent]));
} else {
$issueIdentificationNode = $issueIdentificationNodes->item(0);
$issue = $this->parseIssueIdentification($publication, $issueIdentificationNode);
}
}
if ($issue) {
$publication->setData('issueId', $issue->getId());
}
return $publication;
}
/**
* Get the issue from the given identification.
*
* @param DOMElement $node
*
* @return Issue
*/
public function parseIssueIdentification($publication, $node)
{
$deployment = $this->getDeployment();
$context = $deployment->getContext();
$vol = $num = $year = null;
$titles = [];
for ($n = $node->firstChild; $n !== null; $n = $n->nextSibling) {
if ($n instanceof DOMElement) {
switch ($n->tagName) {
case 'volume':
$vol = $n->textContent;
break;
case 'number':
$num = $n->textContent;
break;
case 'year':
$year = $n->textContent;
break;
case 'title':
[$locale, $value] = $this->parseLocalizedContent($n);
if (empty($locale)) {
$locale = $context->getPrimaryLocale();
}
$titles[$locale] = $value;
break;
default:
$deployment->addWarning(Application::ASSOC_TYPE_PUBLICATION, $publication->getId(), __('plugins.importexport.common.error.unknownElement', ['param' => $n->tagName]));
}
}
}
$issue = null;
$collector = Repo::issue()->getCollector()
->filterByContextIds([$context->getId()]);
if ($vol !== null) {
$collector->filterByVolumes([$vol]);
}
if ($num !== null) {
$collector->filterByNumbers([$num]);
}
if ($year !== null) {
$collector->filterByYears([$year]);
}
if (!empty($titles)) {
$collector->filterByTitles($titles);
}
$issuesIdsByIdentification = $collector->getIds();
if ($issuesIdsByIdentification->count() != 1) {
$deployment->addError(Application::ASSOC_TYPE_PUBLICATION, $publication->getId(), __('plugins.importexport.native.import.error.issueIdentificationMatch', ['issueIdentification' => $node->ownerDocument->saveXML($node)]));
} else {
$issue = Repo::issue()->get($issuesIdsByIdentification->first());
}
if (!isset($issue)) {
$issue = Repo::issue()->newDataObject();
$issue->setVolume($vol);
$issue->setNumber($num);
$issue->setYear($year);
$issue->setShowVolume(1);
$issue->setShowNumber(1);
$issue->setShowYear(1);
$issue->setShowTitle(0);
$issue->setPublished(0);
$issue->setAccessStatus(0);
$issue->setJournalId($context->getId());
$issue->setTitle($titles, null);
$issueId = Repo::issue()->add($issue);
$issue->setId($issueId);
}
return $issue;
}
}
@@ -0,0 +1,84 @@
<?php
/**
* @file plugins/importexport/native/filter/PublicationNativeXmlFilter.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2000-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @class PublicationNativeXmlFilter
*
* @ingroup plugins_importexport_native
*
* @brief Class that converts a Publication to a Native XML document.
*/
namespace APP\plugins\importexport\native\filter;
use APP\facades\Repo;
use APP\plugins\importexport\native\NativeImportExportDeployment;
use APP\publication\Publication;
class PublicationNativeXmlFilter extends \PKP\plugins\importexport\native\filter\PKPPublicationNativeXmlFilter
{
//
// Implement abstract methods from SubmissionNativeXmlFilter
//
/**
* Get the representation export filter group name
*
* @return string
*/
public function getRepresentationExportFilterGroupName()
{
return 'article-galley=>native-xml';
}
//
// Publication conversion functions
//
/**
* Create and return a publication node.
*
* @param \DOMDocument $doc
* @param Publication $entity
*
* @return \DOMElement
*/
public function createEntityNode($doc, $entity)
{
/** @var NativeImportExportDeployment */
$deployment = $this->getDeployment();
$entityNode = parent::createEntityNode($doc, $entity);
// Add the series, if one is designated.
if ($sectionId = $entity->getData('sectionId')) {
$section = Repo::section()->get($sectionId);
assert(isset($section));
$entityNode->setAttribute('section_ref', $section->getLocalizedAbbrev());
}
// if this is a published submission and not part/subelement of an issue element
// add issue identification element
if ($entity->getData('issueId') && !$deployment->getIssue()) {
$issue = Repo::issue()->get($entity->getData('issueId'));
$nativeFilterHelper = new NativeFilterHelper();
$entityNode->appendChild($nativeFilterHelper->createIssueIdentificationNode($this, $doc, $issue));
}
$pages = $entity->getData('pages');
if (!empty($pages)) {
$entityNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'pages', htmlspecialchars($pages, ENT_COMPAT, 'UTF-8')));
}
// cover images
$nativeFilterHelper = new NativeFilterHelper();
$coversNode = $nativeFilterHelper->createPublicationCoversNode($this, $doc, $entity);
if ($coversNode) {
$entityNode->appendChild($coversNode);
}
return $entityNode;
}
}
@@ -0,0 +1,184 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filterConfig SYSTEM "../../../../lib/pkp/dtd/filterConfig.dtd">
<!--
* filterConfig.xml
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Filter Configuration.
-->
<filterConfig>
<filterGroups>
<!-- Native XML article output -->
<filterGroup
symbolic="article=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::classes.submission.Submission[]"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Native XML article input -->
<filterGroup
symbolic="native-xml=>article"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::classes.submission.Submission[]" />
<!-- Native XML issue output -->
<filterGroup
symbolic="issue=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::classes.issue.Issue[]"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Native XML issue input -->
<filterGroup
symbolic="native-xml=>issue"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::classes.issue.Issue[]" />
<!-- Native XML issue galley output -->
<filterGroup
symbolic="issuegalley=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::classes.issue.IssueGalley[]"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Native XML issue galley input -->
<filterGroup
symbolic="native-xml=>issuegalley"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::classes.issue.IssueGalley[]" />
<!-- Native XML author output -->
<filterGroup
symbolic="author=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::classes.author.Author[]"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Native XML author input -->
<filterGroup
symbolic="native-xml=>author"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::classes.author.Author[]" />
<!-- Article file native XML output -->
<filterGroup
symbolic="SubmissionFile=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::lib.pkp.classes.submissionFile.SubmissionFile"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Article file native XML input -->
<filterGroup
symbolic="native-xml=>SubmissionFile"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::lib.pkp.classes.submissionFile.SubmissionFile[]" />
<!-- Article Galley native XML output -->
<filterGroup
symbolic="article-galley=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::lib.pkp.classes.galley.Galley"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Article Galley native XML input -->
<filterGroup
symbolic="native-xml=>ArticleGalley"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::lib.pkp.classes.galley.Galley[]" />
<!-- Publication native XML input -->
<filterGroup
symbolic="publication=>native-xml"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="class::classes.publication.Publication"
outputType="xml::schema(plugins/importexport/native/native.xsd)" />
<!-- Publication native XML input -->
<filterGroup
symbolic="native-xml=>Publication"
displayName="plugins.importexport.native.displayName"
description="plugins.importexport.native.description"
inputType="xml::schema(plugins/importexport/native/native.xsd)"
outputType="class::classes.publication.Publication[]" />
</filterGroups>
<filters>
<!-- Native XML article output -->
<filter
inGroup="article=>native-xml"
class="APP\plugins\importexport\native\filter\ArticleNativeXmlFilter"
isTemplate="0" />
<!-- Native XML article input -->
<filter
inGroup="native-xml=>article"
class="APP\plugins\importexport\native\filter\NativeXmlArticleFilter"
isTemplate="0" />
<!-- Native XML issue output -->
<filter
inGroup="issue=>native-xml"
class="APP\plugins\importexport\native\filter\IssueNativeXmlFilter"
isTemplate="0" />
<!-- Native XML issue input -->
<filter
inGroup="native-xml=>issue"
class="APP\plugins\importexport\native\filter\NativeXmlIssueFilter"
isTemplate="0" />
<!-- Native XML issue galley output -->
<filter
inGroup="issuegalley=>native-xml"
class="APP\plugins\importexport\native\filter\IssueGalleyNativeXmlFilter"
isTemplate="0" />
<!-- Native XML issue galley input -->
<filter
inGroup="native-xml=>issuegalley"
class="APP\plugins\importexport\native\filter\NativeXmlIssueGalleyFilter"
isTemplate="0" />
<!-- Native XML author output -->
<filter
inGroup="author=>native-xml"
class="APP\plugins\importexport\native\filter\AuthorNativeXmlFilter"
isTemplate="0" />
<!-- Native XML author input -->
<filter
inGroup="native-xml=>author"
class="APP\plugins\importexport\native\filter\NativeXmlAuthorFilter"
isTemplate="0" />
<!-- Native XML article file input -->
<filter
inGroup="native-xml=>SubmissionFile"
class="APP\plugins\importexport\native\filter\NativeXmlArticleFileFilter"
isTemplate="0" />
<!-- Native XML submission file output -->
<filter
inGroup="SubmissionFile=>native-xml"
class="PKP\plugins\importexport\native\filter\SubmissionFileNativeXmlFilter"
isTemplate="0" />
<!-- Native XML article galley output -->
<filter
inGroup="article-galley=>native-xml"
class="APP\plugins\importexport\native\filter\ArticleGalleyNativeXmlFilter"
isTemplate="0" />
<!-- Native XML article galley input -->
<filter
inGroup="native-xml=>ArticleGalley"
class="APP\plugins\importexport\native\filter\NativeXmlArticleGalleyFilter"
isTemplate="0" />
<filter
inGroup="publication=>native-xml"
class="APP\plugins\importexport\native\filter\PublicationNativeXmlFilter"
isTemplate="0" />
<filter
inGroup="native-xml=>Publication"
class="APP\plugins\importexport\native\filter\NativeXmlPublicationFilter"
isTemplate="0" />
</filters>
</filterConfig>
+16
View File
@@ -0,0 +1,16 @@
<?php
/**
* @file plugins/importexport/native/index.php
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* @ingroup plugins_importexport_native
*
* @brief Wrapper for XML native import/export plugin.
*
*/
return new \APP\plugins\importexport\native\NativeImportExportPlugin();
@@ -0,0 +1,112 @@
# M. Ali <vorteem@gmail.com>, 2023.
# "M. Ali" <vorteem@gmail.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2024-01-20 03:39+0000\n"
"Last-Translator: \"M. Ali\" <vorteem@gmail.com>\n"
"Language-Team: Arabic <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ar/>\n"
"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "إضافة Native XML"
msgid "plugins.importexport.native.description"
msgstr "استيراد وتصدير المقالات والأعداد بالصيغ المحلية لـ XML."
msgid "plugins.importexport.native.import"
msgstr "استيراد"
msgid "plugins.importexport.native.import.instructions"
msgstr "إرفع ملف XML لاستيراده"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "إختر المقالات المزمع تصديرها"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "تصدير المقالات"
msgid "plugins.importexport.native.exportIssues"
msgstr "تصدير الأعداد"
msgid "plugins.importexport.native.results"
msgstr "استيراد النتائج"
msgid "plugins.inportexport.native.uploadFile"
msgstr "لطفاً، إرفع ملفاً ضمن \"استيراد\" للمتابعة."
msgid "plugins.importexport.native.importComplete"
msgstr "الاستيراد إكتمل بنجاح. الفقرات الآتية تم استيرادها:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"الاستعمال: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"عوامل إضافية مطلوبة لاستيراد البيانات كما يلي\n"
"اعتماداً على عقدة الجذر لملف XML.\n"
"\n"
"إن كانت عقدة الجذر هي <article> أو <articles>، المزيد من العوامل مطلوبة "
"أيضاً.\n"
"الصيغ الآتية مقبولة\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "قسم غير معروف: {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"لا بد من إعطاء اسم المستخدم باستعمال العامل --user_name أو -u بشكله المختصر."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "إن عنوان القسم \"{$section1Title}\" وعنوان القسم \"{$section2Title}\" ضمن العدد \"{$issueTitle}\" يطابقان أقسام أخرى مغايرة في المجلة."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "إن عنوان القسم \"{$sectionTitle}\" ضمن العدد \"{$issueTitle}\" يطابق أحد الأقسام الموجودة في المجلة، غير أن عنواناً آخر في هذا القسم لا يطابق عنواناً آخر ضمن ذلك القسم من المجلة."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "إن مختصر القسم \"{$section1Abbrev}\" ومختصر القسم \"{$section2Abbrev}\" ضمن العدد \"{$issueTitle}\" يطابقان أقسام أخرى مغايرة في المجلة."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "إن مختصر القسم \"{$sectionAbbrev}\" ضمن العدد \"{$issueTitle}\" يطابق أحد الأقسام الموجودة في المجلة، غير أن مختصراً آخر في هذا القسم لا يطابق مختصراً آخر ضمن ذلك القسم من المجلة."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "لا أحد أو أكثر من واحد من الأعداد تطابق رمز تعريف العدد المذكور \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "هناك عدد موجود يحمل الرمز التعريفي {$issueId} المطابق للرمز التعريفي للعدد المذكور \"{$issueIdentification}\". هذا العدد لن يتم تعديله، لكن ستتم إضافة المقالات إليه."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "إن عنصر تعريف العدد مفقود من المقالة \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "إن المقالة \"{$articleTitle}\" مضمنة في أحد الأعداد، لكنها بلا تأريخ نشر."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "تم تضمين صورة الغلاف بدون تعيين الاسم."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "تم تحديد صورة غلاف ذات إمتداد ملف خاطئ."
@@ -0,0 +1,117 @@
# Osman Durmaz <osmandurmaz@hotmail.de>, 2023.
msgid ""
msgstr ""
"PO-Revision-Date: 2023-06-02 22:43+0000\n"
"Last-Translator: Osman Durmaz <osmandurmaz@hotmail.de>\n"
"Language-Team: Azerbaijani <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/az/>\n"
"Language: az\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML qoşması"
msgid "plugins.importexport.native.import"
msgstr "İdxal edin"
msgid "plugins.importexport.native.import.instructions"
msgstr "İdxal ediləcək XML faylı yükləyin"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "İxrac etmək üçün məqalələri seçin"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Məqalələri ixrac edin"
msgid "plugins.importexport.native.exportIssues"
msgstr "Nömrələri ixrac edin"
msgid "plugins.importexport.native.results"
msgstr "İdxal edin nəticə"
msgid "plugins.importexport.native.importComplete"
msgstr "İdxal etmə uğurla tamamlandı. Aşağıdakı elementlər idxal edildi:"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Naməlum bölmə {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Göstərilən istifadəçi \"{$userName}\" mövcud deyil."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"\"{$section1Title}\" bölmə adı və \"{$issueTitle}\" başlıqlı nömrə \""
"{$section2Title}\" bölmə adı, mövcud fərqli jurnal bölmələri ilə uyuşdu."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"\"{$issueTitle}\" nömrəsindəki \"{$sectionTitle}\" bölmə başlığı, mövcud bir "
"Jurnal bölməsi ilə uyğundur, ancaq bu bölmənin başqa bir başlığı, mövcud "
"Jurnal bölməsinin başqa bir başlığı ilə uyğun gəlmir."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"\"{$section1Abbrev}\" bölməsinin qısa adı və \"{$issueTitle}\" nömrəsinin \""
"{$section2Abbrev}\" bölməsinin qısa adı, fərqli mövcud Jurnal bölmələri ilə "
"uyuşdu."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Nömrələrdən heç biri və ya birdən çox nömrə, göstərilən nömrə tərifi \""
"{$issueIdentification}\" ilə uyğun gəlmir."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "\"{$articleTitle}\" məqaləsi üçün nömrə tərifetmə elementi əskikdir."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"\"{$articleTitle}\" məqaləsi bir nömrə içində yer alır, ancaq nəşr tarixi "
"yoxdur."
msgid "plugins.importexport.native.description"
msgstr ""
"Məqalələri və nömrələri OJS-nin təbii XML formatına idxal və ixrac edin."
msgid "plugins.inportexport.native.uploadFile"
msgstr ""
"Davam etmək üçün zəhmət olmasa \"İçə Transfer et\" altında bir fayl yükləyin."
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"İstifadə: {$scriptName} {$pluginName} [command] ...\n"
"Əmrlər:\n"
" import [xmlFileName] [journal_path] [user_name] ...\n"
" export [xmlFileName] [journal_path] articles [articleId1] [articleId2] ...\n"
" export [xmlFileName] [journal_path] article [articleId]\n"
" export [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
" export [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"XML sənədinin kökünə bağlı olaraq aşağıdakı kimi dataları qəbul etmək üçün "
"əlavə parametrlər lazımdır.\n"
"\n"
"Kök düyün <article> və ya <articles> isə, əlavə parametlər lazımdır.\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
" issue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
" issue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
" issue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"\"{$issueTitle}\" nömrəsindəki \"{$sectionAbbrev}\" bölmənin qısaltması, "
"mövcud bir jurnalın bölməsi ilə uyğundur, ancaq bu bölmənin başqa bir "
"qısaltması ilə uyğun gəlmir."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"{$issueId} ID-si ilə mövcud nömrə, \"{$issueIdentification}\" ID-si ilə "
"verilən nömrə məlumatı ilə uyuşur. Bu nömrə dəyişdirilməyəcək, ancaq "
"məqalələr əlavə ediləcəkdir."
@@ -0,0 +1,132 @@
# Cyril Kamburov <cc@intermedia.bg>, 2021, 2022, 2023.
msgid ""
msgstr ""
"PO-Revision-Date: 2023-11-20 03:17+0000\n"
"Last-Translator: Cyril Kamburov <cc@intermedia.bg>\n"
"Language-Team: Bulgarian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/bg/>\n"
"Language: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Плъгин за собствен XML формат"
msgid "plugins.importexport.native.description"
msgstr ""
"Импортиране и експортиране на статии и цели броеве в собствен XML формат на "
"OJS."
msgid "plugins.importexport.native.import"
msgstr "Импорт"
msgid "plugins.importexport.native.import.instructions"
msgstr "Качване на XML файл за импорт"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Изберете статии за експорт"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Експорт на статии"
msgid "plugins.importexport.native.exportIssues"
msgstr "Експорт на броеве"
msgid "plugins.importexport.native.results"
msgstr "Резултати от импорт"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Моля, качете файл в „Импорт“ за да продължите."
msgid "plugins.importexport.native.importComplete"
msgstr "Импортирането завърши успешно. Следните елементи бяха внесени:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Начин на употреба: {$scriptName} {$pluginName} [command] ...\n"
"Команди:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"За импортиране на данни са необходими допълнителни параметри, както следва, "
"в зависимост\n"
"на основния възел на XML документа. .\n"
"\n"
"Ако основния възел е <article> или <articles> се изискват допълнителни "
"параметри.\n"
"Приемат се следните формати:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Непозната секция/раздел {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Потребителят трябва да бъде предоставен чрез команден параметър --user_name "
"или -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Заглавието на секцията \"{$section1Title}\" и заглавието на секцията "
"\"{$section2Title}\" в \"{$issueTitle}\" в броя съвпадат с различните "
"съществуващи раздели на списанието."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Заглавието на секцията \"{$sectionTitle}\" в \"{$issueTitle}\" в броя "
"съвпадат със съществуващ раздел на списанието, но друго заглавие на този "
"раздел не съвпада с друго заглавие на съществуващ раздел на списанието."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Абревиатурата на секцията \"{$section1Abbrev}\" и абревиатурата на секцията "
"\"{$section2Title}\" в \"{$issueTitle}\" в броя съвпадат с различните "
"съществуващи раздели на списанието."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Абревиатурата на секцията \"{$sectionAbbrev}\" в \"{$issueTitle}\" в броя "
"съвпадат със съществуващ раздел на списанието, но друга абревиатура в този "
"раздел не съвпада с друга абревиатура в съществуващ раздел на списанието."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Нито един или повече от един брой на списанието съответства на дадената "
"идентификация \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Съществуващ брой с идентификатор {$issueId} съвпада с дадената идентификация "
"за брой \"{$issueIdentification}\". Този брой няма да бъде променен, но "
"статиите ще бъдат добавени."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Елементът за идентификация на броя липсва за статията \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Статията \"{$articleTitle}\" се съдържа в броя, но няма дата на публикуване."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Посочено е изображение на корицата с невалидно файлово разширение."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Изображението на корицата беше вградено без посочване на име."
@@ -0,0 +1,128 @@
# Jordi LC <jordi.lacruz@uab.cat>, 2021.
msgid ""
msgstr ""
"PO-Revision-Date: 2021-08-03 09:36+0000\n"
"Last-Translator: Jordi LC <jordi.lacruz@uab.cat>\n"
"Language-Team: Catalan <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ca_ES/>\n"
"Language: ca_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Mòdul XML nadiu"
msgid "plugins.importexport.native.description"
msgstr "Importar i exportar articles i números en el format XML nadiu d'OJS."
msgid "plugins.importexport.native.import"
msgstr "Importar"
msgid "plugins.importexport.native.import.instructions"
msgstr "Carregar arxiu XML per importar"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Seleccioneu els articles per exportar"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportar articles"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportar números"
msgid "plugins.importexport.native.results"
msgstr "Importar resultats"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Carregueu un arxiu en l'apartat \"Importar\" per continuar."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"La importació s'ha completat correctament. S'han importat els elements "
"següents:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Ús: {$scriptName} {$pluginName} [command] ...\n"
"Ordres:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Són necessaris paràmetres addicionals per importar dades de la següent "
"manera,\n"
"en funció del node arrel del document XML.\n"
"\n"
"Si el node arrel és <article> o <articles>, seran necessaris paràmetres "
"addicionals.\n"
"S'accepten els formats següents:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Secció desconeguda {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "L'usuari/ària especificat (\"{$userName}\") no existeix."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Els títols de les seccions \"{$section1Title}\" i \"{$section2Title}\" del "
"número \"{$issueTitle}\" corresponen a les diferents seccions existents de "
"la revista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"El títol de secció \"{$sectionTitle}\" en el número \"{$issueTitle}\" es "
"correspon amb una secció existent de la revista, però un altre títol "
"d'aquesta secció no coincideix amb cap títol de la secció existent de la "
"revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Les abreviatures de les seccions \"{$section1Abbrev}\" i "
"\"{$section2Abbrev}\" del número \"{$issueTitle}\" corresponen a les "
"diferents seccions existents de la revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"L'abreviatura de secció \"{$sectionTitle}\" en el número \"{$issueTitle}\" "
"es correspon amb una secció existent de la revista, però una altra "
"abreviatura d'aquesta secció no coincideix amb cap abreviatura de la secció "
"existent de la revista."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Cap número o més d'un coincideixen amb la identificació de número "
"proporcionada \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"El número existent amb l'identificador {$issueId} coincideix amb "
"l'identificador de número proporcionat \"{$issueIdentification}\". Aquest "
"número no es modificarà, però s'hi afegiran els articles."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"No es troba l'element identificador de número per a l'article "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"L'article \"{$articleTitle}\" està inclòs en un número, però no té data de "
"publicació."
@@ -0,0 +1,116 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-04-12 19:37+0000\n"
"Last-Translator: Hewa Salam Khalid <hewa.salam@koyauniversity.org>\n"
"Language-Team: Kurdish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ku_IQ/>\n"
"Language: ku_IQ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "گرێدانی XMLی ڕەسەن"
msgid "plugins.importexport.native.description"
msgstr ""
"هاوردەکردن و هەناردەکردنی توێژینەوە و ژمارەی گۆڤارەکان لە سیستەمی گۆڤاری "
"کراوە بە ڕێکخستنی XML."
msgid "plugins.importexport.native.import"
msgstr "هاوردەکردن"
msgid "plugins.importexport.native.import.instructions"
msgstr "بارکردنی XML بۆ هاوردەکردن"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "ئەو توێژینەوانە دیاری بکە کە دەتەوێت هەناردەیان بکەیت"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "هەناردەکردنی توێژینەوەکان"
msgid "plugins.importexport.native.exportIssues"
msgstr "هەناردەکردنی ژمارەکانی گۆڤار"
msgid "plugins.importexport.native.results"
msgstr "ئەنجامەکان"
msgid "plugins.inportexport.native.uploadFile"
msgstr "تکایە فایلێک لە ژێر ''هاوردەکردن'' بار بکە بۆ بەردەوامبون."
msgid "plugins.importexport.native.importComplete"
msgstr "هاوردەکردنەکە سەرکەوتو بو. ئەم دانانە هاوردە کران:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"بەکارهێنان: {$scriptName} {$pluginName} [command] ...\n"
"فەرمانەکان:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"هۆکارە داواکراوەکانی زیادکردن بۆ هێنانی زانیاری\n"
"بە پشتبەستن بە XML \n"
"\n"
"ئەگەر <article> یان <articles> سەرچاوە بون زانیاری زیاتر داوا کراوە\n"
"ئەم ڕێکخستنانە قبوڵ کران:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "بەشێکی نەناسراو {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "بەکارهێنەری دیاریکراو: \"{$userName}\"بەردەست نییە."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"ناونیشانی بەشی\"{$section1Title}\" و ناونیشانی بەشی\"{$section2Title}\" لە "
"\"{$issueTitle}\" لەگەڵ بەشێکی دیکەی گۆڤارەکە هاوشێوەیە."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"ناونیشانی بەشی \"{$section1Title}\" لە \"{$issueTitle}\" لەگەڵ بەشێکی "
"دیکەی گۆڤارێکە هاوشێوەیە، بەڵام ناونیشانی بەشەکەی دیکە هاوشێوەیی تێدا نییە."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"کورتکراوەی بەشی \"{$section1Abbrev}\" و کورتکراوەی بەشی "
"\"{$section2Abbrev}\" لە ژمارەی \"{$issueTitle}\" هاوشێوەی بەشەکانی دیکەن "
"لەم گۆڤارەدا."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"کورتکراوەی بەشی\"{$sectionAbbrev}\" لە ژمارەی \"{$issueTitle}\" هاوشێوەی "
"یەکێک لە ژمارەکانە، بەڵام ئەوەی دیکە هاوشێوەیی تێدا نییە."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "هیچ کام لە ژمارەکان هاوشێوەییان نییە \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"ژمارەیەکی گۆڤار ئەم پێناسەی هەڵگرتووە {$issueId} کە هاوشێوەیە لەگەڵ ژمارەی "
"\"{$issueIdentification}\". ئەم ژمارەیە گۆڕانکاری تێدا نەکراوە، بەڵام ئەم "
"توێژینەوانەی بۆ زیاد دەبێت."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "ناسێنەری ئەم ژمارەیە لە توێژینەوەی \"{$articleTitle}\"یدا ونە."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"توێژینەوەی \"{$articleTitle}\" لەگەڵ ژمارەیەکی گۆڤارە بەڵام ڕێککەوتی "
"بڵاوکردنەوەی لەسەر نییە."
@@ -0,0 +1,127 @@
# Jiří Dlouhý <jiri.dlouhy@czp.cuni.cz>, 2022, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2023-10-28 15:06+0000\n"
"Last-Translator: Jiří Dlouhý <jiri.dlouhy@czp.cuni.cz>\n"
"Language-Team: Czech <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/cs/>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin nativního XML"
msgid "plugins.importexport.native.description"
msgstr "Importuje a exportuje v OJS články a čísla v OJS nativním XML formátu."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Nahrát XML soubor pro import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Zvolte článek pro export"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportovat články"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportovat čísla"
msgid "plugins.importexport.native.results"
msgstr "Výsledky importu"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Nahrajte, prosím, soubor pod \"Import\", abyste mohli pokračovat."
msgid "plugins.importexport.native.importComplete"
msgstr "Import byl úspěšně dokončen. Byly importovány následující položky:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Použití: {$scriptName} {$pluginName} [command] ...\n"
"Příkazy:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Pro import dat jsou nutné další parametry v závislosti na\n"
"kořenovém uzlu dokumentu XML.\n"
"\n"
"Pokud je kořenový uzel <article> či <articles>, jsou požadovány další "
"parametry.\n"
"Přijímán je následující formát:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Neznámá sekce {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Uživatel musí být zadán pomocí parametru --user_name nebo -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Název sekce \"{$section1Title}\" a název sekce \"{$section2Title}\" v čísle "
"{$issueTitle} odpovídá různým stávajícím sekcím časopisu."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Název sekce \"{$sectionTitle}\" v čísle {$issueTitle} odpovídal existující "
"sekci časopisu, ale jiný název této sekce neodpovídá jinému názvu stávající "
"sekce časopisu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Zkratka sekce \"{$section1Abbrev}\" a zkratka sekce {$section2Abbrev}\" "
"čísla \"{$issueTitle}\" odpovídají různým stávajícím sekcím časopisu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Zkratka sekce \"{$sectionAbbrev}\" v čísle \"{$issueTitle}\" odpovídá "
"existující sekci časopisu, ale další zkratka této sekce neodpovídá jiné "
"zkratce existující sekce časopisu."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Žádné nebo naopak více než jedno číslo odpovídá identifikaci daného čísla "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Existující číslo s id {$issueId} odpovídá zadané identifikaci čísla "
"\"{$issueIdentification}\". Toto číslo se nezmění, ale články budou přidány."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Identifikační element čísla chybí v článku \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Článek \"{$articleTitle}\" je obsažen v tomto čísle, ale nemá zadáno datum "
"zveřejnění."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Titulní obrázek byl vložen bez uvedení názvu."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Byl zadán titulní obrázek s neplatnou příponou souboru."
@@ -0,0 +1,117 @@
# Alexandra Fogtmann-Schulz <alfo@kb.dk>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2023-10-30 13:43+0000\n"
"Last-Translator: Alexandra Fogtmann-Schulz <alfo@kb.dk>\n"
"Language-Team: Danish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/da/>\n"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML-plugin"
msgid "plugins.importexport.native.description"
msgstr "Importér og eksportér artikler og numre i OJS' eget XML-format."
msgid "plugins.importexport.native.import"
msgstr "Importér"
msgid "plugins.importexport.native.import.instructions"
msgstr "Upload XML-fil til import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Udvælg artikler til eksport"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Eksportér artikler"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksportér numre"
msgid "plugins.importexport.native.results"
msgstr "Importresultater"
msgid "plugins.inportexport.native.uploadFile"
msgstr "For at fortsætte skal du uploade en fil under \"Import\"."
msgid "plugins.importexport.native.importComplete"
msgstr "Importen blev gennemført. Følgende numre blev importeret:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Anvendelse: {$scriptName} {$pluginName} [command] ...\n"
"Kommandoer:\n"
"\timporter [xmlFileName] [journal_path] [--user_name] ...\n"
"\teksporter [xmlFileName] [journal_path] artikler [articleId1] [articleId2] "
"...\n"
"\teksporter [xmlFileName] [journal_path] artikel [articleId]\n"
"\teksporter [xmlFileName] [journal_path] numre [issueId1] [issueId2] ...\n"
"\teksporter [xmlFileName] [journal_path] nummer [issueId]\n"
"\n"
"Yderligere parametre er nødvendige for at importere data som følger, "
"afhængigt\n"
"af rodelement i XML-dokumentet.\n"
"\n"
"Hvis rodelementet er <article> eller <articles>, kræves yderligere parametre."
"\n"
"Følgende formater accepteres:\n"
"\n"
"{$scriptName} {$pluginName} importer [xmlFileName] [journal_path] "
"[--user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} importer [xmlFileName] [journal_path] "
"[--user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} importer [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Ukendt sektion {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Der skal angives en bruger ved at benytte --user_name eller -u kommando-"
"parametrene."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Sektionstitlen \"{$section1Title}\" og sektionstitlen \"{$section2Title}\" i "
"\"{$issueTitle}\" nummer matchede de forskellige eksisterende "
"tidsskriftssektioner."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Sektionstitlen \"{$sectionTitle}\" i \"{$issueTitle}\" nummer matchede en eksisterende tidsskriftssektion, men en anden titel i denne sektion stemmer ikke overens med en anden titel i det eksisterende tidsskrift."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Sektionsforkortelsen \"{$section1Abbrev}\" og sektionsforkortelsen \"{$section2Abbrev}\" fra \"{$issueTitle}\" nummer matchede de forskellige eksisterende tidsskriftssektioner."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Sektionsforkortelsen \"{$sectionAbbrev}\" i \"{$issueTitle}\" nummer matchede en eksisterende tidsskriftssektion, men en anden forkortelse af denne sektion stemmer ikke overens med en anden forkortelse af den eksisterende tidsskriftssektion."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Intet eller flere end et nummer matchede den givne nummer-identifikation \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Eksisterende nummer med id {$issueId} matcher den givne nummer-identifikation \"{$issueIdentification}\". Dette nummer vil ikke blive ændret, men artikler vil blive tilføjet."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Artiklen \"{$articleTitle}\" mangler nummer-identifikation."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Artiklen \"{$articleTitle}\" er indeholdt i et nummer, men har ingen publiceringsdato."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Der blev indlejret et forsidebillede uden at angive et navn."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Der blev angivet et forsidebillede med et ugyldigt filtypenavn."
@@ -0,0 +1,104 @@
# Heike Riegler <heike.riegler@julius-kuehn.de>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-09-30T06:56:45-07:00\n"
"PO-Revision-Date: 2021-06-25 09:17+0000\n"
"Last-Translator: Heike Riegler <heike.riegler@julius-kuehn.de>\n"
"Language-Team: German <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/de_DE/>\n"
"Language: de_DE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Natives XML-Plugin"
msgid "plugins.importexport.native.description"
msgstr "Artikel und Ausgaben in OJS' nativem XML-Format importieren und exportieren."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Lade XML-Datei zum Import hoch"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Wählen Sie Artikel aus, die exportiert werden sollen"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Artikel exportieren"
msgid "plugins.importexport.native.exportIssues"
msgstr "Ausgaben exportieren"
msgid "plugins.importexport.native.results"
msgstr "Import Ergebnisse"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Bitte laden Sie unter \"Import\" eine Datei hoch, um fortzufahren."
msgid "plugins.importexport.native.importComplete"
msgstr "Der Import wurde erfolgreich abgeschlossen. Die folgenden Elemente wurden importiert:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Nutzung: {$scriptName} {$pluginName} [command] ...\n"
"Befehle:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Zusätzliche Parameter sind wie folgt erforderlich, abhängig\n"
"von dem Wurzelelement der XML-Datei.\n"
"\n"
"Wenn das Wurzelelement <article> oder <articles> ist, sind zusätzliche Parameter erforderlich.\n"
"Die folgenden Formate sind zulässig:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
""
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Unbekannte Rubrik {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Der angegebene Nutzer/die angegebene Nutzerin, \"{$userName}\", existiert nicht."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Rubrikentitel \"{$section1Title}\" und Rubrikentitel \"{$section2Title}\" in Ausgabe \"{$issueTitle}\" sind mit existierenden Rubriken vereinbar."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Rubrikentitel \"{$sectionTitle}\" in Ausgabe \"{$issueTitle}\" ist mit einer existierenden Rubrik vereinbar, aber ein anderer Titel ist mit existierenden Rubrikentiteln in dieser Zeitschrift nicht vereinbar."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Rubrikenabkürzung \"{$section1Abbrev}\" und Rubrikenabkürzung \"{$section2Abbrev}\" in Ausgabe \"{$issueTitle}\" sind mit existierenden Rubriken vereinbar."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Die Rubrikenabkürzung \"{$sectionAbbrev}\" in Ausgabe \"{$issueTitle}\" ist mit einer existierenden Rubrik vereinbar, aber eine andere Rubrikenabkürzung ist mit existierenden Rubrikenabkürzungen in dieser Zeitschrift nicht vereinbar."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Keine oder mehr als eine Ausgabe passen zu der angegebenen Ausgabenkennung \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Die existierende Ausgabe mit der ID {$issueId} passt zur angegebenen Kennung \"{$issueIdentification}\". Diese Ausgabe wird nicht verändert, aber Artikel werden hinzugefügt werden."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Das Element zur Ausgabenidentifizierung fehlt für den Artikel \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Der Artikel \"{$articleTitle}\" ist in einer Ausgabe enthalten, aber hat kein Veröffentlichungsdatum."
@@ -0,0 +1,8 @@
# Weblate Admin <alec@smecher.bc.ca>, 2023.
msgid ""
msgstr ""
"Language: dsb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Weblate\n"
@@ -0,0 +1,130 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-09-30T06:56:45-07:00\n"
"PO-Revision-Date: 2019-09-30T06:56:45-07:00\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML Plugin"
msgid "plugins.importexport.native.description"
msgstr "Import and export articles and issues in OJS's native XML format."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Upload XML file to import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Select articles to export"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Export Articles"
msgid "plugins.importexport.native.exportIssues"
msgstr "Export Issues"
msgid "plugins.importexport.native.results"
msgstr "Import Results"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Please upload a file under \"Import\" in order to continue."
msgid "plugins.importexport.native.importComplete"
msgstr "The import completed successfully. The following items were imported:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Usage: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Additional parameters are required for importing data as follows, depending\n"
"on the root node of the XML document.\n"
"\n"
"If the root node is <article> or <articles>, additional parameters are "
"required.\n"
"The following formats are accepted:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Unknown section {$param}"
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "A cover image with an invalid file extension was specified."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "A cover image was embedded without specifying a name."
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"A user must be provided by using the --user_name or -u command parameter."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"The section title \"{$section1Title}\" and the section title "
"\"{$section2Title}\" in the \"{$issueTitle}\" issue matched the different "
"existing journal sections."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"The section title \"{$sectionTitle}\" in the \"{$issueTitle}\" issue matched "
"an existing journal section, but another title of this section doesn't match "
"with another title of the existing journal section."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"The section abbreviation \"{$section1Abbrev}\" and the section abbreviation "
"\"{$section2Abbrev}\" of the \"{$issueTitle}\" issue matched the different "
"existing journal sections."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"The section abbreviation \"{$sectionAbbrev}\" in the \"{$issueTitle}\" issue "
"matched an existing journal section, but another abbreviation of this "
"section doesn't match with another abbreviation of the existing journal "
"section."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"None or more than one issue matches the given issue identification "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Existing issue with id {$issueId} matches the given issue identification "
"\"{$issueIdentification}\". This issue will not be modified, but articles "
"will be added."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"The issue identification element is missing for the article "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"The article \"{$articleTitle}\" is contained within an issue, but has no "
"published date."
@@ -0,0 +1,142 @@
# Jordi LC <jordi.lacruz@uab.cat>, 2021, 2024.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2024-02-15 15:39+0000\n"
"Last-Translator: Jordi LC <jordi.lacruz@uab.cat>\n"
"Language-Team: Spanish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/es/>\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Módulo XML nativo"
msgid "plugins.importexport.native.description"
msgstr "Importar y exportar libros en el formato XML nativo."
msgid "plugins.importexport.native.import"
msgstr "Importar"
msgid "plugins.importexport.native.import.instructions"
msgstr "Cargar archivo XML para importar"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Seleccione los artículos para exportar"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportar artículos"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportar números"
msgid "plugins.importexport.native.results"
msgstr "Importar resultados"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Cargue un archivo en el apartado \"Importar\" para continuar."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"La importación se ha completado con éxito. Se han importado los siguientes "
"elementos:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Uso: {$scriptName} {$pluginName} [command] ...\n"
"Comandos:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Se requieren los siguientes parámetros adicionales para importar datos, \n"
"en función del nodo raíz del documento XML.\n"
"\n"
"Si el nodo raíz es <article> o <articles>, se necesitarán parámetros "
"adicionales.\n"
"Se aceptan los formatos siguientes:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Sección desconocida {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Se debe proporcionar un usuario/a a través del parámetro de comando --"
"user_name o -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Los títulos de sección \"{$section1Title}\" y \"{$section2Title}\" del "
"número \"{$issueTitle}\" corresponden a las diferentes secciones existentes "
"de la revista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"El título de sección \"{$sectionTitle}\" del número \"{$issueTitle}\" se "
"corresponde con una sección existente de la revista, pero otro título de "
"esta sección no se corresponde con un título en la sección existente de la "
"revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Las abreviaturas de sección \"{$section1Abbrev}\" y \"{$section2Abbrev}\" "
"del número \"{$issueTitle}\" se corresponden con las diferentes secciones "
"existentes de la revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"La abreviatura de sección \"{$sectionAbbrev}\" del número \"{$issueTitle}\" "
"se corresponde con una sección existente de la revista, pero otra "
"abreviatura de esta sección no se corresponde con una abreviatura en la "
"sección existente de la revista."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Ningún número o más de uno coinciden con la identificación de número "
"proporcionada (\"{$issueIdentification}\")."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"El número ya existente con el identificador {$issueId} coincide con el "
"identificador de número proporcionado (\"{$issueIdentification}\"). Este "
"número no se modificará, pero se añadirán los artículos."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"No se encuentra el elemento identificador de número para el artículo "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"El artículo \"{$articleTitle}\" está asignado a un número pero no tiene "
"fecha de publicación."
#~ msgid "plugins.importexport.native.export"
#~ msgstr "Exportar"
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Se ha incrustado una imagen de portada sin especificar un nombre."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr ""
"Se ha especificado una imagen de portada con una extensión de archivo "
"inválida."
@@ -0,0 +1,104 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2019-11-19T11:05:43+00:00\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "plugins.importexport.native.displayName"
msgstr "افزونه XML مقالات و شماره ها"
msgid "plugins.importexport.native.description"
msgstr "درون ریزی یا برون دهی مقالات و شماره ها"
msgid "plugins.importexport.native.import"
msgstr "درون ریزی"
msgid "plugins.importexport.native.import.instructions"
msgstr "آپلود یک فایل XML برای درون ریزی"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "مقاله مورد نظر برای برون دهی را انتخاب کنید."
msgid "plugins.importexport.native.exportSubmissions"
msgstr "برون دهی مقالات"
msgid "plugins.importexport.native.exportIssues"
msgstr "برون دهی شماره ها"
msgid "plugins.importexport.native.results"
msgstr "نتایج"
msgid "plugins.inportexport.native.uploadFile"
msgstr "برای ادامه ابتدا یک فایل را در قسمت \"درون ریزی\" آپلود کنید"
msgid "plugins.importexport.native.importComplete"
msgstr "درون ریزی با موفقیت انجام شد، موارد زیر به سیستم درون ریزی شد:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"نحوه استفاده: {$scriptName} {$pluginName} [command] ... فرامین: import "
"[xmlFileName] [journal_path] [user_name] ... export [xmlFileName] "
"[journal_path] articles [articleId1] [articleId2] ... export [xmlFileName] "
"[journal_path] article [articleId] export [xmlFileName] [journal_path] "
"issues [issueId1] [issueId2] ... export [xmlFileName] [journal_path] issue "
"[issueId]\tبرای وارد کردن داده ها پارامترهای دیگری به شرح ذیل بسته به root "
"node سند XML لازم است: چنانچه root node موجود <article> و یا <articles> "
"باشد پارامترهای دیگری نیز لازم است. الگوهای زیر قابل قبول است:"
"\t{$scriptName} {$pluginName} import [xmlFileName] [journal_path] "
"[user_name] issue_id [issueId] section_id [sectionId]\t{$scriptName} "
"{$pluginName} import [xmlFileName] [journal_path] [user_name] issue_id "
"[issueId] section_name [name]\t{$scriptName} {$pluginName} import "
"[xmlFileName] [journal_path] issue_id [issueId] section_abbrev [abbrev]"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "بخش ناشناس {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "کاربر ذکر شده \"{$userName}\" وجود ندارد."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"نوع مقاله ذکر شده \"{$section1Title}\" و \"{$section2Title}\" در شماره مجله "
"\"{$issueTitle}\" برای نوع دیگری از مقاله در این مجله بکار رفته است."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"عنوان نوع مقاله \"{$sectionTitle}\" در شماره مجله \"{$issueTitle}\" برای یک "
"نوع دیگز مقاله بکار رفته است ولی عنوان دیگر این نوع مقاله تکراری نیست."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"علامت اختصاری نوع مقاله اول \"{$section1Abbrev}\" و دوم "
"\"{$section2Abbrev}\" در مجله شماره \"{$issueTitle}\" مطابقت با مجلات مختلفی "
"دارند."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"علامت اختصاری \"{$sectionAbbrev}\" در شماره مجله \"{$issueTitle}\" مطابق با "
"مجله موجودی است ولی علامت اختصاری دیگر آن مطابقت ندارد."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "هیچ یا چندی شماره با این شناسه یافت شد. \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"شماره موجود با شناسه {$issueId} با شناسه داده شده «{$issueIdentification}» "
"مطابقت دارد. اطلاعات کلی شماره تغییری نخواهد کرد و تنها مقالات به آن افزوده "
"خواهد شد."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "شناسه شماره مقاله «{$articleTitle}» یافت نشد."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"مقاله «{$articleTitle}» در داخل شماره‌ای گنجانده شده است، اما دارای تاریخ "
"انتشاری نمی‌باشد."
@@ -0,0 +1,131 @@
# Antti-Jussi Nygård <ajnyga@gmail.com>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2023-12-05 19:46+0000\n"
"Last-Translator: Antti-Jussi Nygård <ajnyga@gmail.com>\n"
"Language-Team: Finnish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/fi/>\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Järjestelmän XML-lisäosa"
msgid "plugins.importexport.native.description"
msgstr ""
"Tuo ja vie artikkeleita ja numeroita OJS-järjestelmän omassa XML-muodossa."
msgid "plugins.importexport.native.import"
msgstr "Tuo"
msgid "plugins.importexport.native.import.instructions"
msgstr "Lataa tuotava XML-tiedosto"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Valitse vietävät artikkelit"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Vie artikkeleita"
msgid "plugins.importexport.native.exportIssues"
msgstr "Vie numeroita"
msgid "plugins.importexport.native.results"
msgstr "Tuonnin tulokset"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Ole hyvä ja lataa tiedosto kohdassa \"Tuo\" jatkaaksesi."
msgid "plugins.importexport.native.importComplete"
msgstr "Tuonti onnistui. Seuraavat kohteet tuotiin:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Käyttö: {$scriptName} {$pluginName} [command] ...\n"
"Komennot:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Ylimääräisiä parametrejä tarvitaan tuontiin riippuen XML-tiedoston\n"
"juurielementistä.\n"
"\n"
"Mikäli juurielementti on <article> tai <articles>, ylimääräisiä parametrejä "
"tarvitaan.\n"
"Seuraavat muodot ovat sallittuja:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Tuntematon osasto {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Käyttäjä on annettava käyttämällä valintaa --user_name- tai -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Osaston otsikko \"{$section1Title}\" ja osaston otsikko \"{$section2Title}\" "
"numerossa \"{$issueTitle}\" täsmäsivät eri olemassa olevien osastojen kanssa."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Osaston otsikko \"{$sectionTitle}\" numerossa \"{$issueTitle}\" täsmää jo "
"olemassa olevan julkaisun osaston kanssa, mutta toinen osastosta käytetty "
"lyhenne ei täsmää toisen lyhenteen kanssa, joka on käytössä olemassa "
"olevassa julkaisun osastossa."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Osaston lyhenne \"{$section1Abbrev}\" ja osaston lyhenne "
"\"{$section2Abbrev}\" numerossa\"{$issueTitle}\" täsmäsivät eri olemassa "
"olevien osastojen kanssa."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Osaston lyhenne \"{$sectionAbbrev}\"numerossa \"{$issueTitle}\" täsmää jo "
"olemassa olevan julkaisun osaston kanssa, mutta toinen osastosta käytetty "
"lyhenne ei täsmää toisen lyhenteen kanssa, joka on käytössä olemassa "
"olevassa julkaisun osastossa."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Ei yksikään tai useampi kuin yksi numero täsmää tunnistiedon "
"\"{$issueIdentification}\" kanssa."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Numerolla {$issueId} on sama tunniste \"{$issueIdentification}\". Numeroa ei "
"muokata, mutta nyt tuotavat artikkelit lisätään siihen."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Numeron tunnistetieto puuttuu artikkelista \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Artikkeli \"{$articleTitle}\" sisältyy numeroon, mutta sille ei ole annettu "
"julkaisupäivää."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Kansikuvan tiedostopääte on virheellinen."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Kansikuvan nimi puuttuu."
@@ -0,0 +1,143 @@
# "Marie-Hélène Vézina [UdeMontréal]" <marie-helene.vezina@umontreal.ca>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-09-30T06:56:45-07:00\n"
"PO-Revision-Date: 2023-10-31 19:38+0000\n"
"Last-Translator: \"Marie-Hélène Vézina [UdeMontréal]\" <marie-helene."
"vezina@umontreal.ca>\n"
"Language-Team: French (Canada) <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/fr_CA/>\n"
"Language: fr_CA\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugiciel XML natif d'OJS"
msgid "plugins.importexport.native.description"
msgstr ""
"Importer et exporter des articles et des numéros dans le format XML natif "
"dOJS."
msgid "plugins.importexport.native.import"
msgstr "Importer"
msgid "plugins.importexport.native.import.instructions"
msgstr "Téléverser un fichier XML pour l'importer"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Sélectionner les articles à exporter"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exporter les articles"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exporter les numéros"
msgid "plugins.importexport.native.results"
msgstr "Résultats de l'importation"
msgid "plugins.inportexport.native.uploadFile"
msgstr ""
"Veuillez téléverser un fichier sous « Importer » pour pouvoir poursuivre."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"L'importation a été complétée avec succès. Les éléments suivants ont été "
"importés :"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Utilisation : {$scriptName} {$pluginName} [command] ...\n"
"Commandes :\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Des paramètres supplémentaires sont requis pour importer des données comme "
"suit, selon\n"
"le nœud racine du document XML.\n"
"\n"
"Si le noeud racine est <article> ou <articles>, des paramètres "
"supplémentaires sont requis.\n"
"Les formats suivants sont acceptés :\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Section {$param} inconnue"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "L'utilisateur-trice spécifié-e, « {$userName} », n'existe pas."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Le titre de rubrique « {$section1Title} » et le titre de rubrique "
"« {$section2Title} » dans le numéro « {$issueTitle} » sont identiques à des "
"rubriques existantes dans la revue."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Le titre de rubrique « {$sectionTitle} » dans le numéro « {$issueTitle} » "
"est identique à une rubrique existante dans la revue, mais un autre titre de "
"cette rubrique ne correspond pas à un autre titre dans une rubrique "
"existante de la revue."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"L'abréviation « {$section1Abbrev} » et l'abréviation « {$section2Abbrev} » "
"du numéro « {$issueTitle} » sont identiques à des rubriques existantes dans "
"la revue."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"L'abréviation de rubrique « {$sectionAbbrev} » du numéro « {$issueTitle} » "
"correspond à un rubrique existante de la revue, mais une autre abréviation "
"de cette rubrique ne correspond pas à aucune autre abréviation de rubrique "
"existante."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Aucun ou plus d'un numéro correspond à l'identifiant de numéro donné, soit "
"« {$issueIdentification} »."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Un numéro existant (ID: {$issueId}) correspond à l'identifiant de numéro "
"donné (« {$issueIdentification} »). Le numéro ne sera pas modifié, mais les "
"articles seront ajoutés."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"L'élément d'identification du numéro est manquant pour l'article intitulé "
"« {$articleTitle} »."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"L'article intitulé « {$articleTitle} » se retrouve dans un numéro, mais n'a "
"pas de date de publication."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Une image de couverture a été incorporée sans spécifier de nom."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr ""
"Une image de couverture avec une extension de fichier non valide a été "
"spécifiée."
@@ -0,0 +1,127 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2021-05-21 08:10+0000\n"
"Last-Translator: Hans Spijker <hans.spijker@huygens.knaw.nl>\n"
"Language-Team: French <http://translate.pkp.sfu.ca/projects/ojs/importexport-"
"native/fr_FR/>\n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Module XML natif"
msgid "plugins.importexport.native.description"
msgstr ""
"Importer et exporter des articles et numéros au format XML natif d'OJS."
msgid "plugins.importexport.native.import"
msgstr "Importer"
msgid "plugins.importexport.native.import.instructions"
msgstr "Téléverser un fichier XML à importer"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Sélectionner les articles à exporter"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exporter les articles"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exporter les numéros"
msgid "plugins.importexport.native.results"
msgstr "Résultats de l'importation"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Veuillez téléverser un fichier sous « Importer » pour continuer."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"L'importation a bien été réalisée. Les éléments suivants ont été importés :"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Utilisation : {$scriptName} {$pluginName} [command] ...\n"
"Commandes :\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Des paramètres supplémentaires sont requis pour importer des données comme "
"suit, selon\n"
"le nœud racine du document XML.\n"
"\n"
"Si le noeud racine est <article> ou <articles>, des paramètres "
"supplémentaires sont requis.\n"
"Les formats suivants sont acceptés :\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Section {$param} inconnue"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "L'utilisatrice ou utilisateur spécifié, « {$userName] », n'existe pas."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Le titre de rubrique « {$section1Title} » et le titre de rubrique "
"« {$section2Title} » dans le numéro « {$issueTitle} » sont identiques à des "
"rubriques existantes dans la revue."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Le titre de rubrique « {$sectionTitle} » dans le numéro « {$issueTitle} » "
"est identique à une rubrique existante dans la revue, mais un autre titre de "
"cette rubrique ne correspond à aucun autre titre de rubrique existante de la "
"revue."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"L'abréviation « {$section1Abbrev} » et l'abréviation « {$section2Abbrev} » "
"du numéro « {$issueTitle} » sont identiques à des rubriques existantes dans "
"la revue."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"L'abréviation de rubrique « {$sectionAbbrev} » du numéro « {$issueTitle} » "
"correspond à un rubrique existante de la revue, mais une autre abréviation "
"de cette rubrique ne correspond pas à aucune autre abréviation de rubrique "
"existante."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Aucun ou plus d'un numéro correspond à l'identifiant de numéro donné "
"« {$issueIdentification} »."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Un numéro existant (ID: {$issueId}) correspond à l'identifiant de numéro "
"donné (« {$issueIdentification} »). Le numéro ne sera pas modifié, mais les "
"articles seront ajoutés."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"L'élément d'identification du numéro est manquant pour l'article "
"« {$articleTitle} »."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"L'article « {$articleTitle} » est présent dans un numéro, mais n'a pas de "
"date de publication."
@@ -0,0 +1,121 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2021-05-22 12:35+0000\n"
"Last-Translator: Real Academia Galega <reacagal@gmail.com>\n"
"Language-Team: Galician <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/gl_ES/>\n"
"Language: gl_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Complemento XML nativo"
msgid "plugins.importexport.native.description"
msgstr ""
"Importar e exportar artigos e números no formato XML orixinario de OJS."
msgid "plugins.importexport.native.import"
msgstr "Importar"
msgid "plugins.importexport.native.import.instructions"
msgstr "Cargar arquivo XML para importar"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Seleccione os artigos para exportar"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportar artigos"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportar números"
msgid "plugins.importexport.native.results"
msgstr "Resultados da importación"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Cargue un arquivo no apartado \"Importar\" para continuar."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"A importación completouse correctamente. Importáronse os elementos seguintes:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Uso: {$scriptName} {$pluginName} [command] ...\n"
"Ordes:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Requírense parámetros adicionais para importar datos da seguinte maneira, \n"
"dependendo do nodo raíz do documento XML.\n"
"\n"
"Se o nodo raíz é <article> ou <articles>, serán necesarios parámetros "
"adicionais.\n"
"Acéptanse os formatos seguintes:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Sección descoñecida {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "O usuario/a especificado (\"{$userName}\") non existe."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Os títulos de sección \"{$section1Title}\" e \"{$section2Title}\" do número "
"\"{$issueTitle}\" corresponden ás diferentes seccións existentes na revista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"O título de sección \"{$sectionTitle}\" no número \"{$issueTitle}\" "
"correspóndese cunha sección existente na revista, pero outro título desta "
"sección non coincide con ningún título da sección existente na revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"As abreviaturas das seccións \"{$section1Abbrev}\" e \"{$section2Abbrev}\" "
"do número \"{$issueTitle}\" correspóndense con diferentes seccións "
"existentes na revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"A abreviatura de sección \"{$sectionAbbrev}\" do número \"{$issueTitle}\" "
"correspóndese cunha sección existente na revista, pero outra abreviatura "
"desta sección non coincide con ningunha abreviatura da sección existente na "
"revista."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Ningún número ou máis dun coincide coa identificación de número "
"proporcionada \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"O número existente con id {$issueId} coincide co identificador de número "
"proporcionado (\"{$issueIdentification}\"). Este número non se modificará, "
"pero engadiranse os artigos."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Falta o elemento identificador de número para o artigo \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"O artigo \"{$articleTitle}\" está incluído nun número pero non ten data de "
"publicación."
@@ -0,0 +1,8 @@
# Weblate Admin <alec@smecher.bc.ca>, 2023.
msgid ""
msgstr ""
"Language: hsb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Weblate\n"
@@ -0,0 +1,107 @@
# Molnár Tamás <molnart@bibl.u-szeged.hu>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-02-13T21:07:39+00:00\n"
"PO-Revision-Date: 2021-09-22 08:45+0000\n"
"Last-Translator: Molnár Tamás <molnart@bibl.u-szeged.hu>\n"
"Language-Team: Hungarian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/hu_HU/>\n"
"Language: hu_HU\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Eredeti XML Plugin"
msgid "plugins.importexport.native.description"
msgstr "Cikkek és folyóiratszámok importálása és exportálása eredeti OJS XML formátumban."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "XML fájl feltöltése importáláshoz"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Válasszon cikkeket exportáláshoz"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Cikkek exportálása"
msgid "plugins.importexport.native.exportIssues"
msgstr "Folyóiratszámok exportálása"
msgid "plugins.importexport.native.results"
msgstr "Eredmények importálása"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Kérjük, töltsön fel egy fájlt az \"Import\" alá, hogy folytathassa."
msgid "plugins.importexport.native.importComplete"
msgstr "Az import sikeresen megtörtént. kövekező elemek kerültek importálásra:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Usage: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] cikkek [articleId1] [articleId2] ...\n"
"\texport [xmlFileName] [journal_path] cikk [articleId]\n"
"\texport [xmlFileName] [journal_path] folyóiratszámok [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] folyóiratszám [issueId]\n"
"\n"
"További adatok szükségesek az adatok importálásához a következőképpen, attól függően\n"
"az XML-dokumentum gyökércsomópontjától.\n"
"\n"
"Ha a gyökércsomópont <cikk> vagy <cikkek>, akkor további paraméterekre van szükség.\n"
"A következő formátumok fogadhatók el:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
""
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Ismeretlen rovat {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "A kiválaszott felhasználó \"{$userName}\", nem létezik."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Ez a rovatcím \"{$section1Title}\" és ez a rovatcím \"{$section2Title}\" ebben a \"{$issueTitle}\" számban különböző létező rovatokhoz tartoznak."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"A rovatcím \"{$sectionTitle}\" ebben a \"{$issueTitle}\" számban megegyezik "
"egy létező folyóiratrovattal, de egy másik cím ebben a rovatban nem egyezik "
"egy másik cimmel a létező rovatban."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "A rovatrövidítés \"{$section1Abbrev}\" és a rovatrövidítés \"{$section2Abbrev}\" ennél a folyóiratszámnál \"{$issueTitle}\" egy másik létező folyóiratrovattal egyezik."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "A rovat rövidítése \"{$sectionAbbrev}\" ebben \"{$issueTitle}\" számban megyegyezik egy létező folyóiratrovattal, egy másik rovatrövidítés nem egyezik meg vele."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Egy vagy több kiadvány nem egyezik meg az adott folyóiratszám azonosítóval \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Létező folyóiratszám ezzel az azonosítóval {$issueId} megfelel az adott folyóiratszám azonosítónak \"{$issueIdentification}\". Ez a folyóiratszám nem módosul, de a cikkek hozzáadásra kerülnek."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "A szám azonosító elem hiányzik ennél a cikknél. \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "A cikk \"{$articleTitle}\" egy számban szerepel, de nincs közzétételi dátuma."
@@ -0,0 +1,131 @@
# Artashes Mirzoyan <amirzoyan@sci.am>, 2022.
# Tigran Zargaryan <tigran@flib.sci.am>, 2022, 2023.
msgid ""
msgstr ""
"PO-Revision-Date: 2023-10-28 15:06+0000\n"
"Last-Translator: Tigran Zargaryan <tigran@flib.sci.am>\n"
"Language-Team: Armenian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/hy/>\n"
"Language: hy\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Բնիկ XML փլագին"
msgid "plugins.importexport.native.description"
msgstr ""
"Ներմուծեք և արտահանեք հոդվածներ և թողարկումներ OJS-ի բնիկ XML ձևաչափով:"
msgid "plugins.importexport.native.import"
msgstr "Ներմուծել"
msgid "plugins.importexport.native.import.instructions"
msgstr "Ներմուծելու համար վերբեռնեք XML նիշքը"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Ընտրեք հոդվածներ արտահանման համար"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Արտահանեք հոդվածներ"
msgid "plugins.importexport.native.exportIssues"
msgstr "Արտահանեք թողարկումներ"
msgid "plugins.importexport.native.results"
msgstr "Ներմուծեք արդյունքները"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Շարունակելու համար վերբեռնեք նիշքը «Ներմուծում» բաժնում:"
msgid "plugins.importexport.native.importComplete"
msgstr "Ներմուծումը հաջողությամբ ավարտվեց: Ներմուծվել են հետևյալ նյութերը:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Օգտագործում: {$scriptName} {$pluginName} [command] ...\n"
"Հրամաններ:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Տվյալների ներմուծման համար պահանջվում են լրացուցիչ պարամետրեր՝\n"
"կախված XML փաստաթղթի արմատային հանգույցից:\n"
"\n"
"Եթե արմատային հանգույցն է <հոդված> կամ <հոդվածներ>, կպահանջվեն լրացուցիչ "
"պարամետրեր։\n"
"Ընդունվում են հետևյալ ձևաչափերը.:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Անհայտ բաժին {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Օգտվող պետք է տրամադրվի՝ օգտագործելով --user_name կամ -u հրամանի պարամետրը:"
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Բաժնի վերնագիրը \"{$section1Title}\" և բաժնի վերնագիրը \"{$section2Title}\" "
"այս «{$issueTitle}» համարում համընկնում էին ամսագրի տարբեր առկա բաժիններին:"
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"\"{$sectionTitle}\" բաժնի անվանումը \"{$issueTitle}\" համարում համընկնում է "
"գոյություն ունեցող ամսագրի բաժնի հետ, սակայն այս բաժնի մեկ այլ վերնագիր չի "
"համընկնում առկա ամսագրի մեկ այլ վերնագրի հետ:"
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"\"{$section1Abbrev}\" բաժնի հապավումը և \"{$section2Abbrev}\" բաժնի "
"հապավումը \"{$issueTitle}\" համարի համընկնում էին ամսագրի տարբեր առկա "
"բաժիններին:"
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Բաժնի \"{$sectionAbbrev}\" հապավումը «\"{$issueTitle}\" համարում համընկնում "
"է գոյություն ունեցող ամսագրի բաժնի հետ, սակայն այս բաժնի մեկ այլ հապավումը "
"չի համընկնում գոյություն ունեցող ամսագրի մեկ այլ հապավման հետ:"
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Մեկ կամ մեկից ավելի համարներ համապատասխանում են տվյալ համարի նույնականացմանը "
"\"{$issueIdentification}\":"
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Առկա թողարկումը ID {$issueId} -ի հետ համապատասխանում է տվյալ թողարկման "
"նույնականացման \"{$issueIdentification}\" -ին: Այս թողարկումը չի փոփոխվի, "
"բայց հոդվածներ կավելացվեն։"
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Թողարկման նույնականացման տարրը բացակայում է \"{$articleTitle}\" հոդվածի "
"համար:"
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"\"{$articleTitle}\" հոդվածը պարունակվում է թողարկման մեջ, բայց չունի "
"հրապարակման ամսաթիվ:"
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Կազմի պատկերը տեղադրվել է առանց անուն նշելու:"
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Նշված է նիշքի անվավեր ընդլայնմամբ շապիկի պատկեր:"
@@ -0,0 +1,117 @@
# Ramli Baharuddin <ramli.baharuddin@relawanjurnal.id>, 2021, 2022.
msgid ""
msgstr ""
"PO-Revision-Date: 2022-07-15 11:33+0000\n"
"Last-Translator: Ramli Baharuddin <ramli.baharuddin@relawanjurnal.id>\n"
"Language-Team: Indonesian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/id_ID/>\n"
"Language: id_ID\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.4.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML Natif"
msgid "plugins.importexport.native.description"
msgstr "Impor dan ekspor artikel dan issue dalam format XML Natif OJS."
msgid "plugins.importexport.native.import"
msgstr "Impor"
msgid "plugins.importexport.native.import.instructions"
msgstr "Unggah file XML untuk diimpor"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Pilih artikel untuk diekspor"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Ekspor artikel"
msgid "plugins.importexport.native.exportIssues"
msgstr "Ekspor Issue"
msgid "plugins.importexport.native.results"
msgstr "Impor Hasil"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Unggahlah file pada \"Impor\" untuk melanjutkan."
msgid "plugins.importexport.native.importComplete"
msgstr "Impor berhasil. Berikut daftar item yang berhasil diimpor:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Usage: {$scriptName} {$pluginName} [command] ...\n"
"Perintah:\n"
"\timpor [xmlFileName] [journal_path] [user_name] ...\n"
"\tekspor [xmlFileName] [journal_path] artikel [articleId1] [articleId2] ...\n"
"\tekspor [xmlFileName] [journal_path] artikel [articleId]\n"
"\tekspor [xmlFileName] [journal_path] issue [issueId1] [issueId2] ...\n"
"\tekspor [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Parameter tambahan diperlukan untuk mengimpor data sebagai berikut, "
"bergantung\n"
"pada root node dokumen XML.\n"
"\n"
"Jika root node <article> atau <articles>, parameter tambahan diperlukan.\n"
"Format berikut dibolehkan:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} impor [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} impor [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Bagian Tak Diketahui {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Pengguna yang dimaksud, \"{$userName}\", tidak ada."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Bagian judul \"{$section1Title}\" dan bagian judul \"{$section2Title}\" "
"dalam issue \"{$issueTitle}\" sam dengan bagian jurnal yang ada dan berbeda."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Judul bagian \"{$sectionTitle}\" dalam issue \"{$issueTitle}\" sesuai dengan "
"bagian jurnal yang ada, tapi judul lain pada bagian ini tidak cocok dengan "
"judul bagian jurnal yang ada."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Singkatan bagian \"{$section1Abbrev}\" dan singkatan bagian "
"\"{$section2Abbrev}\" dari issue \"{$issueTitle}\" sama dengan bagian jurnal "
"lain yang ada."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Singkatan bagian \"{$sectionAbbrev}\" dalam issue \"{$issueTitle}\" sama "
"dengan bagian jurnal yang ada, tapi singkatan lagi pada bagian ini tidak "
"sama dengan singkatan lain dari bagian jurnal yang ada."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Tidak ada atau lebih dari satu issue sama dengan identifikasi issue yang "
"diberikan \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Issue yang ada dengan id {$issueId} sama dengan identifikasi issue yang ada "
"\"{$issueIdentification}\". Issue ini tidak akan diubah, tapi akan "
"ditambahkan artikel."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Elemen identifikasi issue untuk artikel \"{$articleTitle}\" hilang."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Artikel \"{$articleTitle}\" terdapat dalam issue, tapi tidak memiliki "
"tanggal terbit."
@@ -0,0 +1,71 @@
# Kolbrun Reynisdottir <kolla@probus.is>, 2022.
msgid ""
msgstr ""
"Language: is_IS\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Weblate\n"
msgid "plugins.importexport.native.displayName"
msgstr ""
msgid "plugins.importexport.native.description"
msgstr ""
msgid "plugins.importexport.native.import"
msgstr ""
msgid "plugins.importexport.native.import.instructions"
msgstr ""
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr ""
msgid "plugins.importexport.native.exportSubmissions"
msgstr ""
msgid "plugins.importexport.native.exportIssues"
msgstr ""
msgid "plugins.importexport.native.results"
msgstr ""
msgid "plugins.inportexport.native.uploadFile"
msgstr ""
msgid "plugins.importexport.native.importComplete"
msgstr ""
msgid "plugins.importexport.native.cliUsage"
msgstr ""
msgid "plugins.importexport.native.error.unknownSection"
msgstr ""
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
@@ -0,0 +1,104 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2021-04-27 11:26+0000\n"
"Last-Translator: Stefano Bolelli Gallevi <stefano.bolelli@unimi.it>\n"
"Language-Team: Italian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/it_IT/>\n"
"Language: it_IT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin per il formato XML nativo"
msgid "plugins.importexport.native.description"
msgstr "Importa ed esporta articoli e fascicoli nel formato XML nativo di OJS"
msgid "plugins.importexport.native.import"
msgstr "Importa"
msgid "plugins.importexport.native.import.instructions"
msgstr "Carica file XML per importare"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Seleziona articoli da esportare"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Esporta articoli"
msgid "plugins.importexport.native.exportIssues"
msgstr "Esporta fascicoli"
msgid "plugins.importexport.native.results"
msgstr "Risultati dell'importazione"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Per favore carica un file nell'area 'Importa' per continuare."
msgid "plugins.importexport.native.importComplete"
msgstr "L'import è stato completato. Questo è stato importato:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Uso: {$scriptName} {$pluginName} [command] ...\n"
"Comandi:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Parametri addizionali sono richiesti per importare dati, come i seguenti,\n"
"che dipendono dal nodo root del documento XML.\n"
"\n"
"Se il nodo root è <article> o <articles>, sono necessari parametri "
"addizionali.\n"
"I seguenti formati sono accettati:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Sezione non conosciuta {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "L'utente specificato, \"{$userName}\", non esiste."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Il titolo di sezione \"{$section1Title}\" e il titolo di sezione \"{$section2Title}\" nel fascicolo \"{$issueTitle}\" corrispondono a due differenti sezioni esistenti della rivista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Il titolo di sezione \"{$sectionTitle}\" nel fascicolo \"{$issueTitle}\" coincide con una esistente sezione della rivista ma un altro titolo di sezione non corrisponde."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "L'abbreviazione della sezione \"{$section1Abbrev}\" e l'abbreviazione \"{$section2Abbrev}\" del fascicolo \"{$issueTitle}\" coincidono con quelle di due esistenti sezioni della rivista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "L'abbreviazione della sezione \"{$sectionAbbrev}\" nel fascicolo \"{$issueTitle}\" coincide con una esistente sezione della rivista ma un'altra abbbreviazione non corrisponde."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Nessun o più di un fascicolo corrispone/dono all'id di fascicolo \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Un fascicolo esistente con id {$issueId} corrisponde con l'identificatore inserito, \"{$issueIdentification}\". Questo fascicolo non verrà modificato ma gli articoli saranno aggiunti."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "L'elemento identificativo del fascicolo non è presente nell'articolo \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "L'articolo \"{$articleTitle}\" è contenuto dentro un fascicolo, ma non ha data di pubblicazione."
@@ -0,0 +1,121 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2021-04-30 07:17+0000\n"
"Last-Translator: Dimitri Gogelia <dimitri.gogelia@iliauni.edu.ge>\n"
"Language-Team: Georgian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ka_GE/>\n"
"Language: ka_GE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "მოდული „საკუთარი XML“"
msgid "plugins.importexport.native.description"
msgstr ""
"აიმპორტებს და აესპორტებს სტატიებსა და გამოცემებს OJS-ის საკუთარ XML-ფორმატში."
msgid "plugins.importexport.native.import"
msgstr "იმპორტი"
msgid "plugins.importexport.native.import.instructions"
msgstr "იმპორტის XML ფაილის ატვირთვა"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "საექსპორტო სტატიის არჩევა"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "სტატიების ექსპორტი"
msgid "plugins.importexport.native.exportIssues"
msgstr "გამოცემების ექსპორტი"
msgid "plugins.importexport.native.results"
msgstr "შედეგების იმპორტი"
msgid "plugins.inportexport.native.uploadFile"
msgstr "გასაგრძელებლად, გთხოვთ ატვირთოთ ფაილი სექციაში „იმპორტი“."
msgid "plugins.importexport.native.importComplete"
msgstr "იმპორტი წარმატებით დასრულდა. მოხდა შემდეგი ელემენტების იმპორტი:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"გამოძახება: {$scriptName} {$pluginName} [command] ...\n"
"ბრძანებები:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"დამატებითი პარამეტრები საჭიროა მონაცემების იმპორტისათვის, XML-დოკუმენტის\n"
"ძირეული კვანძის მიხედვით.\n"
"\n"
"თუ ძირეული კვანძი არის <article> ან <articles>, საჭირო იქნება დამატებითი "
"პარამეტრები.\n"
"მხარდაჭერილია შემდეგი ფორმატები:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "უცნობი განყოფილება {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "მითითებული მომხმარებელი, „{$userName}“, არ არსებობს."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"განყოფილებების „{$section1Title}“ და „{$section2Title}“ გამოცემაში "
"„{$issueTitle}“ ემთხვევა ჟურნალის სხვადასხვა არსებულ განყოფილებებს."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"განყოფილების „{$sectionTitle}“ გამოცემაში „{$sectionTitle}“ ემთხვევა "
"ჟურნალის არსებულ განყოფილებას, მაგრამ ამ განყოფილების სხვა დასახელება არ "
"ემთხვევა არსებული განყოფილების სხვა დასახელებას."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"განყოფილებების „{$section1Abbrev}“ და „{$section2Abbrev}“ გამოცემაში "
"„{$issueTitle}“ ემთხვევა ჟურნალის სხვადასხვა არსებულ განყოფილებებს."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"განყოფილების „{$sectionAbbrev}“ გამოცემაში „{$issueTitle}“ ემთხვევა ჟურნალის "
"არსებულ განყოფილებას, მაგრამ ამ განყოფილების სხვა აბრევიატურა არ ემთხვევა "
"არსებული განყოფილების სხვა აბრევიატურას."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"არცერთი, ან ერთი გამოცემა ემთხვევა გამოცემის იდენტიფიკატორს "
"„{$issueIdentification}“."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"არსებული გამოცემა იდენტიფიკატორით {$issueId} ემთხვევა "
"„{$issueIdentification}“ გამოცემის იდენტიფიკაციას. ეს გამოცემა არ შეიცვლება, "
"მაგრამ სტატიები დაემატება."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"გამოცემის იდენტიფიკაციის ელემენტი არ არის მოწოდებული სტატიისათვის "
"„{$articleTitle}“."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"სტატია „{$articleTitle}“ არის გამოცემაში, მაგრამ მისთვის არ არის მითითებული "
"გამოქვეყნების თარიღი."
@@ -0,0 +1,125 @@
# Madi <nmdbzk@gmail.com>, 2021.
msgid ""
msgstr ""
"PO-Revision-Date: 2021-07-14 06:03+0000\n"
"Last-Translator: Madi <nmdbzk@gmail.com>\n"
"Language-Team: Kazakh <http://translate.pkp.sfu.ca/projects/ojs/importexport-"
"native/kk_KZ/>\n"
"Language: kk_KZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "\"Ішкі XML\" модулі"
msgid "plugins.importexport.native.description"
msgstr ""
"OJS ережелері бойынша XML форматындағы мақалалар мен басылымдарды "
"импорттайды және экспорттайды."
msgid "plugins.importexport.native.import"
msgstr "Импорттау"
msgid "plugins.importexport.native.import.instructions"
msgstr "Импорттау үшін XML файлын жүктеңіз"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Экспорттау үшін мақалаларды таңдаңыз"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Мақалаларды экспорттау"
msgid "plugins.importexport.native.exportIssues"
msgstr "Журнал басылымдарын экспорттау"
msgid "plugins.importexport.native.results"
msgstr "Нәтижелерді экспорттау"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Жалғастыру үшін файлды импорттау бөліміне жүктеңіз."
msgid "plugins.importexport.native.importComplete"
msgstr "Импорттау сәтті аяқталды. Келесі элементтер импортталды:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Қолдану реті: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Additional parameters are required for importing data as follows, depending\n"
"on the root node of the XML document.\n"
"\n"
"If the root node is <article> or <articles>, additional parameters are "
"required.\n"
"The following formats are accepted:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Белгісіз бөлім {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Көрсетілген қолданушы \"{$userName}\" жүйеде жоқ."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"\"{$section1Title}\" және \"{$section2Title}\" бөлім атаулары "
"\"{$issueTitle}\" журнал басылымындағы бөлімдер атауымен сәйкес келді."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"\"{$issueTitle}\" басылымындағы \"{$sectionTitle}\" бөлімінің атауы "
"қолданыстағы журнал бөліміне сәйкес келді, бірақ осы бөлімнің екінші атауы "
"қолданыстағы журнал бөлімінің екінші атауымен бірдей емес."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"\"{$section1Abbrev}\" бөлімінің аббревиатурасы және \"{$section2Abbrev}\" "
"бөлімінің аббревиатурасы \"{$issueTitle}\" журнал басылымындағы бөлімдердің "
"біріне сәйкес келді."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"\"{$issuetitle}\" басылымындағы \"{$sectionAbbrev} \" бөлімінің "
"аббревиатурасы қолданыстағы журнал бөліміне сәйкес келді, бірақ осы бөлімнің "
"қосалқы аббревиатурасы қолданыстағы журнал бөлімінің қосалқы "
"аббревиатурасымен сәйкес келмеді."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Бірде-бір журнал басылымы \"{$issueIdentification} \" басылымының "
"идентификаторымен сәйкес келмеді."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"{$ssueId} идентификаторы \"{$issueIdentification}\" қолданыстағы журнал "
"басылымының идентификаторымен сәйкес келеді. Бұл журнал басылымы "
"өзгертілмейді, бірақ мақалалар қосылады."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"\"{$articleTitle}\" мақаласы үшін мақала басылымын сәйкестендіру элементі "
"жоқ."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"\"{$articleTitle} \" мақаласы журнал басылымында бар, бірақ жарияланған күні "
"көрсетілмеген."
@@ -0,0 +1,128 @@
# Mahmut VURAL <mahmut.vural@outlook.com>, 2024.
msgid ""
msgstr ""
"PO-Revision-Date: 2024-01-02 18:44+0000\n"
"Last-Translator: Mahmut VURAL <mahmut.vural@outlook.com>\n"
"Language-Team: Kyrgyz <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ky/>\n"
"Language: ky\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.import"
msgstr "Импорттоо"
msgid "plugins.importexport.native.import.instructions"
msgstr "Импорттоо үчүн XML файлын жүктөңүз"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Экспорттоо үчүн макалаларды тандаңыз"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Макалаларды экспорттоо"
msgid "plugins.importexport.native.exportIssues"
msgstr "Экспорт маселелери"
msgid "plugins.importexport.native.results"
msgstr "Натыйжаларды импорттоо"
msgid "plugins.importexport.native.importComplete"
msgstr "Импорттоо ийгиликтүү аяктады. Төмөнкү буюмдар импорттолду:"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Белгисиз бөлүм {$param}"
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Мукаба сүрөтү аты жок салынган."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"\"{$issueTitle}\" чыгарылышындагы \"{$sectionTitle}\" бөлүмдүн аталышы "
"учурдагы журнал бөлүмүнө дал келет, бирок ал бөлүмдүн башка аталышы учурдагы "
"журнал бөлүмүнүн башка аталышына дал келбейт."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"«{$issueTitle}» санындагы «{$section1Abbrev}» бөлүм аббревиатурасы жана "
"«{$section2Abbrev}» бөлүм аббревиатурасы журналдын учурдагы ар кандай "
"бөлүмдөрүнө дал келген."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Белгиленген \"{$issueIdentification}\" көйгөйдү аныктоого эч кандай же "
"бирден ашык маселе дал келген жок."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"{$issueId} идентификаторундагы учурдагы маселе \"{$issueIdentification}\" "
"көрсөтүлгөн маселенин идентификациясына дал келет. Бул маселе өзгөртүлбөйт, "
"бирок макалалар кошулат."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "\"{$articleTitle}\" макаласында маселени аныктоочу элемент жок."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"\"{$articleTitle}\" макаласы санда пайда болот, бирок жарыяланган күнү жок."
msgid "plugins.importexport.native.displayName"
msgstr "Native XML модулу"
msgid "plugins.importexport.native.description"
msgstr ""
"Түпкү OJS XML форматындагы макалаларды жана маселелерди импорттойт жана "
"экспорттойт."
msgid "plugins.inportexport.native.uploadFile"
msgstr "Улантуу үчүн файлды \"Импорт\" бөлүмүнө жүктөңүз."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Көрсөтүлгөн мукаба сүрөтүнүн файл кеңейтүүсү жараксыз."
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Колдонуучу --user_name же -u опциясы аркылуу көрсөтүлүшү керек."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"\"{$issueTitle}\" санындагы \"{$section1Title}\" бөлүмдүн аталышы жана \""
"{$section2Title}\" бөлүмдүн аталышы журналдын учурдагы ар кандай бөлүмдөрүнө "
"дал келген."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"\"{$issueTitle}\" санындагы \"{$sectionAbbrev}\" аббревиатурасы учурдагы "
"журнал бөлүмүнө дал келген, бирок ал бөлүмдүн башка аббревиатурасы учурдагы "
"журнал бөлүмүнүн башка аббревиатурасына дал келген жок."
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Чалуу: {$scriptName} {$pluginName} [буйрук] ...\n"
"Командалар:\n"
"импорттоо [XMLFileName] [логжол] [--колдонуучунун аты] ...\n"
"экспорттоо [XML FileName] [log_path] макалалар [IdArticle1] [IdArticle2] ..."
"\n"
"экспорттоо [XML FileName] [log_path] макала [ArticleId]\n"
"экспорттоо [XMLFileName] [journal_path] маселелери [IssueId1] [IssueId2] ..."
"\n"
"экспорттоо [XML FileName] [log_path] маселе [IssueId]\n"
"\n"
"Маалыматтарды импорттоо үчүн, жараша белгилүү бир кошумча параметрлер талап "
"кылынат\n"
"XML документинин түпкү түйүнүнөн.\n"
"\n"
"Эгерде түпкү түйүн <макала> же <макала> болсо, кошумча параметрлер талап "
"кылынат.\n"
"Төмөнкү форматтарга уруксат берилет:\n"
"\n"
"{$scriptName} {$pluginName} импорттоо [XMLFileName] [логжол] [--username]\n"
"issue_id [IssueId] section_id [SectionId]\n"
"\n"
"{$scriptName} {$pluginName} импорттоо [XMLFileName] [логжол] [--username]\n"
"issue_id [IssueId] бөлүмдүн_аты [SectionName]\n"
"\n"
"{$scriptName} {$pluginName} импорттоо [[XMLFileName] [log_path]\n"
"issue_id [Issue Id] section_abbrev [Бөлүмдүн кыскартылышы]\n"
@@ -0,0 +1,128 @@
# Ieva Tiltina <pastala@gmail.com>, 2024.
msgid ""
msgstr ""
"PO-Revision-Date: 2024-01-30 11:06+0000\n"
"Last-Translator: Ieva Tiltina <pastala@gmail.com>\n"
"Language-Team: Latvian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/lv/>\n"
"Language: lv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n % 10 == 0 || n % 100 >= 11 && n % 100 <= "
"19) ? 0 : ((n % 10 == 1 && n % 100 != 11) ? 1 : 2);\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.import"
msgstr "Importēt"
msgid "plugins.importexport.native.import.instructions"
msgstr "Augšupielādēt XML failu, lai importētu"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Atlasīt eksportējamos rakstus"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Eksportēt rakstus"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksportēt žurnāla numurus"
msgid "plugins.importexport.native.results"
msgstr "Importēt rezultātus"
msgid "plugins.importexport.native.importComplete"
msgstr "Imports ir pabeigts veiksmīgi. Tika importēti šādi elementi:"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Nezināma sadaļa {$param}"
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Ir norādīts vāka attēls ar nederīgu faila paplašinājumu."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Tika ievietots vāka attēls, nenorādot nosaukumu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"\"{$section1Abbrev}\" un \"{$section2Abbrev}\" izdevuma \"{$issueTitle}\" "
"sadaļas saīsinājums \"{$section1Abbrev}\" atbilda dažādām esošajām žurnāla "
"sadaļām."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Dotajam numura identifikatoram \"{$issueIdentification}\" neatbilst neviens "
"vai atbilst vairāk nekā viens numurs."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Rakstam \"{$articleTitle}\" trūkst izdevuma identifikācijas elementa."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Raksts \"{$articleTitle}\" ir iekļauts izdevumā, bet tam nav publicēšanas "
"datuma."
msgid "plugins.importexport.native.displayName"
msgstr "Natīvais XML spraudnis"
msgid "plugins.importexport.native.description"
msgstr "Rakstu un numuru importēšana un eksportēšana OJS natīvajā XML formātā."
msgid "plugins.inportexport.native.uploadFile"
msgstr "Lai turpinātu, lūdzu, augšupielādējiet failu sadaļā \"Importēt\"."
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Izmantošana: {$scriptName} {$pluginName} [command] ...\n"
"Komandas:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Datu importēšanai atkarībā no XML dokumenta saknes mezgla ir nepieciešami \n"
"šādi papildu parametri.\n"
"\n"
"Ja saknes mezgls ir <article> vai <articles>, ir nepieciešami papildu "
"parametri.\n"
"Tiek pieņemti šādi formāti:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Lietotājs jānorāda, izmantojot komandas parametru --user_name vai -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Sadaļas nosaukums \"{$section1Title}\" un sadaļas nosaukums \""
"{$section2Title}\" izdevumā \"{$issueTitle}\" atbilda dažādām esošajām "
"žurnāla sadaļām."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Sadaļas nosaukums \"{$sectionTitle}\" izdevumā \"{$issueTitle}\" atbilst "
"esošai žurnāla sadaļai, bet šīs sadaļas nosaukums nesakrīt ar cita žurnāla "
"sadaļas nosaukumu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Sadaļas saīsinājums \"{$sectionAbbrev}\" izdevumā \"{$issueTitle}\" atbilst "
"esošai žurnāla sadaļai, bet šīs sadaļas saīsinājums neatbilst citam esošas "
"žurnāla sadaļas saīsinājumam."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Esošais numurs ar id {$issueId} atbilst dotajam numura identifikatoram \""
"{$issueIdentification}\". Šis numurs netiks mainīts, bet raksti tiks "
"pievienoti ."
@@ -0,0 +1,130 @@
# Mirko Spiroski <mspiroski@id-press.eu>, 2023.
msgid ""
msgstr ""
"PO-Revision-Date: 2023-11-21 09:58+0000\n"
"Last-Translator: Mirko Spiroski <mspiroski@id-press.eu>\n"
"Language-Team: Macedonian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/mk/>\n"
"Language: mk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n==1 || n%10==1 ? 0 : 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Плагин за нативен XML"
msgid "plugins.importexport.native.description"
msgstr ""
"Импортирајте и експортирајте трудови и изданија во нативниот XML формат на "
"OJS."
msgid "plugins.importexport.native.import"
msgstr "Импортирај"
msgid "plugins.importexport.native.import.instructions"
msgstr "Прикачи XML датотека за импортирање"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Назначи трудови за експортирање"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Експортирај трудови"
msgid "plugins.importexport.native.exportIssues"
msgstr "Експортирај изданија"
msgid "plugins.importexport.native.results"
msgstr "Импортирај Резултати"
msgid "plugins.inportexport.native.uploadFile"
msgstr ""
"Ве молиме да ја прикачите датотеката преку \"Импортиај\" за да продолжите."
msgid "plugins.importexport.native.importComplete"
msgstr "Импортирањето е успешно завршено. Следните предмети беа импортирани:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Начин на користење: {$scriptName} {$pluginName} [command] ...\n"
"Наредби:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Потребни се дополнителни параметри за импортирање на податоците на следниот "
"начин, во зависност\n"
"од коренскиот јазол на XML документот.\n"
"\n"
"Доколку коренскиот јазол е <article> или <articles>, потребни се "
"дополнителни параметри.\n"
"Прифатливи се следните формати:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Непозната секција {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Корисникот мора да се добие со --user_name или -u команден параметар."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Наслов на секција \"{$section1Title}\" и наслов на секција "
"\"{$section2Title}\" во \"{$issueTitle}\" бројот се спаруваат различно во "
"секциите на постоечкото списание."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Насловот на секцијата \"{$sectionTitle}\" во \"{$issueTitle}\" бројот се "
"спаруваат во постоечката секција од списанието, но друг наслов во оваа "
"секција не се спарува со друг наслов во секцијата од постоечкото списание."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Кратенката на секцијата \"{$section1Abbrev}\" и кратенката на секцијата "
"\"{$section2Abbrev}\" од \"{$issueTitle}\" бројот се спаруваат со различни "
"секции од постоечкото списание."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Кратенката на секцијата \"{$sectionAbbrev}\" во \"{$issueTitle}\" бројот се "
"спарува со секцијата во постоечкото списание, но друга кратенка од оваа "
"секција не се спарува со друга кратенка во секција од постоечкото списание."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Ниту едно или повеќе од едно издание се совпаѓа со дадената идентификација "
"на издание \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Постоечко издание со ИД {$issueId} се совпаѓа со дадената идентификација на "
"бројот \"{$issueIdentification}\". Овој број нема да биде променет, но ќе "
"бидат додадени трудови."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Недостасува елементот за идентификација на изданието за трудот "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Трудот \"{$articleTitle}\" е содржан во изданието, но нема датум на објава."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Вклучена е насловна слика без специфицирано име."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Специфицирана е насловна слика со невалидна екстензија."
@@ -0,0 +1,123 @@
# Muhd Muaz <muazhero61@yahoo.com>, 2021.
msgid ""
msgstr ""
"PO-Revision-Date: 2021-10-20 21:22+0000\n"
"Last-Translator: Muhd Muaz <muazhero61@yahoo.com>\n"
"Language-Team: Malay <http://translate.pkp.sfu.ca/projects/ojs/importexport-"
"native/ms/>\n"
"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML Asli"
msgid "plugins.importexport.native.description"
msgstr "Import dan eksport artikel dan terbitan dalam format XML asli OJS."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Muat naik fail XML untuk diimport"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Pilih artikel untuk dieksport"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Eksport Artikel"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksport Isu"
msgid "plugins.importexport.native.results"
msgstr "Import Hasil"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Sila muat naik fail di bawah \"Import\" untuk meneruskan."
msgid "plugins.importexport.native.importComplete"
msgstr "Import berjaya diselesaikan. Item berikut diimport:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Penggunaan: {$scriptName} {$pluginName} [command] ...\n"
"Perintah:\n"
"\timport [xmlFileName] [journal_path] [--user_name] ...\n"
"\teksport [xmlFileName] [journal_path] artikel [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] artikel [articleId]\n"
"\teksport [xmlFileName] [journal_path] terbitan [issueId1] [issueId2] ...\n"
"\teksport [xmlFileName] [journal_path] terbitan [issueId]\n"
"\n"
"Parameter tambahan diperlukan untuk mengimport data seperti berikut, "
"bergantung\n"
"pada root node dokumen XML.\n"
"\n"
"Sekiranya root node adalah <artikel> atau <artikel>, parameter tambahan "
"diperlukan.\n"
"Format berikut diterima:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Bahagian tidak diketahui {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Pengguna mesti disediakan dengan menggunakan parameter perintah --user_name "
"atau -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Tajuk bahagian \"{$section1Title}\" dan tajuk bahagian \"{$section2Title}\" "
"dalam terbitan \"{$issueTitle}\" padan dengan bahagian jurnal yang wujud."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Tajuk bahagian \"{$sectionTitle}\" dalam terbitan \"{$issueTitle}\" padan "
"dengan bahagian jurnal yang ada, tetapi tajuk lain dari bahagian ini tidak "
"padan dengan tajuk lain dari bahagian jurnal yang wujud."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Singkatan bahagian \"{$section1Abbrev}\" dan bahagian singkatan "
"\"{$section2Abbrev}\" dari terbitan \"{$issueTitle}\" padan dengan bahagian "
"jurnal yang wujud."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Singkatan bahagian \"{$sectionAbbrev}\" dalam terbitan \"{$issueTitle}\" "
"padan dengan bahagian jurnal yang wujud, tetapi singkatan lain dari bahagian "
"ini tidak padan dengan singkatan lain dari bahagian jurnal yang wujud."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Tidak ada atau lebih daripada satu terbitan yang sesuai dengan "
"pengenalpastian terbitan yang diberikan \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Terbitan yang wujud dengan id {$issueId} sepadan dengan pengenalan terbitan "
"yang diberikan \"{$issueIdentification}\". Terbitan ini tidak akan diubah, "
"tetapi artikel akan ditambahkan."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Elemen pengenalan terbitan hilang untuk artikel \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Artikel \"{$articleTitle}\" terkandung dalam terbitan, tetapi tidak memiliki "
"tarikh terbitan."
@@ -0,0 +1,124 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-20T15:57:55+00:00\n"
"PO-Revision-Date: 2021-01-15 08:15+0000\n"
"Last-Translator: FRITT, University of Oslo Library <fritt-info@journals.uio."
"no>\n"
"Language-Team: Norwegian Bokmål <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/nb_NO/>\n"
"Language: nb_NO\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Programtillegg for Lokal XML"
msgid "plugins.importexport.native.description"
msgstr "Importer og eksporter artikler og hefter i OJS lokale XML format."
msgid "plugins.importexport.native.import"
msgstr "Importer"
msgid "plugins.importexport.native.import.instructions"
msgstr "Last opp en XML-fil for import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Velg artikler for eksport"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Eksporter artikler"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksporter utgaver"
msgid "plugins.importexport.native.results"
msgstr "Resultater"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Last opp en fil under «Import» for å fortsette."
msgid "plugins.importexport.native.importComplete"
msgstr "Importen var vellykket. Disse elementene ble importert:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Bruk: {$scriptName} {$pluginName} [command] ...\n"
"Kommandoer:\n"
" import [xmlFileName] [journal_path] [user_name] ...\n"
" eksport [xmlFileName] [journal_path] artikler [articleId1] "
"[articleId2] ...\n"
" eksport [xmlFileName] [journal_path] artikler [articleId]\n"
" eksport [xmlFileName] [journal_path] utgaver [issueId1] [issueId2] ...\n"
" eksport [xmlFileName] [journal_path] utgaver [issueId]\n"
"\n"
"Ytterligere parametere kreves for import av data, avhenging av rotnoden i "
"XML-dokumentet.\n"
"Dersom rotnoden er <artikkel> eller <artikler>, må du legge inn flere "
"parametre.\n"
"\n"
"Følgende formater aksepteres:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
" issue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
" issue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
" issue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Ukjent seksjon {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Brukeren du spesifiserte, «{$userName}», finnes ikke."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Seksjonstitene «{$section1Title}» og «{$section2Title}» i utgaven "
"«{$issueTitle}» stemte med ulike eksisterende tidsskriftseksjoner."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Seksjonstittelen «{$sectionTitle}» i utgaven «{$issueTitle}» stemte med en "
"eksisterende tidsskriftssekjson, men en annen tittel i denne seksjonen "
"stemmer ikke overens med en annen tittel i den eksisterende "
"tidsskriftsseksjonen."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Seksjonsforkortelsen «{$section1Abbrev}» og seksjonsforkortelsen "
"«{$section2Abbrev}» i utgaven «{$issueTitle}» stemte overens med ulike "
"eksisterende tidsskriftsseksjoner."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Seksjonsforkortelsen «{$sectionAbbrev}» i utgaven «{$issueTitle}» stemte "
"overens med en eksisterende tidsskriftsseksjon, men en annen forkortelse av "
"denne seksjonen stemmer ikke overens med en annen forkortelse av den "
"eksisterende tidsskriftsseksjonen."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Ingen eller flere enn en utgave stemmer overens med den oppgitte "
"utgaveidentifikatoren {$issueIdentification}»."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Eksisterende utgave med identiteten {$issueId} stemmer overens med "
"utgaveidentifikatoren «{$issueIdentification}». Denne utgaven vil ikke bli "
"modifisert, men artiklene vil bli lagt til."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "«{$articleTitle}» mangler utgaveidentifikatorelementet."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Artikkelen «{$articleTitle}» er i en utgave, men har ingen publiseringsdato."
@@ -0,0 +1,128 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:43+00:00\n"
"PO-Revision-Date: 2019-11-19T11:05:43+00:00\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML plugin"
msgid "plugins.importexport.native.description"
msgstr "Importeer en exporteer artikels en nummers in het XML formaat van OJS."
msgid "plugins.importexport.native.import"
msgstr "Importeer"
msgid "plugins.importexport.native.import.instructions"
msgstr "Upload een XML bestand om te importeren"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Selecteer artikels om te exporteren"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exporteer artikels"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exporteer nummers"
msgid "plugins.importexport.native.results"
msgstr "Resultaten"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Laad eerst een bestand op onder \"Importeer\"."
msgid "plugins.importexport.native.importComplete"
msgstr "De import is goed uitgevoerd. Volgende items werden geïmporteerd:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Gebruik: {$scriptName} {$pluginName} [commando] ...\n"
"Commando's:\n"
"\timport [xmlBestandsNaam] [tijdschriftPad] [gebruikersnaam] ...\n"
"\texport [xmlBestandsNaam] [tijdschriftPad] articles [artikelId1] "
"[artikelId2] ...\n"
"\texport [xmlBestandsNaam] [tijdschriftPad] article [artikelId]\n"
"\texport [xmlBestandsNaam] [tijdschriftPad] issues [nummerId1] "
"[nummerId2] ...\n"
"\texport [xmlBestandsNaam] [tijdschriftPad] issue [nummerId]\n"
"\n"
"Om data te importeren zijn bijkomende parameters nodig, afhankelijk van "
"het \n"
"hoofdelement van het XML document.\n"
"\n"
"Als het hoofdelement <article> of <articles> is, zijn bijkomende parameters "
"vereist. \n"
"Volgende formaten worden geaccepteerd:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlBestandsNaam] [tijdschriftPad] "
"[gebruikersnaam]\n"
"\tissue_id [nummerId] section_id [sectieId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlBestandsNaam] [tijdschriftPad] "
"[gebruikersnaam]\n"
"\tissue_id [nummerId] section_name [naam]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlBestandsNaam] [tijdschriftPad]\n"
"\tissue_id [nummerId] section_abbrev [afkorting]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Onbekende sectie {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "De opgegeven gebruiker \"{$userName} bestaat niet."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"De sectietitels van \"{$section1Title}\" en \"{$section2Title}\" in het "
"nummer \"{$issueTitle}\" komen overeen met de verschillende secties in het "
"tijdschrift."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"De sectietitel \"{$sectionTitle}\" in het nummer \"{$issueTitle}\" komt "
"overeen met een bestaande tijdschriftsectie, maar een andere titel van deze "
"sectie komt niet overeen met een andere titel van de huidige "
"tijdschriftsectie."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"De afkortingen van secties \"{$section1Abbrev}\" en \"{$section2Abbrev}\" "
"in het nummer \"{$issueTitle}\" komen overeen met de verschillende secties "
"in het tijdschrift."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"De afkorting van sectie \"{$sectionAbbrev}\" in het nummer \"{$issueTitle}\" "
"komt overeen met een bestaande tijdschriftsectie, maar een andere afkorting "
"van deze sectie komt niet overeen met een andere afkorting van de huidige "
"tijdschriftsectie."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Er zijn geen nummers die overeenkomen met de opgegeven nummer-identificatie "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Het bestaande nummer met id {$issueId} komt overeen met de opgegeven issue "
"id \"{$issueIdentification}\". Het nummer zal niet worden gewijzigd, maar "
"artkels zullen worden toegevoegd."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Het element met de identicatie van het nummer ontbreekt voor het artikel "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Het artikel \"{$articleTitle}\" is opgenomen in een nummer, maar heeft geen "
"publicatiedatum."
@@ -0,0 +1,109 @@
# rl <biuro@fimagis.pl>, 2022.
# Dariusz Lis <Dariusz@Lis.PL>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-01-30T17:56:56+00:00\n"
"PO-Revision-Date: 2023-04-26 14:01+0000\n"
"Last-Translator: Dariusz Lis <Dariusz@Lis.PL>\n"
"Language-Team: Polish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/pl/>\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Wtyczka natywnego XML"
msgid "plugins.importexport.native.description"
msgstr "Importuje i eksportuje artykuły i numery z OJS w natywnym formacie XML."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Prześlij plik XML do importu"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Wybierz artykuły do eksportu"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Eksportuj artykuły"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksportuj numery"
msgid "plugins.importexport.native.results"
msgstr "Wyniki importu"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Prześlij plik pod \"Import\", aby kontynuować."
msgid "plugins.importexport.native.importComplete"
msgstr "Import ukończony z sukcesem. Poniższe pozycje zostały zaimportowane:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Użycie: {$scriptName} {$pluginName} [polecenie] ...\n"
"Polecenia:\n"
"\timport [nazwaPlikuXML] [ścieżkaCzasopisma] [nazwaUżytkownika] ...\n"
"\texport [nazwaPlikuXML] [ścieżkaCzasopisma] articles [IdArtykułu1] "
"[IdArtykułu2] ...\n"
"\texport [nazwaPlikuXML] [ścieżkaCzasopisma] article [IdArtykułu]\n"
"\texport [nazwaPlikuXML] [ścieżkaCzasopisma] issues [IdArtykułu1] "
"[IdArtykułu2] ...\n"
"\texport [nazwaPlikuXML] [ścieżkaCzasopisma] issue [IdArtykułu]\n"
"\n"
"W zależności od głównego węzła dokumentu XML wymagane są\n"
"dodatkowe parametry do importowania danych.\n"
"\n"
"Gdy głównym węzłem jest <article> lub <articles> dodatkowe parametry są "
"wymagane.\n"
"Akceptowane są następujące formaty:\n"
"\n"
"{$scriptName} {$pluginName} import [nazwaPlikuXML] [ścieżkaCzasopisma] "
"[--user_name]\n"
"issue_id [identyfikatorWydania] section_id [identyfikatorSekcji]\n"
"\n"
"{$scriptName} {$pluginName} import [nazwaPlikuXML] [ścieżkaCzasopisma] "
"[--user_name]\n"
"issue_id [identyfikatorWydania] section_name [nazwaSekcji]\n"
"\n"
"{$scriptName} {$pluginName} import [nazwaPlikuXML] [ścieżkaCzasopisma]\n"
"issue_id [identyfikatorWydania] section_abbrev [skrótSekcji]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Nieznany dział {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Określony użytkownik nie istnieje: \"{$userName}\"."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Tytuł działu \"{$section1Title}\" oraz tytuł działu \"{$section2Title}\" w numerze \"{$issueTitle}\" połączyły się z różnymi istniejącymi działami w czasopiśmie."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Tytuł działu \"{$sectionTitle}\" w numerze \"{$issueTitle}\" połączył się z istniejącym działem czasopisma, ale inny tytuł działu nie łączy się z innym tytułem istniejącego działu w czasopiśmie."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Skrót działu \"{$section1Abbrev}\" i skrót działu \"{$section2Abbrev}\" w numerze \"{$issueTitle}\" połączyły się z różnymi istniejącymi działami w czasopiśmie."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Skrót działu \"{$sectionAbbrev}\" w numerze \"{$issueTitle}\" połączył się z istniejącym działem czasopisma, ale inny skrót tego działu nie połączył się z innym skrótem istniejącego działu czasopisma."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Żaden lub więcej niż jeden numer jest połączony z podanych identyfikatorem numeru: \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Istniejący numer {$issueId} jest połączony z podanym identyfikatorem: \"{$issueIdentification}\". Ten numer nie może być modyfikowany, ale można do niego dodawać artykuły."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Brakuje elementu identyfikatora w artykule \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Artykuł \"{$articleTitle}\" jest umieszczony w numerze, ale nie posiada daty publikacji."
@@ -0,0 +1,140 @@
# Felipe Geremia Nievinski <fgnievinski@gmail.com>, 2022.
# Diego José Macêdo <diegojmacedo@gmail.com>, 2023, 2024.
# Alex Mendonça <alex.mendonca@scielo.org>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-09-30T11:58:34-07:00\n"
"PO-Revision-Date: 2024-01-31 21:18+0000\n"
"Last-Translator: Diego José Macêdo <diegojmacedo@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/pt_BR/>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML Nativo"
msgid "plugins.importexport.native.description"
msgstr "Importação e exportação de livros em formato XML nativo do OJS."
msgid "plugins.importexport.native.import"
msgstr "Importar"
msgid "plugins.importexport.native.import.instructions"
msgstr "Carregar arquivo XML para importar"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Selecione arquivos para exportar"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportar Artigos"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportar Edições"
msgid "plugins.importexport.native.results"
msgstr "Resultados da importação"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Faça upload de um arquivo e clique em \"Importar\" para continuar."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"A importação foi concluída com êxito. Os seguintes itens foram importados:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Uso: {$scriptName} {$pluginName} [comando] ...\n"
"Comandos:\n"
"import [xmlFileName] [journal_path] [--user_name] ...\n"
"export [xmlFileName] [journal_path] articles [articleId1] [articleId2] ...\n"
"export [xmlFileName] [journal_path] article [articleId]\n"
"export [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"export [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Parâmetros adicionais são necessários para importar dados da seguinte "
"maneira, dependendo\n"
"do nó raiz do documento XML.\n"
"\n"
"Se o nó raiz for <article> ou <articles>, parâmetros adicionais serão "
"necessários.\n"
"Os seguintes formatos são aceitos:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"issue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"issue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"issue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Seção desconhecida {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Um usuário deve ser fornecido usando o parâmetro de comando --user_name ou "
"-u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"O título da seção \"{$section1Title}\" e o título da seção \"{$section2Title}"
"\" da edição \"{$issueTitle}\" são compatíveis com edições diferentes "
"existentes na revista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"O título da seção \"{$sectionTitle}\" da edição \"{$issueTitle}\" é "
"compatível com uma seção existente, mas o outro título desta seção não é "
"compatível com o outro título da seção existente na revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"A abreviatura da seção \"{$section1Abbrev}\" e a abreviatura da seção "
"\"{$section2Abbrev}\" da edição \"{$issueTitle}\" são compatíveis com seções "
"distintas existentes na revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"A abreviatura da seção \"{$sectionAbbrev}\" da edição \"{$issueTitle}\" é "
"compatível com uma seção existente, mas outra abreviatura desta edição não é "
"compatível com outra abreviatura de seção existente na revista."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Nenhum ou mais de um fascículo corresponde à identificação do fascículo "
"fornecido \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"O fascículo existente com o ID {$issueId} corresponde à identificação do "
"fascículo fornecida \"{$issueIdentification}\". Este fascículo não será "
"modificado, mas os artigos serão adicionados."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"O elemento de identificação do fascículo está ausente no artigo "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"O artigo \"{$articleTitle}\"está contido em um fascículo, mas não possui "
"data de publicação."
#~ msgid "plugins.importexport.native.export"
#~ msgstr "Exportar"
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Uma imagem de capa foi incorporada sem especificar um nome."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "O destaque solicitado não foi encontrado."
@@ -0,0 +1,136 @@
# José Carvalho <jcarvalho@keep.pt>, 2022, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2023-10-30 13:43+0000\n"
"Last-Translator: José Carvalho <jcarvalho@keep.pt>\n"
"Language-Team: Portuguese (Portugal) <http://translate.pkp.sfu.ca/projects/"
"ojs/importexport-native/pt_PT/>\n"
"Language: pt_PT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML nativo"
msgid "plugins.importexport.native.description"
msgstr "Importa e exporta artigos e númetos no formato XML nativo do OJS."
msgid "plugins.importexport.native.import"
msgstr "Importar"
msgid "plugins.importexport.native.import.instructions"
msgstr "Transferir ficheiro XML para importação"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Selecione artigos para exportar"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportar Artigos"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportar Números"
msgid "plugins.importexport.native.results"
msgstr "Importar Resultados"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Faça o upload de um ficheiro em \"Importar\" para continuar."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"A importação foi concluída com sucesso. Os seguintes artigos foram "
"importados:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Modo de utilização: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Parâmetros adicionais são necessários para importar dados da forma abaixo, "
"dependendo \n"
"do nó raiz do documento XML.\n"
"\n"
"Se o nó raiz for <article> ou <articles>, parâmetros adicionais são "
"necessários. \n"
"Os seguintes formatos são aceites:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Secção desconhecida {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Um utilizador deve ser fornecido usando o parâmetro de comando --user_name "
"ou -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"O título da secção \"{$section1Title}\" e o título da secção "
"\"{$section2Title}\" no número \"{$issueTitle}\" corresponderam com as "
"diferentes secções existentes da revista."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"O título da secção \"{$sectionTitle}\" no número \"{$issueTitle}\" "
"corresponde a uma secção existente da revista, mas outro título desta secção "
"não coincide com outro título da seção existente da revista."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"A abreviatura da secção \"{$section1Abbrev}\" e a abreviatura da secção "
"\"{$section2Abbrev}\" do número \"{$issueTitle}\" correspondem às diferentes "
"secções existentes da revista ."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"A abreviatura da secção \"{$sectionAbbrev}\" no número \"{$issueTitle}\" "
"corresponde a uma secção existente da revista, mas uma outra abreviatura "
"desta secção não corresponde a outra abreviatura da secção existente da "
"revista."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Nenhum ou mais do que um número corresponde à identificação do problema "
"identificado\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"O número existente com id {$issueId} corresponde à identificação de revista "
"indicada \"{$issueIdentification}\". Este número não será modificado, mas os "
"artigos serão adicionados."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"O elemento de identificação do número está em falta para o artigo "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"O artigo \"{$articleTitle}\" faz parte de um número, mas não tem data de "
"publicação."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Foi indicada uma imagem de capa com uma extensão inválida."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Foi introduzida uma imagem sem especificar um nome."
@@ -0,0 +1,129 @@
# Cristina Bleortu <cristina.bleortu@uzh.ch>, 2022.
msgid ""
msgstr ""
"PO-Revision-Date: 2022-03-10 13:56+0000\n"
"Last-Translator: Cristina Bleortu <cristina.bleortu@uzh.ch>\n"
"Language-Team: Romanian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ro_RO/>\n"
"Language: ro_RO\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
"20)) ? 1 : 2;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML Nativ"
msgid "plugins.importexport.native.description"
msgstr ""
"Importă și exportă articole și numerele în formatul original XML al OJS."
msgid "plugins.importexport.native.import"
msgstr "Importați"
msgid "plugins.importexport.native.import.instructions"
msgstr "Încărcați fișierul XML pentru import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Selectați articolele pentru export"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Export articole"
msgid "plugins.importexport.native.exportIssues"
msgstr "Export Numere"
msgid "plugins.importexport.native.results"
msgstr "Importarea rezultatelor"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Vă rugăm să încărcați un fișier la „Importați” pentru a continua."
msgid "plugins.importexport.native.importComplete"
msgstr ""
"Importul s-a finalizat cu succes. Au fost importate următoarele elemente:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Folosiți: {$scriptName} {$pluginName} [command] ...\n"
"Comenzi:\n"
"\timportați [xmlFileName] [journal_path] [user_name] ...\n"
"\texportați [xmlFileName] [journal_path] articolele [articleId1] "
"[articleId2] ...\n"
"\texportați [xmlFileName] [journal_path] articolul [articleId]\n"
"\texportați [xmlFileName] [journal_path] numerele [issueId1] [issueId2] ...\n"
"\texportați [xmlFileName] [journal_path] numărul [issueId]\n"
"\n"
"\n"
"Parametrii suplimentari sunt necesari pentru importul de date după cum "
"urmează, \n"
"în funcție de nodul rădăcină al documentului XML.\n"
"\n"
"Dacă nodul rădăcină este <article> or <articles>, sunt necesari parametri "
"suplimentari.\n"
"Următoarele formate sunt acceptate:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Secțiune necunoscută {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Utilizatorul specificat, \"{$userName}\", nu există."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Titlul secțiunii \"{$section1Title}\" și titlul secțiunii "
"\"{$section2Title}\" în numărul \"{$issueTitle}\" se potrivesc unor secțiuni "
"de jurnal existente."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Titlul secțiunii „{$sectionTitle}” din numărul „{$issueTitle}” se potrivește "
"cu o secțiune de jurnal existentă, dar un alt titlu al acestei secțiuni nu "
"se potrivește cu un alt titlu al secțiunii jurnalului existent."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Abrevierea secțiunii \"{$ section1Abbrev}\" și abrevierea secțiunii \"{$ "
"section2Abbrev}\" din numărul \"{$ issueTitle}\" se potrivesc diferitelor "
"secțiuni de jurnal existente."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Abreviația secțiunii „{$sectionAbbrev}” din numărul „{$issueTitle}” se "
"potrivește cu o secțiune de jurnal existentă, dar o altă abreviere a acestei "
"secțiuni nu se potrivește cu o altă prescurtare a secțiunii jurnalului "
"existent."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Niciun sau mai multe numere nu se potrivesc cu identificarea numărului "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Numărul existent cu id {$issueId} se potrivește cu numărul dat "
"„{$issueIdentification}”. Această număr nu fa fi modificat, dar vor fi "
"adăugate articole."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Elementele de identificare ale numărului lipsesc pentru acest articol "
"\"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Articolul \"{$articleTitle}\"face parte dintr-un număr, dar nu are dată de "
"publicare."
@@ -0,0 +1,112 @@
# Pavel Pisklakov <ppv1979@mail.ru>, 2022, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2023-11-20 03:17+0000\n"
"Last-Translator: Pavel Pisklakov <ppv1979@mail.ru>\n"
"Language-Team: Russian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/ru/>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Модуль «Собственный XML»"
msgid "plugins.importexport.native.description"
msgstr "Импортирует и экспортирует статьи и выпуски в собственном XML-формате OJS."
msgid "plugins.importexport.native.import"
msgstr "Импортировать"
msgid "plugins.importexport.native.import.instructions"
msgstr "Загрузите файл XML для импорта"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Выберите статьи для экспорта"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Экспортировать статьи"
msgid "plugins.importexport.native.exportIssues"
msgstr "Экспортировать выпуски"
msgid "plugins.importexport.native.results"
msgstr "Импортировать результаты"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Пожалуйста загрузите файл в раздел «Импортировать», чтобы продолжить."
msgid "plugins.importexport.native.importComplete"
msgstr "Импорт успешно завершен. Следующие элементы были импортированы:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Вызов: {$scriptName} {$pluginName} [команда] ...\n"
"Команды:\n"
"\timport [ИмяФайлаXML] [путь_журнала] [--имя_пользователя] ...\n"
"\texport [ИмяФайлаXML] [путь_журнала] articles [IdСтатьи1] [IdСтатьи2] ...\n"
"\texport [ИмяФайлаXML] [путь_журнала] article [IdСтатьи]\n"
"\texport [ИмяФайлаXML] [путь_журнала] issues [IdВыпуска1] [IdВыпуска2] ...\n"
"\texport [ИмяФайлаXML] [путь_журнала] issue [IdВыпуска]\n"
"\n"
"Для импорта данных требуются те или иные дополнительные параметры в "
"зависимости \n"
"от корневого узла XML-документа.\n"
"\n"
"Если корневой узел <article> или <articles>, требуются дополнительные "
"параметры.\n"
"Разрешены следующие форматы:\n"
"\n"
"{$scriptName} {$pluginName} import [ИмяФайлаXML] [путь_журнала] "
"[--имя_пользователя]\n"
"\tissue_id [IdВыпуска] section_id [IdРаздела]\n"
"\n"
"{$scriptName} {$pluginName} import [ИмяФайлаXML] [путь_журнала] "
"[--имя_пользователя]\n"
"\tissue_id [IdВыпуска] section_name [НазваниеРаздела]\n"
"\n"
"{$scriptName} {$pluginName} import [[ИмяФайлаXML] [путь_журнала]\n"
"\tissue_id [IdВыпуска] section_abbrev [АббревиатураРаздела]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Неизвестный раздел {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Пользователь должен быть указан с помощью параметра --user_name или -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Название раздела «{$section1Title}» и название раздела «{$section2Title}» в выпуске «{$issueTitle}» совпали с различными существующими разделами журнала."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Название раздела «{$sectionTitle}» в выпуске «{$issueTitle}» совпало с существующим разделом журнала, но другое название этого раздела не совпадает с другим названием существующего раздела журнала."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Аббревиатура раздела «{$section1Abbrev}» и аббревиатура раздела «{$section2Abbrev}» в выпуске «{$issueTitle}» совпали с различными существующими разделами журнала."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Аббревиатура раздела «{$sectionAbbrev}» в выпуске «{$issueTitle}» совпала с существующим разделом журнала, но другая аббревиатура этого раздела не совпала с другой аббревиатурой существующего раздела журнала."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Ни одного выпуска или более одного выпуска совпало с указанной идентификацией выпуска «{$issueIdentification}»."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Существующий выпуск с идентификатором {$issueId} совпадает с указаной идентификацией выпуска «{$issueIdentification}». Этот выпуск не будет изменен, но статьи будут добавлены."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Элемент идентификации выпуска отсутствует для статьи «{$articleTitle}»."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Статья «{$articleTitle}» есть в выпуске, но для нее не указана дата публикации."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Изображение обложки было встроено без указания имени."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Указано изображение обложки с недопустимым расширением файла."
@@ -0,0 +1,117 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2020-11-27 11:12+0000\n"
"Last-Translator: mhh <mhh@centrum.sk>\n"
"Language-Team: Slovak <http://translate.pkp.sfu.ca/projects/ojs/importexport-"
"native/sk_SK/>\n"
"Language: sk_SK\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin natívneho XML"
msgid "plugins.importexport.native.description"
msgstr "Importuje a exportuje v OJS články a čísla v OJS natívnom XML formáte."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Nahrať XML súbor pre import"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Zvoľte článok pre export"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportovať články"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportovať čísla"
msgid "plugins.importexport.native.results"
msgstr "Výsledky"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Nahrajte, prosím, súbor pod \"Import\", aby ste mohli pokračovať."
msgid "plugins.importexport.native.importComplete"
msgstr "Import bol úspešne dokončený. Boli importované nasledovné položky:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Použitie: {$scriptName} {$pluginName} [command] ...\n"
"Príkazy:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Pre import dát sú potrebné ďalšie parametre v závislosti na\n"
"koreňovom uzle dokumentu XML.\n"
"\n"
"Ak je koreňový uzol<article> alebo <articles>, sú požadované ďalšie "
"parametre.\n"
"Prijímaný je nasledujúci formát:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Neznáma sekcia {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Zadaný používateľ \"{$userName}\" neexistuje."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Názov sekcie \"{$section1Title}\" a názov sekcie \"{$section2Title}\" v "
"čísle {$issueTitle} zodpovedá rôznym existujúcim sekciám časopisu."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Názov sekcie \"{$sectionTitle}\" v čísle {$issueTitle} zodpovedal "
"existujúcej sekcii časopisu, ale iný názov tejto sekcie nezodpovedá inému "
"názvu existujúcej sekcie časopisu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Skratka sekcia \"{$section1Abbrev}\" a skratka sekcie {$section2Abbrev}\" "
"čísla \"{$ issueTitle}\" zodpovedajú rôznym existujúcim sekciám časopisu."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Skratka sekcia \"{$sectionAbbrev}\" v čísle \"{$issueTitle}\" odpovedá "
"existujúcej sekcii časopisu, ale ďalšia skratka tejto sekcie nezodpovedá "
"inej skratke existujúcej sekcie časopisu."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Žiadne alebo naopak viac ako jedno číslo zodpovedá identifikácii tohto čísla "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Existujúce číslo s id {$issueId} zodpovedá zadanej identifikácii čísla "
"\"{$issueIdentification}\". Toto číslo sa nezmení, ale články budú pridané."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Identifikačný element čísla chýba v článku \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Článok \"{$articleTitle}\" je obsiahnutý v tomto čísle, ale nemá zadaný "
"dátum zverejnenia."
@@ -0,0 +1,111 @@
# Primož Svetek <primoz.svetek@gmail.com>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2023-10-28 15:06+0000\n"
"Last-Translator: Primož Svetek <primoz.svetek@gmail.com>\n"
"Language-Team: Slovenian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/sl/>\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Domači XML vtičnik"
msgid "plugins.importexport.native.description"
msgstr "Uvozi ali izvozi prispevke in številke v domači OJS XML obliki."
msgid "plugins.importexport.native.import"
msgstr "Uvoz"
msgid "plugins.importexport.native.import.instructions"
msgstr "Naloži XML datoteko za uvoz"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Izberi prispevke za izvoz"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Izvozi prispevke"
msgid "plugins.importexport.native.exportIssues"
msgstr "Izvozi številke"
msgid "plugins.importexport.native.results"
msgstr "Rezultati uvoza"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Prosimo, naložite datoteko pri \"Uvoz\" pred nadaljevanjem."
msgid "plugins.importexport.native.importComplete"
msgstr "Uvoz se je uspešno zaključil. Uvoženo je bilo:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Uporaba: {$scriptName} {$pluginName} [command] ...\n"
"Commands:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Additional parameters are required for importing data as follows, depending\n"
"on the root node of the XML document.\n"
"\n"
"If the root node is <article> or <articles>, additional parameters are "
"required.\n"
"The following formats are accepted:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Neznana rubrika {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Uporabnik mora biti določen z uporabo --user_name or -u ukaznega parametra."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Naslov rubrike \"{$section1Title}\" in naslov rubrike \"{$section2Title}\" v številki \"{$issueTitle}\" se ujemata z različnima obstoječima rubrikama revije."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Naslov rubrike \"{$sectionTitle}\" v številki \"{$issueTitle}\" se ujema z obstoječo rubriko, ampak se drug naslov te rubrike ne ujema z drugim naslovom obstoječe rubrike revije."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Okrajšava rubrike \"{$section1Abbrev}\" in okrajšava rubrike \"{$section2Abbrev}\" v številki \"{$issueTitle}\" se ujemata z različnima obstoječima rubrikama revije."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Okrajšava rubrike \"{$sectionAbbrev}\" v številki \"{$issueTitle}\" se ujema z obstoječo rubriko, ampak se druga okrajšava te rubrike ne ujema z drugo okrajšavo obstoječe rubrike revije."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Nobena ali več kot ena številka se ujemata podani identifikaciji \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Obstoječa številka z ID-jem {$issueId} se ujema s podano identifikacijo številke \"{$issueIdentification}\". Ta številka ne bo spremenjena, ampak bodo le dodani prispevki."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Elemnt za identifikacijo številke manjka za prispevek \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Prispevek \"{$articleTitle}\" je vsebovan v številki, ampak nima datuma izdaje."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Slika naslovnice je bila podana brez navedbe imena."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Podana datoteka z naslovnico ima napačno končnico."
@@ -0,0 +1,108 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2019-11-19T11:05:44+00:00\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML dodatak"
msgid "plugins.importexport.native.description"
msgstr ""
"Uvozi i izvozi članke i brojeve časopisa u primarnom OJS XML formatu."
msgid "plugins.importexport.native.import"
msgstr "Uvoz"
msgid "plugins.importexport.native.import.instructions"
msgstr "Dostavite XML fajl za uvoz"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr ""
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Izvoz članaka"
msgid "plugins.importexport.native.exportIssues"
msgstr "Izvoz brojeva časopisa"
msgid "plugins.importexport.native.results"
msgstr "Rezultati"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Dostavite fajl pod \"Uvoz\" kako biste nastavili."
msgid "plugins.importexport.native.importComplete"
msgstr "Uvoz podataka je uspešno završen. Uvezeni su sledeći podaci:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Korišćenje: {$scriptName} {$pluginName} [command] ...\n"
"Komande:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Additional parameters are required for importing data as follows, depending\n"
"on the root node of the XML document.\n"
"\n"
"If the root node is <article> or <articles>, additional parameters are "
"required.\n"
"The following formats are accepted:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]"
msgid "plugins.importexport.native.error.unknownSection"
msgstr ""
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Navedeni korisnik, \"{$userName}\", ne postoji."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
#~ msgid "plugins.importexport.native.cliError"
#~ msgstr "GREŠKA:"
#~ msgid "plugins.importexport.native.error.unknownJournal"
#~ msgstr "Navedena putanja časopisa, \"{$journalPath}\", ne postoji."
@@ -0,0 +1,121 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2019-11-19T11:05:44+00:00\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin för OJS-XML"
msgid "plugins.importexport.native.description"
msgstr "Importerar och exporterar artiklar och nummer i OJS:s XML-format."
msgid "plugins.importexport.native.import"
msgstr "Importera"
msgid "plugins.importexport.native.import.instructions"
msgstr "Ladda upp XML-fil som ska importeras"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Välj artiklar att exportera"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Exportera artiklar"
msgid "plugins.importexport.native.exportIssues"
msgstr "Exportera nummer"
msgid "plugins.importexport.native.results"
msgstr "Resultat"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Ladda upp en fil under \"Importera\" för att kunna fortsätta."
msgid "plugins.importexport.native.importComplete"
msgstr "Importen lyckades. Följande objekt har importerats:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Usage: {$scriptName} {$pluginName} [command] ...\n"
"Kommandon:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] "
"[articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Ytterligare parametrar krävs för att importera data enligt följande, "
"beroende \n"
"på rotelementet i XML-dokumentet.\n"
"\n"
"Om rotelementet är <article> eller <articles> krävs ytterligare parametrar.\n"
"Följande format accepteras:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Okänd sektion: {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Användaren \"{$userName}\" existerar inte."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Sektionstiteln \"{$section1Title}\" och sektionstiteln \"{$section2Title}\" "
"i numret \"{$issueTitle}\" matchade flera existerande tidskriftssektioner."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Sektionstiteln \"{$sectionTitle}\" i numret \"{$issueTitle}\" matchade en "
"existerande tidskriftssektion, men en annan titel i den här sektionen "
"matchar inte någon annan titel i den existerande tidskriftssektionen."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Sektionsförkortningen \"{$section1Abbrev}\" och sektionsförkortningen "
"\"{$section2Abbrev}\" i numret \"{$issueTitle}\" matchade flera existerande "
"tidskriftssektioner."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Sektionsförkortningen \"{$sectionAbbrev}\" i numret \"{$issueTitle}\" "
"matchade en existerande tidskriftssektion, men en annnan förkortning för den "
"här sektionen matchar inte någon annan förkortning för den existerande "
"tidskriftssektionen."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Inget eller fler än ett nummer matchar nummeridentifikatorn "
"\"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Det existerande numret med id {$issueId} matchar nummeridentifikatorn "
"\"{$issueIdentification}\". Numret kommer inte att ändras, men artiklarna "
"kommer att läggas till."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Numrets identifikationselement saknas för artikeln \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Artikeln \"{$articleTitle}\" finns i ett nummer, men har inget "
"publiceringsdatum."
@@ -0,0 +1,110 @@
# Mahmut VURAL <mahmut.vural@outlook.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2024-01-02 18:44+0000\n"
"Last-Translator: Mahmut VURAL <mahmut.vural@outlook.com>\n"
"Language-Team: Turkish <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/tr/>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML Eklentisi"
msgid "plugins.importexport.native.description"
msgstr "Makaleleri ve sayıları OJS'nin doğal XML formatına içe ve dışa aktarın."
msgid "plugins.importexport.native.import"
msgstr "İçe Aktar"
msgid "plugins.importexport.native.import.instructions"
msgstr "İçe aktarılacak XML dosyası yükle"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Dışa aktarılacak makaleleri seçin"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Makaleleri Dışa Aktar"
msgid "plugins.importexport.native.exportIssues"
msgstr "Sayıları Dışa Aktar"
msgid "plugins.importexport.native.results"
msgstr "İçeri Aktar Sonuç"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Devam etmek için lütfen \"İçe Aktar\"ın altında bir dosya yükleyin."
msgid "plugins.importexport.native.importComplete"
msgstr "İçe aktarma başarıyla tamamlandı. Aşağıdaki öğeler içeriye aktarıldı:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Kullanım: {$scriptName} {$pluginName} [command] ...\n"
"Komutlar:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ...\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"XML belgesinin köküne bağlı olarak aşağıdaki gibi verileri almak\n"
"için ek parametreler gereklidir.\n"
"\n"
"Kök düğüm <article> veya <articles> ise, ek parametreler gereklidir.\n"
"\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
""
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Bilinmeyen bölüm {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Belirtilen kullanıcı \"{$userName}\" mevcut değil."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "\"{$section1Title}\" bölüm başlığı ve \"{$issueTitle}\" başlıklı sayı \"{$section2Title}\" bölüm başlığı, mevcut farklı dergi bölümleriyle eşleşti."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "\"{$issueTitle}\" sayısındaki \"{$sectionTitle}\" bölüm başlığı, mevcut bir dergi bölümü ile eşleşti, ancak bu bölümün başka bir başlığı, mevcut dergi bölümünün başka bir başlığıyla eşleşmiyor."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "\"{$section1Abbrev}\" bölümünün kısa adı ve \"{$issueTitle}\" sayısının \"{$section2Abbrev}\" bölümünün kısa adı, farklı mevcut dergi bölümleriyle eşleşti."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "\"{$issueTitle}\" sayısındaki \"{$sectionAbbrev}\" bölümünün kısaltması, mevcut bir dergi bölümü ile eşleşti, ancak bu bölümün başka bir kısaltması, mevcut dergi bölümünün başka bir kısaltmasıyla uyuşmuyor."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Sayılardan hiçbiri veya birden fazla sayı, belirtilen sayı tanımlaması \"{$issueIdentification}\" ile eşleşmiyor."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "{$issueId} ID'si ile mevcut sayı, \"{$issueIdentification}\" ID'si ile verilen sayı bilgisiyle eşleşiyor. Bu sayı değiştirilmeyecek, ancak makaleler eklenecektir."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "\"{$articleTitle}\" makalesi için sayı tanımlama öğesi eksik."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "\"{$articleTitle}\" makalesi bir sayı içende yer alıyor, ancak yayın bir yayın tarihi yok."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Geçersiz dosya uzantısına sahip bir kapak resmi belirtildi."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Ad belirtilmeden bir kapak resmi yerleştirildi."
@@ -0,0 +1,116 @@
# IgorVeha <igor.veha@gmail.com>, 2022.
# Petro Bilous <petrobilous@ukr.net>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-19T11:05:44+00:00\n"
"PO-Revision-Date: 2023-11-08 15:07+0000\n"
"Last-Translator: Petro Bilous <petrobilous@ukr.net>\n"
"Language-Team: Ukrainian <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/uk/>\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.18.2\n"
msgid "plugins.importexport.native.displayName"
msgstr "Плагін власного XML"
msgid "plugins.importexport.native.description"
msgstr "Імпортувати й експортувати статті та випуски у власний XML-формат OJS."
msgid "plugins.importexport.native.import"
msgstr "Імпорт"
msgid "plugins.importexport.native.import.instructions"
msgstr "Вивантажити файл з XML для імпорту"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Виберіть статті для експорту"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Експортувати статті"
msgid "plugins.importexport.native.exportIssues"
msgstr "Експортувати випуски"
msgid "plugins.importexport.native.results"
msgstr "Імпортувати результати"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Будь ласка, вивантажте файл через \"Імпорт\", щоб продовжити."
msgid "plugins.importexport.native.importComplete"
msgstr "Імпортування успішно завершено. Нижченаведені елементи були імпортовані:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Використання: {$scriptName} {$pluginName} [command] ...\n"
"Команди:\n"
"\timport [xmlFileName] [journal_path] [user_name] ...\n"
"\texport [xmlFileName] [journal_path] articles [articleId1] [articleId2] ..."
"\n"
"\texport [xmlFileName] [journal_path] article [articleId]\n"
"\texport [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\texport [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Потрібні деякі додаткові параметри для імпортування даних, як указано нижче,"
"\n"
"залежно від кореневого вузла XML-документа.\n"
"\n"
"Якщо кореневий вузол <article> або <articles>, потрібні додаткові параметри."
"\n"
"Прийнятні такі формати:\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path] [--user_name]"
"\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} import [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Невідомий розділ {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Користувач повинен бути вказаний за допомогою параметра команди --user_name "
"або -u."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr "Назва розділу \"{$section1Title}\" та назва розділу \"{$section2Title}\" у випуску \"{$issueTitle}\" співпадають з різними існуючими розідлами журналу."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr "Назва розділу \"{$sectionTitle}\" у випуску \"{$issueTitle}\" співпадає з існуючим розділом журналу, але інша назва цього розділу не збігається з іншою назвою існуючого розділу журналу."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr "Абревіатура розділу \"{$section1Abbrev}\" та абревіатура розділу \"{$section2Abbrev}\" у випуску \"{$issueTitle}\" співпадає з різними існуючими розділами журналу."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr "Абревіатура розділу \"{$sectionAbbrev}\" у випуску \"{$issueTitle}\" співпадає з існуючим розділом журналу, але інша абревіатура цього розділу не співпадає з іншою абревіатурою існуючого розділу журналу."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "Жоден випуск або більше одного випуску співпадає з вказаною ідентифікацією випуску \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr "Існуючий випуск з ідентифікатором {$issueId} співпадає з вказаною ідентифікацією випуску \"{$issueIdentification}\". Цей випуск не буде змінено, але статті будуть додані."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "Елемент ідентифікації випуску відсутній для статті \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "Стаття \"{$articleTitle}\" є у випуску, але для неї не вказана дата публікації."
msgid "plugins.importexport.common.error.invalidFileExtension"
msgstr "Вказано зображення обкладинки з недійсним розширенням файлу."
msgid "plugins.importexport.common.error.coverImageNameUnspecified"
msgstr "Зображення обкладинки було вбудовано без вказівки імені."
@@ -0,0 +1,69 @@
msgid ""
msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Weblate\n"
msgid "plugins.importexport.native.displayName"
msgstr ""
msgid "plugins.importexport.native.description"
msgstr ""
msgid "plugins.importexport.native.import"
msgstr ""
msgid "plugins.importexport.native.import.instructions"
msgstr ""
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr ""
msgid "plugins.importexport.native.exportSubmissions"
msgstr ""
msgid "plugins.importexport.native.exportIssues"
msgstr ""
msgid "plugins.importexport.native.results"
msgstr ""
msgid "plugins.inportexport.native.uploadFile"
msgstr ""
msgid "plugins.importexport.native.importComplete"
msgstr ""
msgid "plugins.importexport.native.cliUsage"
msgstr ""
msgid "plugins.importexport.native.error.unknownSection"
msgstr ""
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
@@ -0,0 +1,124 @@
# Ruslan Shodmonov <belovedspy1209@gmail.com>, 2021.
msgid ""
msgstr ""
"PO-Revision-Date: 2021-09-10 08:46+0000\n"
"Last-Translator: Ruslan Shodmonov <belovedspy1209@gmail.com>\n"
"Language-Team: Uzbek <http://translate.pkp.sfu.ca/projects/ojs/importexport-"
"native/uz_UZ@latin/>\n"
"Language: uz_UZ@latin\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Native XML plagini"
msgid "plugins.importexport.native.description"
msgstr ""
"Maqola va sonlarni OJS ning ona tilidagi XML formatida import va eksport "
"qilish."
msgid "plugins.importexport.native.import"
msgstr "Import"
msgid "plugins.importexport.native.import.instructions"
msgstr "Import qilish uchun XML faylini yuklang"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Eksport qilinadigan maqolalarni tanlang"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Maqolalarni eksport qilish"
msgid "plugins.importexport.native.exportIssues"
msgstr "Eksport muammolari"
msgid "plugins.importexport.native.results"
msgstr "Natijalarni import qilish"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Davom etish uchun \"Import\" ostidagi faylni yuklang."
msgid "plugins.importexport.native.importComplete"
msgstr "Import muvaffaqiyatli yakunlandi. Quyidagi mahsulotlar import qilindi:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"Foydalanish: {$ scriptName} {$ pluginName} [buyruq] ...\n"
"Buyruqlar:\n"
"import [xmlFileName] [journal_path] [--user_name] ...\n"
"[xmlFileName] [journal_path] maqolalarni [articleId1] [articleId2] eksport "
"qilish ...\n"
"[xmlFileName] [journal_path] maqolasini [articleId] eksport qilish\n"
"[xmlFileName] [journal_path] sonlarini [issueId1] [issueId2] eksport "
"qilish ...\n"
"[xmlFileName] [journal_path] sonini [issueId] eksport qilish\n"
"\n"
"Ma'lumotlarni import qilish uchun quyidagilarga qarab qo'shimcha parametrlar "
"talab qilinadi\n"
"XML hujjatining ildiz tugunida.\n"
"\n"
"Agar ildiz tuguni <maqola> yoki <maqolalar> bo'lsa, qo'shimcha parametrlar "
"talab qilinadi.\n"
"Quyidagi formatlar qabul qilinadi:\n"
"\n"
"{$ scriptName} {$ pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"muammo_id [muammoId] bo'lim_id [bo'limId]\n"
"\n"
"{$ scriptName} {$ pluginName} import [xmlFileName] [journal_path] [--"
"user_name]\n"
"muammo_id [muammoId] bo'lim_ nomi [ism]\n"
"\n"
"{$ scriptName} {$ pluginName} import [xmlFileName] [journal_path]\n"
"muammo_id [muammoId] bo'lim_abbrev [qisqartma]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Noma'lum bo'lim {$ param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr ""
"Foydalanuvchi --user_name yoki -u buyrug'i yordamida ta'minlanishi kerak."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"\"{$ IssueTitle}\" sonidagi \"{$ section1Title}\" bo'limi va \"{$ "
"section2Title}\" bo'limi jurnalning boshqa bo'limlariga mos keldi."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"\"{$ IssueTitle}\" sonidagi \"{$ sectionTitle}\" bo'limi mavjud jurnal "
"bo'limiga to'g'ri keldi, lekin bu bo'limning boshqa nomi mavjud jurnal "
"bo'limining boshqa sarlavhasi bilan mos kelmadi."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"\"{$ IssueTitle}\" nashrining \"{$ section1Abbrev}\" bo'limi qisqartmasi va "
"\"{$ section2Abbrev}\" bo'limining qisqartmasi jurnalning boshqa "
"bo'limlariga to'g'ri keldi."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"\"{$ IssueTitle}\" sonidagi \"{$ sectionAbbrev}\" bo'limi qisqartmasi mavjud "
"jurnal bo'limiga to'g'ri keldi, lekin bu bo'limning boshqa qisqartmasi "
"mavjud jurnal bo'limining boshqa qisqartmasi bilan mos kelmaydi."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"\"{$ IssueIdentification}\" berilgan identifikatorga hech yoki bir nechta "
"muammo mos kelmaydi."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Id $ {$ issueId} bilan mavjud muammo \"{$ issueIdentification}\" berilgan "
"identifikatoriga mos keladi. Bu masala o'zgartirilmaydi, lekin maqolalar "
"qo'shiladi."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "\"{$ ArticleTitle}\" maqolasida muammoni aniqlash elementi yo'q."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"\"{$ ArticleTitle}\" maqolasi son ichida, lekin e'lon qilingan sanasi yo'q."
@@ -0,0 +1,121 @@
# Bùi Văn Khôi <buivankhoi@gmail.com>, 2022.
msgid ""
msgstr ""
"PO-Revision-Date: 2022-03-16 18:38+0000\n"
"Last-Translator: Bùi Văn Khôi <buivankhoi@gmail.com>\n"
"Language-Team: Vietnamese <http://translate.pkp.sfu.ca/projects/ojs/"
"importexport-native/vi_VN/>\n"
"Language: vi_VN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 3.9.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "Plugin XML gốc"
msgid "plugins.importexport.native.description"
msgstr ""
"Nhập và xuất các bài báo và các số xuất bản theo định dạng XML gốc của OJS."
msgid "plugins.importexport.native.import"
msgstr "Nhập"
msgid "plugins.importexport.native.import.instructions"
msgstr "Tải lên tệp XML để nhập"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "Chọn các bài báo để xuất"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "Xuất các bài báo"
msgid "plugins.importexport.native.exportIssues"
msgstr "Xuất các số"
msgid "plugins.importexport.native.results"
msgstr "Kết quả import"
msgid "plugins.inportexport.native.uploadFile"
msgstr "Vui lòng tải lên một tập tin trong \"Nhập\" để tiếp tục."
msgid "plugins.importexport.native.importComplete"
msgstr "Việc nhập thành công. Các hạng mục sau đây đã được nhập:"
#, fuzzy
msgid "plugins.importexport.native.cliUsage"
msgstr ""
"\bSử dụng: {$scriptName} {$pluginName} [command] ...\n"
"Các lệnh:\n"
"\tnhập [xmlFileName] [journal_path] [user_name] ...\n"
"\txuất [xmlFileName] [journal_path] articles [articleId1] [articleId2] ...\n"
"\txuất [xmlFileName] [journal_path] article [articleId]\n"
"\txuất [xmlFileName] [journal_path] issues [issueId1] [issueId2] ...\n"
"\txuất [xmlFileName] [journal_path] issue [issueId]\n"
"\n"
"Các tham số bổ sung được yêu cầu để nhập dữ liệu như sau, tùy thuộc\n"
"vào nút gốc của tài liệu XML.\n"
"\n"
"Nếu nút gốc là <article> hoặc <articles>, tham số bổ sung được yêu cầu.\n"
"Các định dạng sau được chấp nhận:\n"
"\n"
"{$scriptName} {$pluginName} nhập [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_id [sectionId]\n"
"\n"
"{$scriptName} {$pluginName} nhập [xmlFileName] [journal_path] [user_name]\n"
"\tissue_id [issueId] section_name [name]\n"
"\n"
"{$scriptName} {$pluginName} nhập [xmlFileName] [journal_path]\n"
"\tissue_id [issueId] section_abbrev [abbrev]\n"
msgid "plugins.importexport.native.error.unknownSection"
msgstr "Chuyên mục không xác định {$param}"
#, fuzzy
msgid "plugins.importexport.native.error.unknownUser"
msgstr "Người dùng được chỉ định, \"{$userName}\", không tồn tại."
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"Tiêu đề của chuyên mục \"{$section1Title}\" và tiêu đề của chuyên mục "
"\"{$section2Title}\" trong số \"{$issueTitle}\" phù hợp với sự khác nhau "
"của các chuyên mục hiện có của tạp chí."
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"Tiêu đề của chuyên mục \"{$sectionTitle}\" trong số \"{$issueTitle}\" phù "
"hợp với các chuyên mục hiện có, nhưng một tiêu đề khác của chuyên mục này "
"không khớp với tiêu đề khác của các chuyên mục hiện có của tạp chí."
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"Viết tắt của chuyên mục \"{$section1Abbrev}\" và viết tắt của chuyên mục "
"\"{$section2Abbrev}\" của số \"{$issueTitle}\" phù hợp trong sự khác nhau "
"với các chuyên mục hiện có của tạp chí."
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"Viết tắt của chuyên mục \"{$sectionAbbrev}\" trong số \"{$issueTitle}\"phù "
"hợp với các chuyên mục hiện có, nhưng một viết tắt khác của chuyên mục này "
"không khớp với viết tắt của các chuyên mục tạp chí hiện có."
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr ""
"Không có hoặc nhiều hơn một số xuất bản khớp với nhận dạng số xuất bản đã "
"cho \"{$issueIdentification}\"."
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"Số xuất bản hiện tại với id {$issueId} phù hợp với nhận dạng số xuất bản đã "
"cho \"{$issueIdentification}\". Số xuất bản này sẽ không được sửa đổi, "
"nhưng các bài báo có thể được thêm vào."
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr ""
"Phần tử nhận dạng số xuất bản bị thiếu cho bài báo \"{$articleTitle}\"."
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr ""
"Bài báo \"{$articleTitle}\" được chứa trong một số xuất bản, nhưng không có "
"ngày xuất bản."
@@ -0,0 +1,86 @@
# Katie Cheng <ckykatie@hkbu.edu.hk>, 2022.
msgid ""
msgstr ""
"PO-Revision-Date: 2022-09-29 03:01+0000\n"
"Last-Translator: Katie Cheng <ckykatie@hkbu.edu.hk>\n"
"Language-Team: Chinese (Traditional) <http://translate.pkp.sfu.ca/projects/"
"ojs/importexport-native/zh_Hant/>\n"
"Language: zh_Hant\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.13.1\n"
msgid "plugins.importexport.native.displayName"
msgstr "原始XML插件"
msgid "plugins.importexport.native.description"
msgstr "從OJS原始XML格式導入及導出文章和期號。"
msgid "plugins.importexport.native.import"
msgstr "導入"
msgid "plugins.importexport.native.import.instructions"
msgstr "上載XML檔案來導入"
msgid "plugins.importexport.native.exportSubmissionsSelect"
msgstr "選取文章導出"
msgid "plugins.importexport.native.exportSubmissions"
msgstr "導出文章"
msgid "plugins.importexport.native.exportIssues"
msgstr "導出期號"
msgid "plugins.importexport.native.results"
msgstr "導入結果"
msgid "plugins.inportexport.native.uploadFile"
msgstr "請在「導入」以下上載一個檔案再繼續。"
msgid "plugins.importexport.native.importComplete"
msgstr "導入完成及成功。以下項目已導入:"
msgid "plugins.importexport.native.cliUsage"
msgstr ""
msgid "plugins.importexport.native.error.unknownSection"
msgstr "未知分類 {$param}"
msgid "plugins.importexport.native.error.unknownUser"
msgstr "必須透過--user_name或-u command參數提供予用戶。"
msgid "plugins.importexport.native.import.error.sectionTitleMismatch"
msgstr ""
"在\"{$issueTitle}\" 一期此分類標題 \"{$section1Title}\" 及分類標題 "
"\"{$section2Title}\" 跟現有期刊不同分類相符。"
msgid "plugins.importexport.native.import.error.sectionTitleMatch"
msgstr ""
"在\"{$issueTitle}\" 一期此分類標題 \"{$section1Title}\" 跟現有期刊分類相符,"
"但此分類另一標題跟另一現有期刊分類並不相符。"
msgid "plugins.importexport.native.import.error.sectionAbbrevMismatch"
msgstr ""
"在\"{$issueTitle}\"一期的分類簡稱\"{$section1Abbrev}\"與分類簡稱"
"\"{$section1Abbrev}\"跟現有期刊不同分類簡稱相符。"
msgid "plugins.importexport.native.import.error.sectionAbbrevMatch"
msgstr ""
"在\"{$issueTitle}\"一期的分類簡稱\"{$section1Abbrev}\" 跟現有期刊分類簡稱相"
"符,但此分類另一簡稱跟另一現有期刊分類簡稱並不相符。"
msgid "plugins.importexport.native.import.error.issueIdentificationMatch"
msgstr "沒有或多於一期跟所提供的一期認證\"{$issueIdentification}\"相符。"
msgid "plugins.importexport.native.import.error.issueIdentificationDuplicate"
msgstr ""
"現有一期的id {$issueId}與所提供的一期認證\"{$issueIdentification}\"相符。此期"
"不會被修改,但仍可添加文章。"
msgid "plugins.importexport.native.import.error.issueIdentificationMissing"
msgstr "文章\"{$articleTitle}\"欠缺期號認證部分。"
msgid "plugins.importexport.native.import.error.publishedDateMissing"
msgstr "文章\"{$articleTitle}\"已編配到其中一期,但未有出版日期。"
+207
View File
@@ -0,0 +1,207 @@
<?xml version="1.0"?>
<!--
* plugins/importexport/native/native.xsd
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Schema describing native XML import/export elements specific to OJS
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://pkp.sfu.ca" xmlns:pkp="http://pkp.sfu.ca" elementFormDefault="qualified">
<!--
- Base the native import/export schema on the PKP submission model.
-->
<include schemaLocation="../../../lib/pkp/plugins/importexport/native/pkp-native.xsd" />
<!-- Allow the use of "article" in place of "submission" -->
<element name="article" substitutionGroup="pkp:submission">
<complexType>
<complexContent>
<extension base="pkp:submission">
<attribute name="stage" use="required">
<simpleType>
<restriction base="string">
<enumeration value="submission" />
<enumeration value="externalReview" />
<enumeration value="editorial" />
<enumeration value="production" />
</restriction>
</simpleType>
</attribute>
</extension>
</complexContent>
</complexType>
</element>
<element name="articles" substitutionGroup="pkp:submissions" />
<!-- Permit "citation" as a root element to keep the filters happy -->
<element name="citation" type="string" />
<element name="publication" substitutionGroup="pkp:pkppublication">
<complexType>
<complexContent>
<extension base="pkp:pkppublication">
<sequence>
<element ref="pkp:issue_identification" minOccurs="0" maxOccurs="1" />
<element maxOccurs="1" minOccurs="0" name="pages" type="string" />
<element ref="pkp:covers" minOccurs="0" maxOccurs="1" />
<element maxOccurs="1" minOccurs="0" name="issueId" type="int" />
</sequence>
<attribute name="section_ref" type="string" use="required" />
<attribute name="seq" type="int" />
<attribute name="access_status" type="int" />
</extension>
</complexContent>
</complexType>
</element>
<!-- Configure the use of the "article_galley" representation -->
<element name="article_galley" substitutionGroup="pkp:representation">
<complexType>
<complexContent>
<extension base="pkp:representation">
<attribute name="approved" type="boolean"/>
<attribute name="galley_type" type="string"/>
</extension>
</complexContent>
</complexType>
</element>
<!--
- Composite / root elements
-->
<!-- Permit "issues" as a root element -->
<element name="issues">
<complexType>
<sequence>
<element ref="pkp:issue" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<complexType name="issue">
<sequence>
<element ref="pkp:id" minOccurs="0" maxOccurs="unbounded" />
<element name="description" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
<element ref="pkp:issue_identification" minOccurs="1" maxOccurs="1" />
<!-- Metadata -->
<element name="date_published" type="date" minOccurs="0" maxOccurs="1" />
<element name="date_notified" type="date" minOccurs="0" maxOccurs="1" />
<element name="last_modified" type="date" minOccurs="0" maxOccurs="1" />
<element name="open_access_date" type="date" minOccurs="0" maxOccurs="1" />
<!-- sub elements -->
<element ref="pkp:sections" minOccurs="0" maxOccurs="1" />
<element ref="pkp:covers" minOccurs="0" maxOccurs="1" />
<element ref="pkp:issue_galleys" minOccurs="0" maxOccurs="1" />
<element ref="pkp:articles" minOccurs="1" maxOccurs="1" />
</sequence>
<attribute name="journal_id" type="int" use="optional" />
<attribute name="published" type="int" use="optional" />
<attribute name="current" type="int" use="optional" />
<attribute name="access_status" type="int" use="optional" />
<attribute name="url_path" type="string" use="optional" />
</complexType>
<element name="issue_identification">
<complexType>
<sequence>
<element name="volume" type="int" minOccurs="0" maxOccurs="1" />
<element name="number" type="string" minOccurs="0" maxOccurs="1" />
<element name="year" type="int" minOccurs="0" maxOccurs="1" />
<element name="title" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<complexType name="issue_galley">
<sequence>
<element name="label" type="string" minOccurs="1" maxOccurs="1" />
<element ref="pkp:id" minOccurs="0" maxOccurs="unbounded" />
<element ref="pkp:issue_file" minOccurs="1" maxOccurs="1" />
</sequence>
<attribute name="locale" type="string" />
</complexType>
<complexType name="issue_file">
<sequence>
<element name="file_name" type="string" minOccurs="1" maxOccurs="1" />
<element name="file_type" type="string" minOccurs="1" maxOccurs="1" />
<element name="file_size" type="int" minOccurs="1" maxOccurs="1" />
<element name="content_type" type="int" minOccurs="1" maxOccurs="1" />
<element name="original_file_name" type="string" minOccurs="1" maxOccurs="1" />
<element name="date_uploaded" type="date" minOccurs="1" maxOccurs="1" />
<element name="date_modified" type="date" minOccurs="1" maxOccurs="1" />
<element name="embed" type="pkp:embed" />
</sequence>
</complexType>
<element name="covers">
<complexType>
<sequence>
<element ref="pkp:cover" minOccurs="1" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<element name="cover">
<complexType>
<sequence>
<element name="cover_image" type="string" minOccurs="1" maxOccurs="1" />
<element name="cover_image_alt_text" type="string" minOccurs="1" maxOccurs="1" />
<element name="embed" type="pkp:embed" />
</sequence>
<attribute name="locale" type="string" />
</complexType>
</element>
<element name="issue_galleys">
<complexType>
<sequence>
<element ref="pkp:issue_galley" minOccurs="0" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<element name="sections">
<complexType>
<sequence>
<element ref="pkp:section" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<complexType name="section">
<sequence>
<element ref="pkp:id" minOccurs="0" maxOccurs="unbounded" />
<element name="abbrev" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
<element name="policy" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
<element name="title" type="pkp:localizedNode" minOccurs="0" maxOccurs="unbounded" />
</sequence>
<attribute name="ref" type="string" />
<attribute name="review_form_id" type="int" use="optional" />
<attribute name="seq" type="string" />
<attribute name="editor_restricted" type="int" />
<attribute name="meta_indexed" type="int" />
<attribute name="meta_reviewed" type="int" />
<attribute name="abstracts_not_required" type="int" />
<attribute name="hide_title" type="int" />
<attribute name="hide_author" type="int" />
<attribute name="abstract_word_count" type="int" />
</complexType>
<!-- Permit "issue" as a root element -->
<element name="issue" type="pkp:issue" />
<!-- Permit "issue_galley" as a root element -->
<element name="issue_galley" type="pkp:issue_galley" />
<!-- Permit "issue_file" as a root element -->
<element name="issue_file" type="pkp:issue_file" />
<!-- Permit "section" as a root element -->
<element name="section" type="pkp:section" />
</schema>
@@ -0,0 +1,136 @@
{**
* plugins/importexport/native/templates/index.tpl
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* List of operations this plugin can perform
*}
{extends file="layouts/backend.tpl"}
{block name="page"}
<h1 class="app__pageHeading">
{$pageTitle|escape}
</h1>
<script type="text/javascript">
// Attach the JS file tab handler.
$(function() {ldelim}
$('#importExportTabs').pkpHandler('$.pkp.controllers.TabHandler');
$('#importExportTabs').tabs('option', 'cache', true);
{rdelim});
</script>
<div id="importExportTabs">
<ul>
<li><a href="#import-tab">{translate key="plugins.importexport.native.import"}</a></li>
<li><a href="#exportSubmissions-tab">{translate key="plugins.importexport.native.exportSubmissions"}</a></li>
<li><a href="#exportIssues-tab">{translate key="plugins.importexport.native.exportIssues"}</a></li>
</ul>
<div id="import-tab">
<script type="text/javascript">
$(function() {ldelim}
// Attach the form handler.
$('#importXmlForm').pkpHandler('$.pkp.controllers.form.FileUploadFormHandler',
{ldelim}
$uploader: $('#plupload'),
uploaderOptions: {ldelim}
uploadUrl: {plugin_url|json_encode path="uploadImportXML" escape=false},
baseUrl: {$baseUrl|json_encode}
{rdelim}
{rdelim}
);
{rdelim});
</script>
<form id="importXmlForm" class="pkp_form" action="{plugin_url path="importBounce"}" method="post">
{csrf}
{fbvFormArea id="importForm"}
{* Container for uploaded file *}
<input type="hidden" name="temporaryFileId" id="temporaryFileId" value="" />
{fbvFormArea id="file"}
{fbvFormSection title="plugins.importexport.native.import.instructions"}
{include file="controllers/fileUploadContainer.tpl" id="plupload"}
{/fbvFormSection}
{/fbvFormArea}
{fbvFormButtons submitText="plugins.importexport.native.import" hideCancel="true"}
{/fbvFormArea}
<p><span class="formRequired">{translate key="common.requiredField"}</span></p>
</form>
</div>
<div id="exportSubmissions-tab">
<script type="text/javascript">
$(function() {ldelim}
// Attach the form handler.
$('#exportXmlForm').pkpHandler('$.pkp.controllers.form.AjaxFormHandler');
{rdelim});
</script>
<form id="exportXmlForm" class="pkp_form" action="{plugin_url path="exportSubmissionsBounce"}" method="post">
{csrf}
{fbvFormArea id="submissionsXmlForm"}
<submissions-list-panel
v-bind="components.submissions"
@set="set"
>
<template v-slot:item="{ldelim}item{rdelim}">
<div class="listPanel__itemSummary">
<label>
<input
type="checkbox"
name="selectedSubmissions[]"
:value="item.id"
v-model="selectedSubmissions"
/>
<span
class="listPanel__itemSubTitle"
v-strip-unsafe-html="localize(
item.publications.find(p => p.id == item.currentPublicationId).fullTitle,
item.publications.find(p => p.id == item.currentPublicationId).locale
)"
>
</span>
</label>
<pkp-button element="a" :href="item.urlWorkflow" style="margin-left: auto;">
{{ __('common.view') }}
</pkp-button>
</div>
</template>
</submissions-list-panel>
{fbvFormSection}
<pkp-button :disabled="!components.submissions.itemsMax" @click="toggleSelectAll">
<template v-if="components.submissions.itemsMax && selectedSubmissions.length >= components.submissions.itemsMax">
{translate key="common.selectNone"}
</template>
<template v-else>
{translate key="common.selectAll"}
</template>
</pkp-button>
<pkp-button @click="submit('#exportXmlForm')" type="submit">
{translate key="plugins.importexport.native.exportSubmissions"}
</pkp-button>
{/fbvFormSection}
{/fbvFormArea}
</form>
</div>
<div id="exportIssues-tab">
<script type="text/javascript">
$(function() {ldelim}
// Attach the form handler.
$('#exportIssuesXmlForm').pkpHandler('$.pkp.controllers.form.AjaxFormHandler');
{rdelim});
</script>
<form id="exportIssuesXmlForm" class="pkp_form" action="{plugin_url path="exportIssuesBounce"}" method="post">
{csrf}
{fbvFormArea id="issuesXmlForm"}
{capture assign="issuesListGridUrl"}{url router=\PKP\core\PKPApplication::ROUTE_COMPONENT component="grid.issues.ExportableIssuesListGridHandler" op="fetchGrid" escape=false}{/capture}
{load_url_in_div id="issuesListGridContainer" url=$issuesListGridUrl}
{fbvFormButtons submitText="plugins.importexport.native.exportIssues" hideCancel="true"}
{/fbvFormArea}
</form>
</div>
</div>
{/block}
@@ -0,0 +1,96 @@
{**
* plugins/importexport/native/templates/results.tpl
*
* Copyright (c) 2014-2021 Simon Fraser University
* Copyright (c) 2003-2021 John Willinsky
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
*
* Result of operations this plugin performed
*}
{if $submissionsWarnings || $issuesWarnings || $sectionWarnings}
<h2>{translate key="plugins.importexport.common.warningsEncountered"}</h2>
{foreach from=$issuesWarnings item=issuesWarningMessages name=issuesWarnings}
{if $issuesWarningMessages|@count > 0}
<p>{$smarty.foreach.issuesWarnings.iteration}. {translate key="issue.issue"}</p>
<ul>
{foreach from=$issuesWarningMessages item=issuesWarningMessage}
<li>{$issuesWarningMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{foreach from=$sectionsWarnings item=sectionsWarningMessages name=sectionsWarnings}
{if $sectionsWarningMessages|@count > 0}
<p>{$smarty.foreach.sectionsWarnings.iteration}. {translate key="section.section"}</p>
<ul>
{foreach from=$sectionsWarningMessages item=sectionsWarningMessage}
<li>{$sectionsWarningMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{foreach from=$submissionsWarnings item=submissionsWarningMessages name=submissionsWarnings}
{if $submissionsWarningMessages|@count > 0}
<p>{$smarty.foreach.submissionsWarnings.iteration}. {translate key="submission.submission"}</p>
<ul>
{foreach from=$submissionsWarningMessages item=submissionsWarningMessage}
<li>{$submissionsWarningMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{/if}
{if $validationErrors}
<h2>{translate key="plugins.importexport.common.validationErrors"}</h2>
<ul>
{foreach from=$validationErrors item=validationError}
<li>{$validationError->message|escape}</li>
{/foreach}
</ul>
{elseif $submissionsErrors || $issuesErrors || $sectionErrors}
<h2>{translate key="plugins.importexport.common.errorsOccured"}</h2>
{foreach from=$issuesErrors item=issuesErrorMessages name=issuesErrors}
{if $issuesErrorMessages|@count > 0}
<p>{$smarty.foreach.issuesErrors.iteration}. {translate key="issue.issue"}</p>
<ul>
{foreach from=$issuesErrorMessages item=issuesErrorMessage}
<li>{$issuesErrorMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{foreach from=$sectionsErrors item=sectionsErrorMessages name=sectionsErrors}
{if $sectionsErrorMessages|@count > 0}
<p>{$smarty.foreach.sectionsErrors.iteration}. {translate key="section.section"}</p>
<ul>
{foreach from=$sectionsErrorMessages item=sectionsErrorMessage}
<li>{$sectionsErrorMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{foreach from=$submissionsErrors item=submissionsErrorMessages name=submissionsErrors}
{if $submissionsErrorMessages|@count > 0}
<p>{$smarty.foreach.submissionsErrors.iteration}. {translate key="submission.submission"}</p>
<ul>
{foreach from=$submissionsErrorMessages item=submissionsErrorMessage}
<li>{$submissionsErrorMessage|escape}</li>
{/foreach}
</ul>
{/if}
{/foreach}
{else}
{translate key="plugins.importexport.native.importComplete"}
<ul>
{foreach from=$content item=contentItem}
<li>
{if $contentItem instanceof \APP\submission\Submission}
{$contentItem->getLocalizedTitle()|strip_unsafe_html}</li>
{else}
{$contentItem->getIssueIdentification()|escape}
{/if}
</li>
{/foreach}
</ul>
{/if}