From cd7c626c651ee7b3c0330cbacb4274aee93be331 Mon Sep 17 00:00:00 2001 From: Bogdan Cochior <bogdan.cochior@thinslices.com> Date: Thu, 27 Sep 2018 10:36:35 +0300 Subject: [PATCH] feat(mts): update MTS xml properties --- packages/component-mts-package/src/MTS.js | 36 ++++++++++++------- .../app/config/journal/metadata.js | 4 +-- packages/xpub-faraday/config/default.js | 1 + 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/packages/component-mts-package/src/MTS.js b/packages/component-mts-package/src/MTS.js index 0f9a82235..5907e433d 100644 --- a/packages/component-mts-package/src/MTS.js +++ b/packages/component-mts-package/src/MTS.js @@ -1,8 +1,12 @@ const convert = require('xml-js') -const { set, get, reduce, isEmpty } = require('lodash') +const config = require('config') +const { set, get, reduce, isEmpty, capitalize } = require('lodash') const PackageManager = require('./PackageManager') const mts = require('./mts-json-template') + +const manuscriptTypes = config.get('journalConfig.manuscriptTypes') + const { defaultConfig, defaultParseXmlOptions, @@ -76,7 +80,11 @@ class MTS { 'subj-group-type': 'Article Type', }, subject: { - _text: metadata.type, + _text: get( + manuscriptTypes.find(v => v.value === metadata.type), + 'label', + 'Research Article', + ), }, }, ], @@ -147,12 +155,16 @@ class MTS { const { hasConflicts = 'no', message = '', - hasDataAvailability, - dataAvailabilityMessage, - hasFunding, - fundingMessage, + hasDataAvailability = 'no', + dataAvailabilityMessage = '', + hasFunding = 'no', + fundingMessage = '', } = conflicts const questions = [] + const funding = isEmpty(hasFunding) ? 'no' : hasFunding + const dataAvailability = isEmpty(hasDataAvailability) + ? 'no' + : hasDataAvailability if (!isEmpty(hasConflicts)) { questions.push({ @@ -160,20 +172,20 @@ class MTS { type: 'COI', }, answer: { - _text: hasConflicts, + _text: capitalize(hasConflicts), }, statement: { _text: message, }, }) } - if (!isEmpty(hasDataAvailability)) { + if (!isEmpty(dataAvailability)) { questions.push({ _attributes: { type: 'DA', }, answer: { - _text: hasDataAvailability, + _text: capitalize(dataAvailability), }, statement: { _text: isEmpty(dataAvailabilityMessage) @@ -182,13 +194,13 @@ class MTS { }, }) } - if (!isEmpty(hasFunding)) { + if (!isEmpty(funding)) { questions.push({ _attributes: { type: 'Fund', }, answer: { - _text: hasFunding, + _text: capitalize(funding), }, statement: { _text: isEmpty(fundingMessage) @@ -206,7 +218,7 @@ class MTS { const contrib = authors.map((a, i) => ({ _attributes: { 'contrib-type': 'author', - corresp: a.isCorresponding ? 'yes' : 'no', + corresp: a.isCorresponding ? 'Yes' : 'No', }, role: { _attributes: { diff --git a/packages/xpub-faraday/app/config/journal/metadata.js b/packages/xpub-faraday/app/config/journal/metadata.js index d23e29ac8..3a1ef627a 100644 --- a/packages/xpub-faraday/app/config/journal/metadata.js +++ b/packages/xpub-faraday/app/config/journal/metadata.js @@ -7,10 +7,10 @@ module.exports = { doctype: 'article SYSTEM "JATS-archivearticle1-mathml3.dtd"', dtdVersion: '1.1d1', articleType: 'Research Article', - journalIdPublisher: 'research', + journalIdPublisher: 'BCA', email: 'bca.support@hindawi.com', journalTitle: 'Bioinorganic Chemistry and Applications', issn: '2474-7394', - prefix: 'RESEARCH-BCA-', + prefix: 'BCA-', }, } diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js index 79f2c7ccb..2e0282b48 100644 --- a/packages/xpub-faraday/config/default.js +++ b/packages/xpub-faraday/config/default.js @@ -81,6 +81,7 @@ module.exports = { remoteRoot: '/BCA/', exclude: ['*.js'], }, + journal: get(journalConfig, 'metadata.mts'), }, 'invite-reset-password': { url: process.env.PUBSWEET_INVITE_PASSWORD_RESET_URL || '/invite', -- GitLab