diff --git a/server/zanata-frontend/src/app/containers/Glossary/EntryModal.js b/server/zanata-frontend/src/app/containers/Glossary/EntryModal.js index 5da6e86de06..892d5bd5855 100644 --- a/server/zanata-frontend/src/app/containers/Glossary/EntryModal.js +++ b/server/zanata-frontend/src/app/containers/Glossary/EntryModal.js @@ -25,7 +25,6 @@ class EntryModal extends Component { if (term) { const person = term.lastModifiedBy const date = term.lastModifiedDate - const isPersonEmpty = isEmpty(person) const isDateEmpty = isEmpty(date) @@ -153,6 +152,20 @@ class EntryModal extends Component { ) : ''} + {!transSelected ? ( +
+ + handleTermFieldUpdate('externalId', e)}> + {entry.externalId} + +
+ ) : ''} {!isEmpty(info) &&
{info}
} diff --git a/server/zanata-frontend/src/app/containers/Glossary/NewEntryModal.js b/server/zanata-frontend/src/app/containers/Glossary/NewEntryModal.js index 51e5fd518b9..7bb0289de94 100644 --- a/server/zanata-frontend/src/app/containers/Glossary/NewEntryModal.js +++ b/server/zanata-frontend/src/app/containers/Glossary/NewEntryModal.js @@ -57,6 +57,16 @@ class NewEntryModal extends Component { }) } + handleExIdChanged = (e) => { + const { entry } = this.state + this.setState({ + entry: { + ...entry, + externalId: e.target.value + } + }) + } + handleCancel = () => { this.resetFields() this.props.handleNewEntryDisplay(false) @@ -123,6 +133,18 @@ class NewEntryModal extends Component { {this.state.entry.description} +
+ + + {this.state.entry.externalId} + +
diff --git a/server/zanata-frontend/src/app/reducers/glossary-reducer.js b/server/zanata-frontend/src/app/reducers/glossary-reducer.js index 154c118fd4f..65ea98c5ec5 100644 --- a/server/zanata-frontend/src/app/reducers/glossary-reducer.js +++ b/server/zanata-frontend/src/app/reducers/glossary-reducer.js @@ -348,6 +348,9 @@ const glossary = handleActions({ case 'description': newSelectedTerm.description = action.payload.value break + case 'externalId': + newSelectedTerm.externalId = action.payload.value + break case 'comment': if (newSelectedTerm.transTerm) { newSelectedTerm.transTerm.comment = action.payload.value diff --git a/server/zanata-frontend/src/app/utils/GlossaryHelper.js b/server/zanata-frontend/src/app/utils/GlossaryHelper.js index 40516c1e566..92ae4f27261 100644 --- a/server/zanata-frontend/src/app/utils/GlossaryHelper.js +++ b/server/zanata-frontend/src/app/utils/GlossaryHelper.js @@ -36,6 +36,7 @@ var GlossaryHelper = { entry.sourceReference = data.srcTerm.reference entry.glossaryTerms = [] entry.qualifiedName = {name: qualifiedName} + entry.externalId = data.externalId var srcTerm = this.generateTermDTO(data.srcTerm, false) if (!isUndefined(srcTerm)) { @@ -109,6 +110,7 @@ var GlossaryHelper = { id: entry.id, pos: defined(entry.pos, ''), description: defined(entry.description, ''), + externalId: defined(entry.externalId, ''), termsCount: entry.termsCount > 0 ? entry.termsCount - 1 : 0, srcTerm: srcTerm, transTerm: transTerm, @@ -129,6 +131,7 @@ var GlossaryHelper = { ? this.toEmptyString(entry.transTerm.comment) : '' const desc = this.toEmptyString(entry.description) const pos = this.toEmptyString(entry.pos) + const extId = this.toEmptyString(entry.externalId) const oriSource = this.toEmptyString( originalEntry.srcTerm.content) @@ -138,10 +141,12 @@ var GlossaryHelper = { ? this.toEmptyString(originalEntry.transTerm.comment) : '' const oriDesc = this.toEmptyString(originalEntry.description) const oriPos = this.toEmptyString(originalEntry.pos) + const oriExtId = this.toEmptyString(originalEntry.externalId) let isSrcModified = (desc !== oriDesc) || (pos !== oriPos) || - (source !== oriSource) + (source !== oriSource) || + (extId !== oriExtId) let isTransModified = (trans !== oriTrans) || (comment !== oriComment) let isSrcValid = !isEmpty(trim(source))