DEFINISI SISTEM

Centralized Cross-Domain
Text Translation Engine

Mesin penerjemah bahasa sisi klien (client-side) yang bekerja secara asinkron (AJAX) melintasi berbagai domain. Sistem ini memindai dan mengubah teks antarmuka (UI) secara real-time langsung di browser pengguna tanpa mengubah atau merusak struktur elemen HTML (DOM) aslinya.

Engine Asset Location & Operational Specs
Base Core Path: https://erlanggatirta.com/xproyek/app/translate/
Script Utama: fungsi.js
Penyimpanan Kamus: Flat File (.txt)
Keamanan Origin: CORS Cross-Origin Allowed via .htaccess
FOKUS & TARGET CAPAIAN

Tujuan Utama Sistem

1. Sentralisasi Aset

Mengelola seluruh glosarium bahasa dari satu titik server pusat untuk mendistribusikan terjemahan ke banyak domain satelit secara instan tanpa perlu repot update satu-persatu.

2. Integritas Sistem UI

Mengganti teks secara akurat tanpa merusak atribut krusial bawaan form seperti id, name, class, atau event listener JavaScript yang menempel.

3. Performa Maksimal

Memanfaatkan flat file (.txt) murni sebagai sumber data kamus untuk menghindari penumpukan beban pemrosesan antrean koneksi database MySQL.

PROBLEM STATEMENT

Contoh Kasus & Kendala Konvensional

Perusahaan memiliki web profil, portal transaksi, dan beberapa landing page promo di domain berbeda. Metode translasi tradisional (misal via innerHTML) menimpa struktur form secara kasar.

Sebagai contoh, tag form seperti <label id="user" name="user" class="form-label">Nama Pengguna</label> akan hancur dan terganti secara paksa. Hal ini berakibat fatal: validasi form mati dan fungsi JavaScript yang mengikat ID menjadi error. Belum lagi, tim IT harus mengelola database multi-bahasa di tiap server secara terpisah yang boros waktu dan tidak efisien.

TECHNICAL APPROACH

Solusi Arsitektur Engine

walkDOM Core & Filtering Aman

Engine menargetkan Text Node murni (NodeType 3). Elemen pembungkus HTML, blok <script>, dan deklarasi <style> dilewati total sehingga fungsionalitas logika sistem dan desain tidak terganggu.

MutationObserver Aktif

Lapisan observer memantau konten dinamis baru yang di-load via AJAX (arsitektur SPA) dan langsung menerjemahkannya secara mulus di latar belakang.

[ BROWSER CLIENT ]
   └── Trigger Script Injector (Base64)
       └── [ AJAX REQUEST ] ke erlanggatirta.com
           └── Mengunduh Kamus (.txt)
               └── Eksekusi walkDOM Core (Ubah NodeType 3)
                   └── MutationObserver Standby (Auto-Translate)
IMPLEMENTASI

Cara Penggunaan Sistem

Injector Script di Aplikasi Client

Pasang script asinkron Base64 ini pada footer.php web satelit. Ubah parameter translatePage('inggris') sesuai nama file txt yang ingin dipanggil.

Support Ready :
id-en = Indonesian -> Inggris
en-id = Inggris -> Indonesian

<script>
(function(){
  var u='aHR0cHM6Ly9lcmxhbmdnYXRpcnRhLmNvbS94cHJveWVrL2FwcC90cmFuc2xhdGUvZnVuZ3NpLmpz';
  var s=document.createElement('script'); s.async=true; s.src=atob(u);
  s.onload = function() {
    translatePage('id-en');
  };
  var x=document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s,x);
})();
</script>