AI Girlfriend | পারফেক্ট ম্যাচ 💜
12,483 users online • 238 joined today
`; } // step1 function renderTypePref() { const options = [ { icon: "🔥", label: "Blonde 🔥", value: "blonde" }, { icon: "💋", label: "Asian 💋", value: "asian" }, { icon: "😘", label: "Cute Bengali 😘", value: "bengali" }, { icon: "🖤", label: "Goth Girl 🖤", value: "goth" }, { icon: "👀", label: "Mature 👀", value: "mature" } ]; return `

কোন টাইপ পছন্দ তোমার? 😏

${options.map(opt => `
${opt.icon}
${opt.label}
`).join('')}
`; } // step2 function renderChatType() { const chats = [ { icon: "😘", label: "Flirty Chat 😘", val: "flirty" }, { icon: "🎤", label: "Voice Message 🎤", val: "voice" }, { icon: "🔒", label: "Private Photo 🔒", val: "photo" }, { icon: "📹", label: "Video Call 📹", val: "video" }, { icon: "🌙", label: "Late Night Talk 🌙", val: "night" } ]; return `

কেমন chat করতে চাও? 💬

💜 কেউ টাইপ করছে...
${chats.map(opt => `
${opt.icon}
${opt.label}
`).join('')}
`; } // step3 function renderOnlineTime() { const times = [ { icon: "💬", label: "সবসময় 💬", val: "always" }, { icon: "🌙", label: "রাতের বেলা 🌙", val: "night" }, { icon: "🍷", label: "Weekend এ 🍷", val: "weekend" }, { icon: "😈", label: "Only for me 😈", val: "exclusive" } ]; return `

সে কখন online থাকুক? ❤️

নতুন ম্যাচ! 💜
${times.map(opt => `
${opt.icon}
${opt.label}
`).join('')}
`; } // result step + all extra blocks function renderResult() { return `

তোমার AI Match Ready 😘

💜 98% Match 💜
Private Voice 💜 Premium
${Array(12).fill(0).map(() => '
').join('')}
হেই বেবি... তুমি আমার perfect match 😘 continue করলে তোমাকে private কিছু দেখাবো...

Private Gallery 🔒

${[1,2,3].map(() => ` `).join('')}
`; } // main render function renderCurrentStep() { let html = ''; if (currentStep === 0) html = renderHero(); else if (currentStep === 1) html = renderTypePref(); else if (currentStep === 2) html = renderChatType(); else if (currentStep === 3) html = renderOnlineTime(); else if (currentStep === 4) html = renderResult(); stepContainer.innerHTML = html; updateProgress(); // attach quiz choice listeners for step 1,2,3 if (currentStep >= 1 && currentStep <= 3) { document.querySelectorAll('.quiz-option').forEach(el => { el.addEventListener('click', (e) => { const type = el.getAttribute('data-type'); const value = el.getAttribute('data-value'); if (type && value) { // add glow effect on select document.querySelectorAll('.quiz-option').forEach(opt => opt.classList.remove('selected')); el.classList.add('selected'); setTimeout(() => { selectOption(type, value); }, 150); } }); }); // floating notifications for step 2 & 3 if(currentStep === 2) { const typingMsg = document.getElementById('fakeTypingMsg'); if(typingMsg) setInterval(() => { typingMsg.innerHTML = ['💬 কেউ টাইপ করছে...','🎤 ভয়েস মেসেজ এসেছে!','📸 নিউ ফটো লকেড'][Math.floor(Math.random()*3)]; }, 3000); } if(currentStep === 3){ const popupDiv = document.getElementById('fakeMatchPopup'); if(popupDiv) setInterval(() => { popupDiv.innerHTML = ' ❤️ নিউ ম্যাচ ❤️'; setTimeout(() => { if(popupDiv) popupDiv.innerHTML = ' নতুন ম্যাচ! 💜'; }, 1500); }, 5000); } } // Hero Start CTA redirect + go to next step? According spec must redirect but also start quiz: open new tab + move step. if (currentStep === 0) { const heroBtn = document.getElementById('heroStartQuizBtn'); if (heroBtn) { heroBtn.addEventListener('click', (e) => { e.preventDefault(); redirectToAdsterra(); // open adsterra in new tab // also advance quiz for better engagement currentStep = 1; renderCurrentStep(); updateProgress(); }); } updateSocialProof(); } // attach final CTA (sticky & inside voice/gallery) - redirect const stickyFinal = document.getElementById('stickyFinalCta'); if(stickyFinal) stickyFinal.onclick = (e) => { e.preventDefault(); redirectToAdsterra(); }; const voiceBtn = document.getElementById('voiceUnlockBtn'); if(voiceBtn) voiceBtn.onclick = (e) => { e.preventDefault(); redirectToAdsterra(); }; const galleryBtn = document.getElementById('galleryUnlockBtn'); if(galleryBtn) galleryBtn.onclick = (e) => { e.preventDefault(); redirectToAdsterra(); }; // Additional CTA for gallery cards document.querySelectorAll('.gallery-card').forEach(card => { card.onclick = (e) => { e.preventDefault(); redirectToAdsterra(); }; }); // update social widget numbers if(currentStep === 4){ const joinedSpan = document.getElementById('socialJoined'); const onlineSpan2 = document.getElementById('socialOnline'); if(joinedSpan) joinedSpan.innerText = joinedToday; if(onlineSpan2) onlineSpan2.innerText = onlineCount; startCountdown('countdownTimerDisplay'); startTypingSimulation(); // waveform animation continuous const bars = document.querySelectorAll('.wave-bar'); if(bars.length) { bars.forEach((bar, idx) => { bar.style.animationDelay = `${idx * 0.07}s`; bar.style.animationDuration = '0.5s'; }); } } // additional listeners for Countdown timer init if needed if(currentStep === 4 && document.getElementById('countdownTimerDisplay')) startCountdown('countdownTimerDisplay'); } // initial load: show hero step renderCurrentStep(); updateSocialProof(); setInterval(() => { if(currentStep === 4) { const chatDiv = document.getElementById('chatPreviewArea'); if(chatDiv && chatDiv.children.length < 3) startTypingSimulation(); } }, 5000); // Animated floating notification for result chat
💜 100% private match | 18+ only 💜

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top