Fixes for back translations

This commit is contained in:
2022-01-08 03:34:51 +02:00
parent ed0535e14a
commit c7e08c1944
2 changed files with 47 additions and 37 deletions

View File

@@ -291,44 +291,51 @@ module.exports = function (options) {
] ]
} }
] ]
} },
{
association: db.TranslationArtifactVersion.BackTranslation,
},
] ]
}).then((translationArtifactVersion) => { }).then((translationArtifactVersion) => {
if (translationArtifactVersion) { if (translationArtifactVersion) {
// TODO: Create a backTranslation... if (translationArtifactVersion.backTranslation) {
return db.TranslationArtifactVersion.create({ // translationArtifactVersion has a back translation...xx§
creatorId: request.user.id, return translationArtifactVersion.backTranslation
name: translationArtifactVersion.artifactVersion.artifact.dialect.name, } else {
artifactVersionId: translationArtifactVersion.artifactVersionId, return db.TranslationArtifactVersion.create({
dialectId: translationArtifactVersion.dialect.id, creatorId: request.user.id,
backTranslationFromId: translationArtifactVersion.id, name: translationArtifactVersion.artifactVersion.artifact.dialect.name,
entityId: request.user.individualEntityUser.entityUser.entityId, artifactVersionId: translationArtifactVersion.artifactVersionId,
translationChapters: translationArtifactVersion.translationChapters.map(translationChapter => { dialectId: translationArtifactVersion.dialect.id,
return { backTranslationFromId: translationArtifactVersion.id,
creatorId: request.user.id, entityId: request.user.individualEntityUser.entityUser.entityId,
chapterId: translationChapter.chapterId, translationChapters: translationArtifactVersion.translationChapters.map(translationChapter => {
translationChunks: translationChapter.translationChunks.map(translationChunk => { return {
return { creatorId: request.user.id,
creatorId: request.user.id, chapterId: translationChapter.chapterId,
chunkId: translationChunk.chunkId, translationChunks: translationChapter.translationChunks.map(translationChunk => {
text: translationChunk.translation.text, return {
index: translationChunk.index creatorId: request.user.id,
} chunkId: translationChunk.chunkId,
}) text: translationChunk.translation.text,
} index: translationChunk.index
}
})
}
})
}, {
include: [
{
association: db.TranslationArtifactVersion.TranslationChapters,
include: [
{
association: db.TranslationChapter.TranslationChunks
}
]
}
]
}) })
}, { }
include: [
{
association: db.TranslationArtifactVersion.TranslationChapters,
include: [
{
association: db.TranslationChapter.TranslationChunks
}
]
}
]
})
} else { } else {
return null return null
} }
@@ -336,8 +343,7 @@ module.exports = function (options) {
if (translationArtifactVersion) { if (translationArtifactVersion) {
response.redirect(`/translate/${translationArtifactVersion.id}`) response.redirect(`/translate/${translationArtifactVersion.id}`)
} else { } else {
// TODO: Let user know we cannot back translate next()
} }
}).catch(error => { }).catch(error => {
next(error) next(error)

View File

@@ -21,7 +21,11 @@ module.exports = function (options) {
association: db.ArtifactVersion.Chapters association: db.ArtifactVersion.Chapters
}, },
{ {
association: db.ArtifactVersion.TranslationArtifactVersions association: db.ArtifactVersion.TranslationArtifactVersions,
where: {
backTranslationFromId: null
},
required: false
} }
] ]
}).then(artifactVersion => { }).then(artifactVersion => {