parent
26078de552
commit
0986bbfd4f
@ -1,6 +1,9 @@ |
||||
/** This JS will be included when loading an HTML in the Document tool */ |
||||
import { createPinia, setActivePinia } from 'pinia' |
||||
|
||||
import translateHtml from './../translatehtml.js'; |
||||
const pinia = createPinia() |
||||
setActivePinia(pinia) |
||||
|
||||
import translateHtml from './../translatehtml.js' |
||||
document.addEventListener('DOMContentLoaded', function () { |
||||
translateHtml(); |
||||
translateHtml() |
||||
}); |
||||
|
@ -1,51 +1,56 @@ |
||||
/* For licensing terms, see /license.txt */ |
||||
|
||||
import { usePlatformConfig } from "../vue/store/platformConfig"; |
||||
import { usePlatformConfig } from "../vue/store/platformConfig" |
||||
|
||||
function normalizeLocale(locale) { |
||||
return locale.split('_')[0]; |
||||
return locale.split('_')[0] |
||||
} |
||||
|
||||
export default function translateHtml() { |
||||
const platformConfigStore = usePlatformConfig(); |
||||
export default async function translateHtml() { |
||||
try { |
||||
const platformConfigStore = usePlatformConfig() |
||||
await platformConfigStore.initialize() |
||||
|
||||
if ( |
||||
window.user && |
||||
window.user.locale && |
||||
"true" === platformConfigStore.getSetting("editor.translate_html") |
||||
) { |
||||
var isoCode = normalizeLocale(window.user.locale); |
||||
const translateElement = document.querySelector(".mce-translatehtml"); |
||||
if (translateElement) { |
||||
document.querySelectorAll(".mce-translatehtml").forEach(function (el) { |
||||
el.style.display = "none"; |
||||
}); |
||||
const selectedLang = document.querySelectorAll(`[lang="${isoCode}"]`); |
||||
if (selectedLang.length > 0) { |
||||
selectedLang.forEach(function (userLang) { |
||||
userLang.classList.remove("hidden"); |
||||
userLang.style.display = "block"; |
||||
}); |
||||
if ( |
||||
window.user && |
||||
window.user.locale && |
||||
"true" === platformConfigStore.getSetting("editor.translate_html") |
||||
) { |
||||
var isoCode = normalizeLocale(window.user.locale) |
||||
const translateElement = document.querySelector(".mce-translatehtml") |
||||
if (translateElement) { |
||||
document.querySelectorAll(".mce-translatehtml").forEach(function (el) { |
||||
el.style.display = "none" |
||||
}) |
||||
const selectedLang = document.querySelectorAll(`[lang="${isoCode}"]`) |
||||
if (selectedLang.length > 0) { |
||||
selectedLang.forEach(function (userLang) { |
||||
userLang.classList.remove("hidden") |
||||
userLang.style.display = "block" |
||||
}) |
||||
} |
||||
} |
||||
} |
||||
|
||||
// it checks content from old version
|
||||
const langSpans = document.querySelectorAll('span[lang]'); |
||||
const langs = [...langSpans].filter(span => !span.classList.contains('mce-translatehtml')); |
||||
// it checks content from old version
|
||||
const langSpans = document.querySelectorAll('span[lang]') |
||||
const langs = [...langSpans].filter(span => !span.classList.contains('mce-translatehtml')) |
||||
|
||||
if (langs.length > 0) { |
||||
// it hides all contents with lang
|
||||
langs.forEach(function (el) { |
||||
el.style.display = "none"; |
||||
}); |
||||
if (langs.length > 0) { |
||||
// it hides all contents with lang
|
||||
langs.forEach(function (el) { |
||||
el.style.display = "none" |
||||
}) |
||||
|
||||
const selectedLang = document.querySelectorAll(`span[lang="${isoCode}"]`); |
||||
if (selectedLang.length > 0) { |
||||
selectedLang.forEach(function (userLang) { |
||||
userLang.classList.remove("hidden"); |
||||
userLang.style.display = "block"; |
||||
}); |
||||
const selectedLang = document.querySelectorAll(`span[lang="${isoCode}"]`) |
||||
if (selectedLang.length > 0) { |
||||
selectedLang.forEach(function (userLang) { |
||||
userLang.classList.remove("hidden") |
||||
userLang.style.display = "block" |
||||
}) |
||||
} |
||||
} |
||||
} |
||||
} catch (error) { |
||||
console.error("Error in translateHtml:", error) |
||||
} |
||||
} |
||||
|
Loading…
Reference in new issue