PageSourceSearch

https://www.slivki.by/js/gtranslate.js

js slivki.by collected 2026-09-29 22:29:18 UTC 2,221 bytes, 70 lines download raw bytes

1var domain = "." + location.hostname.replace(/^(www\.)/, "");
2
3const googleTranslateConfig = {
4    lang: "ru",
5    domain: domain
6};
7
8function TranslateInit() {
9
10    if (googleTranslateConfig.langFirstVisit && !Cookies.get('googtrans')) {
11        TranslateCookieHandler("/auto/" + googleTranslateConfig.langFirstVisit);
12    }
13
14    let code = TranslateGetCode();
15    updateLanguageLinkText(code);
16    document.querySelectorAll('[data-google-lang]').forEach(radioButton => {
17        if (radioButton.getAttribute('data-google-lang') === code) {
18            radioButton.checked = true;
19        }
20    });
21
22    if (code == googleTranslateConfig.lang) {
23        TranslateCookieHandler(null, googleTranslateConfig.domain);
24    }
25
26    new google.translate.TranslateElement({
27        pageLanguage: googleTranslateConfig.lang,
28        suppressHighlighting: false,
29    });
30
31    TranslateEventHandler('click', '[data-google-lang]', function (e) {
32        TranslateCookieHandler("/" + googleTranslateConfig.lang + "/" + e.getAttribute("data-google-lang"), googleTranslateConfig.domain);
33        showProgress();
34        window.location.reload();
35        updateLanguageLinkText(e.getAttribute("data-google-lang"));
36    });
37}
38
39function TranslateGetCode() {
40    let lang = (Cookies.get('googtrans') != undefined && Cookies.get('googtrans') != "null") ? Cookies.get('googtrans') : googleTranslateConfig.lang;
41    return lang.match(/(?!^\/)[^\/]*$/gm)[0];
42}
43
44function TranslateCookieHandler(val, domain) {
45    Cookies.set('googtrans', val);
46    Cookies.set("googtrans", val, {
47        domain: "." + document.domain,
48    });
49
50    if (domain == "undefined") return;
51    Cookies.set("googtrans", val, {
52        domain: domain,
53    });
54
55    Cookies.set("googtrans", val, {
56        domain: "." + domain,
57    });
58}
59
60function TranslateEventHandler(event, selector, handler) {
61    document.addEventListener(event, function (e) {
62        let el = e.target.closest(selector);
63        if (el) handler(el);
64    });
65}
66
67function updateLanguageLinkText(code) {
68    let selectedLanguage = document.querySelector(`input[data-google-lang="${code}"]`).value;
69    document.querySelector('.language-tooltip a span').innerText = "Язык: " + selectedLanguage;
70}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.