(function () { 'use strict'; // ================================ // ⚙️ التكوين (Configuration) // ================================ const CONFIG = { storageKey: "smart_popunder_last", pairDateKey: "smart_popunder_pair_date", pairIndicesKey: "smart_popunder_pair_indices", interval: 30 * 60 * 1000, // 30 دقيقة // قائمة المواقع targetSites: [ "https://yalla-shoot.inc", "https://koora-live.inc", "https://kora-online.inc", "https://yalla-choots.com", "https://yallachoots.com", "https://koraa-star.com", "https://360kora.one", "https://kora-365.io", "https://yallakoraa.io", "https://yaciine-tv.com", "https://yacinee-live.com", "https://yallalive.click", "https://livehd7.info", "https://livehd7.click", "https://www.kooora2live.com", "https://www.fel3rda.com", "https://www.go4koraa.com", "https://www.karaaonline.live", "https://www.koooramatch.com", "https://www.kooraonlive.com", "https://kora4live.org", "https://www.kora-live1.com", "https://www.koralivepro.com", "https://www.livhd7.com", "https://www.syriaalive.com", "https://www.thewormsaworld.com", "https://www.yaccine-tv.com", "https://www.yalla-shoot-gded.com", "https://www.yallashoot7srey.com", "https://kooora-live.app", "https://korastar.org", "https://yalla-choot.org", "https://kora-365.org", "https://yallakoraa.org", "https://yallalive.life", "https://koraa-star.online", "https://yaciine-tv.online", "https://koora360.net", "https://kora-online-new.blog", "https://super-koora.live", "https://camel1.org", "https://streameast.now", "https://9goaltv.org", "https://9goaltv.soccer", "https://yalla-goalz.net", "https://koora-live.soccer", "https://kora360.soccer", "https://kora-online.soccer", "https://yacinee-live.online", "https://yalla-choots.online", "https://golato.online", "https://king-shoot.io", "https://totalsportek.now", "https://footybite.now", "https://sports100.blog", "https://soccerstreams.blog", "https://sportsfeed24.online", "https://hesgoal.now", "https://hesgoal-tv.online", "https://hesgoal.inc", "https://koooralive.life", "https://streameastapp.life", "https://yallashoot-tv.life", "https://yallashoot-live.life", "https://hesgoal-live.com", "https://koralive-en.com", "https://sportektotal.com", "https://camel11.com", "https://eaststreamapp.com", "https://yallakora.life", "https://yalla-shoot-tv.life", "https://kora-online.life", "https://360kora.life", "https://kooora365.life", "https://korastar.life", "https://liveshd7.life", "https://www.yalla-match.life", "https://www.sirapp.life", "https://www.sirtv.life", "https://www.yalla-shoot.cv", "https://www.bzbuz.one", "https://bein-match.life", "https://beinmatch1.io" ] }; // ================================ // 🛠️ أدوات مساعدة (Helpers) // ================================ const Storage = { get: (key) => { try { return localStorage.getItem(key); } catch (e) { return null; } }, set: (key, val) => { try { localStorage.setItem(key, val); } catch (e) { } }, getInt: (key) => parseInt(Storage.get(key) || 0, 10) }; const Time = { now: () => Date.now(), today: () => { try { return new Date().toLocaleDateString('en-CA'); } catch (e) { return new Date().toISOString().slice(0, 10); } } }; // ================================ // 🕵️‍♂️ كشف المتصفحات الداخلية (In-App Browsers) // ================================ function isInAppBrowser() { const ua = navigator.userAgent.toLowerCase(); const rules = [ 'wv', 'okhttp', 'fbav', 'fb_iab', 'instagram', 'telegram', 'line', 'twitter', 'linkedin', 'snapchat' ]; return rules.some(rule => ua.includes(rule)); } // ================================ // 🎲 منطق الاختيار (Selection Logic) // ================================ function getHash(str) { let h = 0; for (let i = 0; i < str.length; i++) { h = (Math.imul(31, h) + str.charCodeAt(i)) | 0; } return h >>> 0; // تحويل إلى unsigned 32-bit } function getDailySelection() { const today = Time.today(); const storedDate = Storage.get(CONFIG.pairDateKey); const storedIndices = Storage.get(CONFIG.pairIndicesKey); // إذا كانت البيانات مخزنة لليوم، استخدمها if (storedDate === today && storedIndices) { const parts = storedIndices.split(',').map(Number); // تأكد أن لدينا 4 مؤشرات صالحة if (parts.length === 4 && !parts.some(isNaN)) return parts; } // حساب مجموعة جديدة من 4 مواقع const n = CONFIG.targetSites.length; if (n === 0) return null; const selection = []; const h = getHash(today); // استخدام الهاش لتوليد 4 أرقام عشوائية ثابتة لهذا اليوم // نستخدم مولد أرقام عشوائية بسيط (LCG) مع الهاش كبذرة (seed) let seed = h; const random = () => { seed = (Math.imul(1664525, seed) + 1013904223) | 0; return (seed >>> 0) / 4294967296; }; // ننشئ مصفوفة بكل المؤشرات المتاحة ثم نخلطها const availableIndices = Array.from({ length: n }, (_, i) => i); // خلط (Shuffle) باستخدام البذرة الثابتة لليوم for (let i = availableIndices.length - 1; i > 0; i--) { const j = Math.floor(random() * (i + 1)); [availableIndices[i], availableIndices[j]] = [availableIndices[j], availableIndices[i]]; } // نأخذ أول 4 عناصر const count = Math.min(4, n); for (let i = 0; i < count; i++) { selection.push(availableIndices[i]); } // حفظ النتيجة Storage.set(CONFIG.pairDateKey, today); Storage.set(CONFIG.pairIndicesKey, selection.join(',')); return selection; } function getTargetUrl() { const selection = getDailySelection(); if (!selection || selection.length === 0) { return CONFIG.targetSites[Math.floor(Math.random() * CONFIG.targetSites.length)]; } // اختيار عشوائي واحد من الـ 4 المختارة لهذا اليوم const index = selection[Math.floor(Math.random() * selection.length)]; return CONFIG.targetSites[index]; } // ================================ // 🔥 المشغل (Trigger) // ================================ function shouldRun() { if (isInAppBrowser()) return false; const lastTime = Storage.getInt(CONFIG.storageKey); return (Time.now() - lastTime) > CONFIG.interval; } function triggerPopunder() { if (!shouldRun()) return; const url = getTargetUrl(); if (!url) return; // محاولة الفتح const win = window.open(url, "_blank"); if (win) { // تحديث الوقت فوراً لتجنب التكرار Storage.set(CONFIG.storageKey, Time.now().toString()); // محاولة عمل Pop-under (Focus Parent) try { win.blur(); window.focus(); // محاولة إضافية لبعض المتصفحات setTimeout(() => { win.blur(); window.focus(); }, 100); } catch (e) { } } } // ================================ // 👂 مستمعي الأحداث (Event Listeners) // ================================ if (!shouldRun()) return; let executed = false; // استخدام pointerdown أفضل من click لتجاوز بعض الحواجب // إزالة scroll لأنه يسبب فتح نوافذ مزعجة جداً وقد يتم حظره const events = ['pointerdown', 'mousedown', 'touchstart', 'click']; function handler(e) { if (executed) return; // تأكد أن التفاعل حقيقي (Trusted Event) if (!e.isTrusted) return; executed = true; triggerPopunder(); // تنظيف الأحداث events.forEach(ev => window.removeEventListener(ev, handler, { capture: true })); } events.forEach(ev => { window.addEventListener(ev, handler, { once: true, capture: true, passive: true }); }); })();
أياكس
VS
بنفيكا

تفاصيل وموعد مباراة أياكس و بنفيكا بتاريخ 2025-11-25 في دوري أوروبا, دوري أبطال اوروبا

تفاصيل مباراة أياكس و بنفيكا

يلتقى اليوم 2025-11-25 كلا من نادى أياكس و نادي بنفيكا فى بطولة أوروبا, دوري أبطال اوروبا فى تمام الساعه 20:45 بتوقيت مصر.

معلومات عن مباراة أياكس و بنفيكا 2025-11-25

تنقل أحداث المباراة في الوطن العربي فضائيا على قناة ويتم إستضافة المباراه في ملعب يوهان كرويف ارينا يقوم المعلق الرياضى بالتعليق على مباراة أياكس و بنفيكا

بطاقة مباراة أياكس و بنفيكا

البطولةأوروبا, دوري أبطال اوروبا
موعد المباراة25-11-2025
توقيت المباراة20:45 بتوقيت Asia/Riyadh
القناة الناقلهغير معروف
معلق المباراةغير معروف