Translate from french teks

This commit is contained in:
Cédric FAMIBELLE-PRONZOLA
2022-03-27 02:13:58 +04:00
parent ea5a1e8e80
commit 2387833e7b
+38
View File
@@ -13,15 +13,53 @@ const jwennAwtisEpiId = async data => {
return awtis.map(a => a.alias).join('-')
}
const jwennUserEpiId = async userId => {
const user = await strapi.query('user', 'users-permissions').findOne({id: userId})
return user
}
const translateTeks = async teksFR => {
const english = await strapi.services.translator.translate('FR', 'EN', teksFR)
const espagnol = await strapi.services.translator.translate('FR', 'ES', teksFR)
const deutsch = await strapi.services.translator.translate('FR', 'DE', teksFR)
const italiano = await strapi.services.translator.translate('FR', 'IT', teksFR)
return {
francais: teksFR,
english,
espagnol,
deutsch,
italiano
}
}
module.exports = {
lifecycles: {
beforeCreate: async data => {
const user = await jwennUserEpiId(data.user.id)
if(!user) {
throw strapi.errors.badRequest('Not found')
}
if (data.tit && !data.forceSlug) {
const awtis = await jwennAwtisEpiId(data.awtis)
data.slug = slugify(`${awtis}-${data.tit}`, {lower: true, remove: /[*#+~.()'"!:@]/g})
}
if (user.canAutoTranslate && data.tradiksyonOtomatik && data.tradiksyon.francais && (!data.tradiksyon.english || !data.tradiksyon.espagnol || !data.tradiksyon.deutsch || !data.tradiksyon.italiano)) {
const traslate = await translateTeks(data.tradiksyon.francais)
data.tradiksyon = traslate
}
},
beforeUpdate: async (params, data) => {
const user = await jwennUserEpiId(data.user.id)
if(!user) {
throw strapi.errors.badRequest('Not found')
}
if (data.tit && !data.forceSlug) {
const awtis = await jwennAwtisEpiId(data.awtis)
data.slug = slugify(`${awtis}-${data.tit}`, {lower: true, remove: /[*#+~.()'"!:@]/g})