synt_backend
Version:
Synt light-weight node backend service
38 lines (32 loc) • 864 B
JavaScript
import * as db from "../mysql/models/index";
export async function handleLabelTranslations(label) {
let _label;
if (!label.id) {
_label = await db.Label.create({});
} else {
_label = label;
}
const translations = label.Translations;
for (let i = 0; i < translations.length; i++) {
if (!translations[i].id) {
await db.Translation.create({
...translations[i],
LabelId: _label.id,
});
} else {
const tr = await db.Translation.findOne({
where: { id: translations[i].id },
});
await tr.update(translations[i]);
}
}
return _label;
}
export function getTranslation(label, lang) {
return (
label?.Translations.find((t) => t.language === lang)?.value ??
label?.Translations.find((t) => t.language === "en")?.value ??
label?.Translations[0]?.value ??
""
);
}