Update the-basics.md#93
Open
vannvath25-boop wants to merge 1 commit into
Open
Conversation
vannvath25-boop
commented
Jul 9, 2026
<title>Vath SMM Panel - Client</title>
<script>
let timerInterval;
let isSignUpMode = false;
let currentLang = 'kh';
const languages = {
kh: {
disabled_msg: "🔒 វេបសាយ Vath SMM ត្រូវបានបិទជាបណ្តោះអាសន្នដោយ Admin!",
login_title: "VATH SMM - ចូលប្រព័ន្ធ", signup_title: "VATH SMM - ចុះឈ្មោះថ្មី",
label_email: "អ៊ីមែល (Email)", label_password: "លេខកូដសម្ងាត់ (Password)",
btn_login: "Log In", btn_signup: "Sign Up (ចុះឈ្មោះ)",
toggle_signup: "មិនទាន់មានគណនី? ចុចបង្កើតគណនីថ្មីនៅទីនេះ", toggle_login: "មានគណនីរួចហើយ? ត្រឡប់ទៅចូលប្រព័ន្ធវិញ",
tab_order: "ទិញសេវាកម្ម", tab_deposit: "បញ្ចូលលុយ ($)", order_title: "VATH SMM - ទិញសេវាកម្ម",
user_balance: "💰 ទឹកប្រាក់របស់អ្នក៖", label_service: "ជ្រើសរើសប្រភេទសេវាកម្ម",
label_link: "តំណភ្ជាប់ (Link)", label_qty: "ចំនួន (Quantity)", label_total: "តម្លៃសរុប (Total Charge)",
btn_order_now: "កុម្ម៉ង់ភ្លាមៗ", deposit_title: "VATH SMM - បញ្ចូលលុយ", label_amount: "ចំនួនទឹកប្រាក់ (Amount $)",
btn_generate_qr: "បង្កើត QR Code", qr_timeout: "⏳ QR ហួសកំណត់ក្នុង៖", qr_send_money: "សូមវេរប្រាក់៖",
qr-services: ["🔵 Facebook Likes", "🔵 Facebook Page Followers", "🎵 TikTok Views"],
err_not_approved: "❌ អ៊ីមែលនេះមិនទាន់ត្រូវបានអនុម័តដោយ Admin ទេ ឬមិនទាន់បានចុះឈ្មោះ!",
err_insufficient: "ទឹកប្រាក់មិនគ្រប់គ្រាន់ទេ!", success_signup: "🎉 ចុះឈ្មោះជោគជ័យ! សូមរង់ចាំ Admin ពិនិត្យ និងអនុម័តជាមុនសិន។",
success_order: "កុម្ម៉ង់ជោគជ័យ!"
},
en: {
disabled_msg: "🔒 Vath SMM Website is temporarily disabled by Admin!",
login_title: "VATH SMM - Login", signup_title: "VATH SMM - Sign Up",
label_email: "Email Address", label_password: "Password",
btn_login: "Log In", btn_signup: "Sign Up",
toggle_signup: "Don't have an account? Register here", toggle_login: "Already have an account? Login here",
tab_order: "Buy Services", tab_deposit: "Deposit ($)", order_title: "VATH SMM - Purchase Service",
user_balance: "💰 Your Balance:", label_service: "Select Service Type",
label_link: "Link URL", label_qty: "Quantity", label_total: "Total Charge",
btn_order_now: "Place Order Now", deposit_title: "VATH SMM - Deposit Money", label_amount: "Amount ($)",
btn_generate_qr: "Generate QR Code", qr_timeout: "⏳ QR Expires in:", qr_send_money: "Please send money:",
qr-services: ["🔵 Facebook Likes", "🔵 Facebook Page Followers", "🎵 TikTok Views"],
err_not_approved: "❌ This email has not been approved by Admin yet or doesn't exist!",
err_insufficient: "Insufficient balance!", success_signup: "🎉 Registration successful! Please wait for Admin approval.",
success_order: "Order Successful!"
},
zh: {
disabled_msg: "🔒 Vath SMM 网站已被管理员暂时关闭!",
login_title: "VATH SMM - 用户登录", signup_title: "VATH SMM - 注册新账号",
label_email: "电子邮箱", label_password: "密码",
btn_login: "登录", btn_signup: "注册",
toggle_signup: "没有账号?点击这里注册新账号", toggle_login: "已有账号?点击这里登录",
tab_order: "购买服务", tab_deposit: "充值余额 ($)", order_title: "VATH SMM - 购买服务中心",
user_balance: "💰 您的账户余额:", label_service: "选择服务类型",
label_link: "链接地址 (Link)", label_qty: "数量 (Quantity)", label_total: "总费用 (Total Charge)",
btn_order_now: "立即下单", deposit_title: "VATH SMM - 账户充值", label_amount: "充值金额 ($)",
btn_generate_qr: "生成付款 QR 码", qr_timeout: "⏳ QR 码有效倒计时:", qr_send_money: "请转账金额:",
qr-services: ["🔵 Facebook 点赞 (Likes)", "🔵 Facebook 主页粉丝 (Followers)", "🎵 TikTok 播放量 (Views)"],
err_not_approved: "❌ 该邮箱尚未获得管理员批准或未注册!",
err_insufficient: "账户余额不足!", success_signup: "🎉 注册成功!请等待管理员审核批准。",
success_order: "下单成功!"
}
};
function changeLanguage(lang) {
currentLang = lang; const dict = languages[lang];
document.querySelectorAll('[data-key]').forEach(el => {
const key = el.getAttribute('data-key');
if (dict[key]) {
if (key === 'login_title' && isSignUpMode) return;
if (key === 'btn_login' && isSignUpMode) return;
if (key === 'toggle_signup' && isSignUpMode) return;
el.innerText = dict[key];
}
});
if(isSignUpMode) {
document.getElementById('auth-title').innerText = dict['signup_title'];
document.getElementById('auth-btn').innerText = dict['btn_signup'];
document.getElementById('auth-toggle').innerText = dict['toggle_login'];
}
const serviceSelect = document.getElementById('service-select');
serviceSelect.innerHTML = `--- ${dict['label_service']} ---`;
dict['qr-services'].forEach(item => { serviceSelect.innerHTML += `${item}`; });
}
changeLanguage('kh');
// ប្រព័ន្ធទិន្នន័យ LocalStorage
if(localStorage.getItem('smm_balance') === null) localStorage.setItem('smm_balance', '10.000');
if(localStorage.getItem('smm_status') === null) localStorage.setItem('smm_status', 'open');
if(localStorage.getItem('smm_pending_users') === null) localStorage.setItem('smm_pending_users', JSON.stringify([])); // ឈ្មោះរង់ចាំ Approve
if(localStorage.getItem('smm_approved_users') === null) localStorage.setItem('smm_approved_users', JSON.stringify([])); // ឈ្មោះអាច Login បាន
function checkSystemStatus() {
const status = localStorage.getItem('smm_status');
if(status === 'close') {
document.getElementById('client-zone').style.display = 'none';
document.getElementById('disabled-screen').style.display = 'block';
} else {
document.getElementById('disabled-screen').style.display = 'none';
if(document.getElementById('page-login').style.display === 'none') { document.getElementById('client-zone').style.display = 'flex'; }
}
document.getElementById('client-balance').innerText = parseFloat(localStorage.getItem('smm_balance')).toFixed(3);
}
setInterval(checkSystemStatus, 1000);
function toggleAuthMode() { isSignUpMode = !isSignUpMode; changeLanguage(currentLang); }
function handleAuth(event) {
event.preventDefault();
const email = document.getElementById('auth-email').value.trim();
const dict = languages[currentLang];
if(isSignUpMode) {
// ភ្ញៀវចុះឈ្មោះ (Sign Up) -> ចូលទៅកាន់បញ្ជីរង់ចាំ (Pending)
let pendingUsers = JSON.parse(localStorage.getItem('smm_pending_users'));
let approvedUsers = JSON.parse(localStorage.getItem('smm_approved_users'));
if(approvedUsers.includes(email)) {
alert(currentLang === 'kh' ? "អ៊ីមែលនេះមានរួចហើយ អាច Log In បាន!" : "This email is already approved!");
return;
}
if(!pendingUsers.includes(email)) {
pendingUsers.push(email);
localStorage.setItem('smm_pending_users', JSON.stringify(pendingUsers));
}
alert(dict['success_signup']);
toggleAuthMode();
} else {
// ភ្ញៀវចូលប្រព័ន្ធ (Log In) -> ត្រូវតែមានឈ្មោះក្នុងបញ្ជីបានការ (Approved) ទើបឱ្យចូល
let approvedUsers = JSON.parse(localStorage.getItem('smm_approved_users'));
if(approvedUsers.includes(email)) {
if(localStorage.getItem('smm_status') === 'close') return;
document.getElementById('page-login').style.display = 'none';
document.getElementById('main-nav').style.display = 'block';
document.getElementById('page-order').style.display = 'block';
checkSystemStatus();
} else {
alert(dict['err_not_approved']);
}
}
}
function calculatePrice() {
const qty = document.getElementById('quantity').value;
document.getElementById('priceBox').innerText = qty > 0 ? ((qty * 0.010) / 1000).toFixed(3) + "$" : "0.000$";
}
function switchPage(page) {
if(localStorage.getItem('smm_status') === 'close') return;
document.getElementById('page-order').style.display = page === 'order' ? 'block' : 'none';
document.getElementById('page-deposit').style.display = page === 'deposit' ? 'block' : 'none';
document.getElementById('tab-order').className = page === 'order' ? 'active' : '';
document.getElementById('tab-deposit').className = page === 'deposit' ? 'active' : '';
}
function generateQR(event) {
event.preventDefault();
const amount = document.getElementById('deposit-amount').value;
document.getElementById('display-amount').innerText = parseFloat(amount).toFixed(2) + " $";
document.getElementById('qr-section').style.display = 'block';
let timeRemaining = 20 * 60; clearInterval(timerInterval);
timerInterval = setInterval(() => {
let mins = Math.floor(timeRemaining / 60); let secs = timeRemaining % 60;
document.getElementById('countdown').innerText = `${mins < 10 ? '0'+mins : mins}:${secs < 10 ? '0'+secs : secs}`;
if (timeRemaining-- <= 0) { clearInterval(timerInterval); document.getElementById('qr-section').style.display = 'none'; }
}, 1000);
}
function handleOrder(event) {
event.preventDefault();
let bal = parseFloat(localStorage.getItem('smm_balance'));
const qty = document.getElementById('quantity').value; const cost = (qty * 0.010) / 1000;
const dict = languages[currentLang];
if (bal >= cost) {
bal -= cost; localStorage.setItem('smm_balance', bal.toString()); checkSystemStatus();
alert(dict['success_order']);
} else { alert(dict['err_insufficient']); }
}
</script>
🇰🇭 ភាសាខ្មែរ
🇺🇸 English
🇨🇳 中文
🔒 វេបសាយ Vath SMM ត្រូវបានបិទជាបណ្តោះអាសន្នដោយ Admin!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.