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))