// Unique Device Id function getDeviceId() { let id = localStorage.getItem('deviceId'); if (!id) { id = "dev-" + Math.random().toString(36).substr(2, 9); localStorage.setItem('deviceId', id); } return id; } // Random referral code function generateReferralCode() { return Math.random().toString(36).substr(2, 6).toUpperCase(); } let currentUser = {}; const profileNameDisplay = document.getElementById("profileName"); const profilePic = document.getElementById("profilePic"); function loadUserState() { const allUsersData = JSON.parse(localStorage.getItem('galaxyEarnAllUsers')) || {}; const deviceId = getDeviceId(); // default user currentUser = allUsersData[deviceId] || { name: "Guest User", telegramId: null, photoUrl: "https://via.placeholder.com/100", points: 0, adsWatchedToday: 0, totalAdsWatchedLifetime: 0, lastAdWatchDate: null, claimedBonuses: [], referralCode: generateReferralCode(), referredBy: null, referredUsers: [] }; // যদি Telegram WebApp থেকে ডেটা আসে if (window.Telegram && Telegram.WebApp && Telegram.WebApp.initDataUnsafe.user) { const tgUser = Telegram.WebApp.initDataUnsafe.user; // LocalStorage এ যদি একই TelegramId থাকে তাহলে সেটাই ইউজ করবো const existingUser = Object.values(allUsersData).find( user => user.telegramId === tgUser.id ); if (existingUser) { currentUser = existingUser; } else { currentUser = { name: tgUser.username ? "@" + tgUser.username : (tgUser.first_name + (tgUser.last_name ? " " + tgUser.last_name : "")), telegramId: tgUser.id, photoUrl: tgUser.photo_url || currentUser.photoUrl, points: 0, adsWatchedToday: 0, totalAdsWatchedLifetime: 0, lastAdWatchDate: null, claimedBonuses: [], referralCode: generateReferralCode(), referredBy: null, referredUsers: [] }; allUsersData[deviceId] = currentUser; localStorage.setItem('galaxyEarnAllUsers', JSON.stringify(allUsersData)); } } // UI update profileNameDisplay.innerHTML = ` ${currentUser.name} `; profilePic.src = currentUser.photoUrl; } // Example Button Actions document.getElementById("claimBtn").addEventListener("click", () => { alert("🎁 Claim Ad Clicked!"); }); document.getElementById("tapBtn").addEventListener("click", () => { alert("👆 TAP Clicked!"); }); document.getElementById("watchBtn").addEventListener("click", () => { alert("▶ Watch Short Video Clicked!"); }); // Initialize loadUserState();