/* Add custom Js styles below */ document.addEventListener("DOMContentLoaded", function() { const elements = document.querySelectorAll("section.s-block"); const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { entry.target.classList.toggle("show", entry.isIntersecting); }); }, { threshold: 0.2 }); elements.forEach(el => observer.observe(el)); }); const font = new FontFace("Ubuntu Arabic", "url('https://files.catbox.moe/ey2tx0.ttf')"); font.load().then(function(loadedFont) { document.fonts.add(loadedFont); document.body.style.fontFamily = "'Ubuntu Arabic', sans-serif"; }); // ========================================================== // ===== مساعد ذكي بصورة AI معدنية مع حركات النوم ===== // ========================================================== // --- متغيرات عامة --- const supportWhatsAppNumber = "966503503456"; // <--- غيّر هذا الرقم const offersPageLink = " https://letsparty-sa.shop/offers"; // <--- غيّر هذا الرابط // ================================================= // ===== وظائف فورم التواصل (Global Functions ) ===== // ================================================= // دالة عرض فورم التواصل function showContactForm() { closePopup(); const formHTML = ` `; document.body.insertAdjacentHTML('beforeend', formHTML); // ربط حدث الإرسال document.getElementById('contact-form').addEventListener('submit', function(e) { e.preventDefault(); const name = document.getElementById('contact-name').value; const phone = document.getElementById('contact-phone').value; const message = document.getElementById('contact-message').value; const fullMessage = `*رسالة جديدة من متجر LET'S PARTY*\n-----------------------\n*الاسم:* ${name}\n*رقم الجوال:* ${phone || 'لم يحدد'}\n-----------------------\n*الرسالة:*\n${message}`; const encodedMessage = encodeURIComponent(fullMessage); const whatsappURL = `https://wa.me/${supportWhatsAppNumber}?text=${encodedMessage}`; showConfirmationPopup(whatsappURL ); }); } // دالة عرض تأكيد الإرسال function showConfirmationPopup(whatsappURL) { closePopup(); const confirmationHTML = ` `; document.body.insertAdjacentHTML('beforeend', confirmationHTML); document.getElementById('open-whatsapp-btn').addEventListener('click', () => { setTimeout(closePopup, 1000); }); } // دالة إغلاق النافذة المنبثقة function closePopup() { const popup = document.getElementById('popup-wrapper'); if (popup) { popup.remove(); } } // ================================================= // ===== بدء تشغيل المساعد الذكي ===== // ================================================= document.addEventListener("DOMContentLoaded", function() { // ================================================= // ===== إعدادات المساعد الذكي ===== // ================================================= const MAX_RECENT_PRODUCTS = 3; const MAX_RECOMMENDATIONS_TO_SHOW = 3; const SLEEP_TIMEOUT = 7000; // 7 ثواني للنوم // قائمة المنتجات والأقسام const sectionsToTrack = { "c2002000764": { name: "حفلات-موسميه", recommendations: [ { name: "فى يوم الوطن نعيش الفخر", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D9%81%D9%89-%D9%8A%D9%88%D9%85-%D8%A7%D9%84%D9%88%D8%B7%D9%86-%D9%86%D8%B9%D9%8A%D8%B4-%D8%A7%D9%84%D9%81%D8%AE%D8%B1/p680955183" }, { name: "مستلزمات حفلة صيف", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D9%85%D8%B3%D8%AA%D9%84%D8%B2%D9%85%D8%A7%D8%AA-%D8%AD%D9%81%D9%84%D8%A9-%D8%B5%D9%8A%D9%81/p1174659728" }, { name: "مستلزمات حفله بطابع مكسيكي", link: "https://letsparty-sa.shop/%D9%85%D8%B3%D8%AA%D9%84%D8%B2%D9%85%D8%A7%D8%AA-%D8%AD%D9%81%D9%84%D9%87-%D8%A8%D8%B7%D8%A7%D8%A8%D8%B9-%D9%85%D9%83%D8%B3%D9%8A%D9%83%D9%8A/p289573401" }, { name: "مستلزمات حفله شكل البطيخ", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D9%85%D8%B3%D8%AA%D9%84%D8%B2%D9%85%D8%A7%D8%AA-%D8%AD%D9%81%D9%84%D9%87-%D8%B4%D9%83%D9%84-%D8%A7%D9%84%D8%A8%D8%B7%D9%8A%D8%AE/p1816168836" } ] }, "c1093745277": { name: "أعياد-ميلاد", recommendations: [ { name: "ستارة ترتر لامعة", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B3%D8%AA%D8%A7%D8%B1%D8%A9-%D8%AA%D8%B1%D8%AA%D8%B1-%D9%84%D8%A7%D9%85%D8%B9%D8%A9/p1460463047" }, { name: "طقم أدوات مائدة عيد ميلاد", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B7%D9%82%D9%85-%D8%A3%D8%AF%D9%88%D8%A7%D8%AA-%D9%85%D8%A7%D8%A6%D8%AF%D8%A9-%D8%B9%D9%8A%D8%AF-%D9%85%D9%8A%D9%84%D8%A7%D8%AF/p1036671738" }, { name: "طقم أدوات مائدة ذهبي وردي", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B7%D9%82%D9%85-%D8%A3%D8%AF%D9%88%D8%A7%D8%AA-%D9%85%D8%A7%D8%A6%D8%AF%D8%A9-%D8%B0%D9%87%D8%A8%D9%8A-%D9%88%D8%B1%D8%AF%D9%8A/p369106168" } ] }, "c630193267": { name: "شخصيات", recommendations: [ { name: "منتج حفلات مستوحى من كرتون/لعبة Minecraft", link: "https://letsparty-sa.shop/%D9%85%D9%86%D8%AA%D8%AC-%D8%AD%D9%81%D9%84%D8%A7%D8%AA-%D9%85%D8%B3%D8%AA%D9%88%D8%AD%D9%89-%D9%85%D9%86-%D9%83%D8%B1%D8%AA%D9%88%D9%86%D9%84%D8%B9%D8%A8%D8%A9-minecraft/p1874322894" }, { name: "زينة حفلة عيد ميلاد سبايدرمان", link: "https://letsparty-sa.shop/%D8%B2%D9%8A%D9%86%D8%A9-%D8%AD%D9%81%D9%84%D8%A9-%D8%B9%D9%8A%D8%AF-%D9%85%D9%8A%D9%84%D8%A7%D8%AF-%D8%B3%D8%A8%D8%A7%D9%8A%D8%AF%D8%B1%D9%85%D8%A7%D9%86/p501925581" }, { name: "زينة حفلة عيد ميلاد بطابع ديزني فروزن", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B2%D9%8A%D9%86%D8%A9-%D8%AD%D9%81%D9%84%D8%A9-%D8%B9%D9%8A%D8%AF-%D9%85%D9%8A%D9%84%D8%A7%D8%AF-%D8%A8%D8%B7%D8%A7%D8%A8%D8%B9-%D8%AF%D9%8A%D8%B2%D9%86%D9%8A-%D9%81%D8%B1%D9%88%D8%B2%D9%86/p1559166406" }, { name: "منتجات حفلة عيد ميلاد بطابع ميني ماوس", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D9%85%D9%86%D8%AA%D8%AC%D8%A7%D8%AA-%D8%AD%D9%81%D9%84%D8%A9-%D8%B9%D9%8A%D8%AF-%D9%85%D9%8A%D9%84%D8%A7%D8%AF-%D8%A8%D8%B7%D8%A7%D8%A8%D8%B9-%D9%85%D9%8A%D9%86%D9%8A-%D9%85%D8%A7%D9%88%D8%B3/p609909186" }, { name: "زينة حفلة عيد ميلاد بطابع اليونيكورن", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B2%D9%8A%D9%86%D8%A9-%D8%AD%D9%81%D9%84%D8%A9-%D8%B9%D9%8A%D8%AF-%D9%85%D9%8A%D9%84%D8%A7%D8%AF-%D8%A8%D8%B7%D8%A7%D8%A8%D8%B9-%D8%A7%D9%84%D9%8A%D9%88%D9%86%D9%8A%D9%83%D9%88%D8%B1%D9%86/p1249729217" } ] }, "c1658142118": { name: "منتجات-متنوعه", recommendations: [ { name: "ديكور حفلات صيفية بطابع هاواي", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%AF%D9%8A%D9%83%D9%88%D8%B1-%D8%AD%D9%81%D9%84%D8%A7%D8%AA-%D8%B5%D9%8A%D9%81%D9%8A%D8%A9-%D8%A8%D8%B7%D8%A7%D8%A8%D8%B9-%D9%87%D8%A7%D9%88%D8%A7%D9%8A/p83238030" }, { name: "حقيبة هدايا صيفية للأطفال", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%AD%D9%82%D9%8A%D8%A8%D8%A9-%D9%87%D8%AF%D8%A7%D9%8A%D8%A7-%D8%B5%D9%8A%D9%81%D9%8A%D8%A9-%D9%84%D9%84%D8%A3%D8%B7%D9%81%D8%A7%D9%84/p258457475" }, { name: "طاولة عائمة لحفلات الصيف", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%B7%D8%A7%D9%88%D9%84%D8%A9-%D8%B9%D8%A7%D8%A6%D9%85%D8%A9-%D9%84%D8%AD%D9%81%D9%84%D8%A7%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81/p1531194558" }, { name: "دلو ثلج قابل للنفخ بشكل شجرة نخيل", link: "https://salla.sa/6c96c408-63b5-416c-b3f8-8d76f3b1cba2/%D8%AF%D9%84%D9%88-%D8%AB%D9%84%D8%AC-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D9%86%D9%81%D8%AE-%D8%A8%D8%B4%D9%83%D9%84-%D8%B4%D8%AC%D8%B1%D8%A9-%D9%86%D8%AE%D9%8A%D9%84/p79687747" } ] } }; // متغيرات للتحكم في النوم والصحيان let sleepTimer = null; let isAsleep = false; let menuOpen = false; // متغير جديد لتتبع حالة القائمة // ================================================= // ===== وظائف التتبع ===== // ================================================= // دالة التحقق من كون الصفحة الرئيسية function isHomePage( ) { const currentPath = window.location.pathname; // التحقق من كون الصفحة الرئيسية (بدون أي مسارات فرعية) return currentPath === '/' || currentPath === '' || currentPath.match(/^\/?\?/); } function trackVisitedSection() { // إذا كنا في الصفحة الرئيسية، لا نحفظ أي قسم مفضل if (isHomePage()) { return; } const currentPath = window.location.pathname; for (const key in sectionsToTrack) { if (currentPath.includes(key)) { localStorage.setItem('favoriteSection', JSON.stringify(sectionsToTrack[key])); // إضافة تأثير الهز والرسالة عند دخول قسم جديد showSectionEntryNotification(sectionsToTrack[key].name); break; } } } // دالة عرض إشعار دخول القسم مع هز الأيقونة function showSectionEntryNotification(sectionName) { const assistantIcon = document.getElementById('assistant-icon'); if (assistantIcon) { // إيقاظ المساعد وتطبيق تأثير الهز wakeUp(); assistantIcon.classList.add('section-entry-shake'); // إنشاء رسالة منبثقة const notification = document.createElement('div'); notification.className = 'section-notification'; notification.innerHTML = `
👋 شاهد ترشيحاتي لقسم ${sectionName}
`; // **تعديل:** إضافة الإشعار إلى حاوية المساعد بدلاً من الأيقونة مباشرة const assistantContainer = document.getElementById('assistant-container'); if (assistantContainer) { assistantContainer.appendChild(notification); } // إزالة التأثيرات بعد وقت معين setTimeout(() => { assistantIcon.classList.remove('section-entry-shake'); if (notification && notification.parentNode) { notification.remove(); } }, 3000); resetSleepTimer(); } } function trackViewedProduct() { if (!window.location.pathname.includes('/p')) return; const productNameElement = document.querySelector('h1'); if (productNameElement) { const product = { name: productNameElement.innerText.trim(), link: window.location.href }; let recentProducts = JSON.parse(localStorage.getItem('recentProducts')) || []; if (recentProducts.length === 0 || recentProducts[0].link !== product.link) { recentProducts.unshift(product); recentProducts = recentProducts.slice(0, MAX_RECENT_PRODUCTS); localStorage.setItem('recentProducts', JSON.stringify(recentProducts)); } } } // ================================================= // ===== وظائف النوم والاستيقاظ ===== // ================================================= // دالة بدء مؤقت النوم function startSleepTimer() { sleepTimer = setTimeout(() => { // لا ننام إذا كانت القائمة مفتوحة if (!menuOpen) { goToSleep(); } }, SLEEP_TIMEOUT); } // دالة إعادة تشغيل مؤقت النوم function resetSleepTimer() { if (sleepTimer) { clearTimeout(sleepTimer); } // لا نبدأ مؤقت النوم إذا كانت القائمة مفتوحة if (!menuOpen) { startSleepTimer(); } } // دالة النوم - إغلاق العيون تدريجياً function goToSleep() { if (isAsleep || menuOpen) return; // لا ننام إذا كانت القائمة مفتوحة isAsleep = true; const aiImage = document.getElementById('ai-image'); if (aiImage) { // تغيير صورة AI لتظهر العيون مغلقة aiImage.src = "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3ClinearGradient id='metalGrad' x1='0%25' y1='0%25' x2='100%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23c0c0c0'/%3E%3Cstop offset='50%25' style='stop-color:%23808080'/%3E%3Cstop offset='100%25' style='stop-color:%234a4a4a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='50' cy='50' r='40' fill='url(%23metalGrad )' stroke='%23333' stroke-width='2'/%3E%3Cpath d='M34 40 Q40 42 46 40' stroke='%230ff' stroke-width='2' fill='none' opacity='0.7'/%3E%3Cpath d='M54 40 Q60 42 66 40' stroke='%230ff' stroke-width='2' fill='none' opacity='0.7'/%3E%3Cpath d='M35 65 Q50 70 65 65' stroke='%230ff' stroke-width='1' fill='none' opacity='0.5'/%3E%3Ccircle cx='35' cy='25' r='3' fill='%23666'/%3E%3Ccircle cx='65' cy='25' r='3' fill='%23666'/%3E%3Crect x='48' y='20' width='4' height='8' fill='%23666' rx='2'/%3E%3C/svg%3E"; const assistantIcon = document.getElementById('assistant-icon'); assistantIcon.classList.add('sleeping'); } } // دالة الاستيقاظ - فتح العيون فجأة function wakeUp() { if (!isAsleep) return; isAsleep = false; const aiImage = document.getElementById('ai-image'); if (aiImage) { // إعادة العيون المفتوحة مع تأثير الاستيقاظ aiImage.src = "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3ClinearGradient id='metalGrad' x1='0%25' y1='0%25' x2='100%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23c0c0c0'/%3E%3Cstop offset='50%25' style='stop-color:%23808080'/%3E%3Cstop offset='100%25' style='stop-color:%234a4a4a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='50' cy='50' r='40' fill='url(%23metalGrad )' stroke='%23333' stroke-width='2'/%3E%3Ccircle cx='40' cy='40' r='6' fill='%2300ffff'/%3E%3Ccircle cx='60' cy='40' r='6' fill='%2300ffff'/%3E%3Ccircle cx='40' cy='40' r='3' fill='%23ffffff'/%3E%3Ccircle cx='60' cy='40' r='3' fill='%23ffffff'/%3E%3Cpath d='M35 65 Q50 75 65 65' stroke='%2300ffff' stroke-width='2' fill='none'/%3E%3Ccircle cx='35' cy='25' r='3' fill='%23666'/%3E%3Ccircle cx='65' cy='25' r='3' fill='%23666'/%3E%3Crect x='48' y='20' width='4' height='8' fill='%23666' rx='2'/%3E%3C/svg%3E"; const assistantIcon = document.getElementById('assistant-icon'); assistantIcon.classList.remove('sleeping'); assistantIcon.classList.add('waking-up'); // إزالة كلاس الاستيقاظ بعد انتهاء الحركة setTimeout(() => { assistantIcon.classList.remove('waking-up'); }, 500); } } // ================================================= // ===== إنشاء المساعد الذكي ===== // ================================================= // دالة إنشاء الأيقونة مع صورة AI معدنية function createAssistantIcon() { if (document.getElementById("assistant-icon")) return; const assistantHTML = `
AI Assistant
`; document.body.insertAdjacentHTML('beforeend', assistantHTML); const assistantIcon = document.getElementById('assistant-icon'); // بدء مؤقت النوم startSleepTimer(); // أحداث التفاعل مع المساعد assistantIcon.addEventListener('click', () => { const menu = document.getElementById('assistant-menu'); if (menu.classList.contains('active')) { menuOpen = false; menu.classList.remove('active'); // بدء مؤقت النوم بعد إغلاق القائمة resetSleepTimer(); } else { wakeUp(); // إيقاظ المساعد عند الضغط menuOpen = true; buildAndShowPersonalizedMenu(); // إيقاف مؤقت النوم أثناء فتح القائمة if (sleepTimer) { clearTimeout(sleepTimer); } } }); // إيقاظ المساعد عند مرور الماوس (فقط إذا لم تكن القائمة مفتوحة) assistantIcon.addEventListener('mouseenter', () => { if (!menuOpen) { wakeUp(); resetSleepTimer(); } }); // إعادة تشغيل مؤقت النوم عند مغادرة الماوس (فقط إذا لم تكن القائمة مفتوحة) assistantIcon.addEventListener('mouseleave', () => { if (!menuOpen) { resetSleepTimer(); } }); } // دالة بناء وعرض القائمة المخصصة function buildAndShowPersonalizedMenu() { const menu = document.getElementById('assistant-menu'); if (!menu) return; const onHomePage = isHomePage(); const favoriteSection = JSON.parse(localStorage.getItem('favoriteSection')); const recentProducts = JSON.parse(localStorage.getItem('recentProducts')); let menuContent = `
×
`; let hasPersonalizedContent = false; // **تعديل:** لا نعرض اقتراحات القسم إذا كنا في الصفحة الرئيسية if (favoriteSection && favoriteSection.recommendations && favoriteSection.recommendations.length > 0 && !onHomePage) { const shuffled = favoriteSection.recommendations.sort(() => 0.5 - Math.random()); const selectedRecommendations = shuffled.slice(0, MAX_RECOMMENDATIONS_TO_SHOW); menuContent += ` `; hasPersonalizedContent = true; } // **تعديل:** نعرض "آخر ما شاهدت" دائماً إذا كانت موجودة if (recentProducts && recentProducts.length > 0) { menuContent += ` `; hasPersonalizedContent = true; } menuContent += ``; // عرض رسالة عامة فقط إذا لم يكن هناك أي محتوى مخصص if (!hasPersonalizedContent) { menuContent += ``; } menuContent += ``; menu.innerHTML = menuContent; menu.classList.add('active'); document.getElementById('close-assistant-menu').addEventListener('click', () => { menuOpen = false; menu.classList.remove('active'); resetSleepTimer(); }); } // --- تشغيل المساعد الذكي --- createAssistantIcon(); trackVisitedSection(); trackViewedProduct(); });