PDF right g3- class book

إنضم
4 يناير 2010
المشاركات
25,673
مستوى التفاعل
1,928
النقاط
113
العمر
38
right g3- class book
--------
السلام عليكم ورحمة الله وبركاته
نرحب بكم في
موقع ومنتديات صقر الجنوب التعليمية
تحتوي على موسوعة من المذكرات والملخصات
وتمارين وملازم واختبارت وكتب
خارجية و كل المستندات التعليمية التي يحتاجها التلميذ في
مشواره الدراسي بالإضافة الى تعلم اللغة الإنجليزية
-------------------------
do.php

------------------------​
سيتم تحديث المحتوى قريبا ان شاء الله​
------------------------
do.php

يمكنك الاتصال بنا
------------------
جميع ملفاتنا نرفعها على مركز تحميل خاص في صقر الجنوب
---------------------
نحن نسعى دائما الى تقديم كل ما هو أفضل لكم و هذا وعد منا ان شاء الله
شجعونا دائما حتى نواصل في العطاء و نسأل الله ان يوفقنا و يسدد خطانا
-------------------
do.php

إذا واجهتكم أي مشاكل في الروابط المرجو تبليغ إدارة الموقع عبر صفحة اتصل بنا
كما نلتمس منكم ابداء آرائكم ومقترحاتكم حول الموقع
من خلال صندوق الرد السريع اسفل الموقع
image102161.html
 
التعديل الأخير:
const config = { siteUrl: 'https://www.jnob-jo.com', whitelist: [ 'youtube.com', 'youtu.be', 'facebook.com', 'twitter.com', 'iinkor.com', 'forum.iinkor.com', 'instagram.com', 'up.jnob-jo.com', 'drive.google.com', 'docs.google.com', 'apps.moe.gov.jo', 'nccd.gov.jo''instagram.com' ] }; function isWhitelisted(url) { return config.whitelist.some(domain => url.includes(domain)); } function isExternalLink(url) { try { const urlObj = new URL(url); const siteUrlObj = new URL(config.siteUrl); return urlObj.hostname !== siteUrlObj.hostname; } catch (e) { return false; } } function convertExternalLink(url, replaceWithStars = false) { if (!url) return url; // تجاهل الروابط الداخلية والمستثناة if (!isExternalLink(url) || isWhitelisted(url)) { return url; } if (replaceWithStars) { return '****'; } return config.siteUrl; } function processBBCodeLinks() { const textNodes = document.evaluate( "//text()[contains(., '[URL')]", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null ); for (let i = 0; i < textNodes.snapshotLength; i++) { const node = textNodes.snapshotItem(i); let text = node.textContent; text = text.replace( /\[URL[^\]]*\](https?:\/\/[^\[]+)\[\/URL\]/g, (match, url) => { const isUrlAlone = text.trim() === match; const newUrl = convertExternalLink(url.trim(), isUrlAlone); return `[URL]${newUrl}[/URL]`; } ); if (text !== node.textContent) { node.textContent = text; } } } function processPlainTextLinks() { const textNodes = document.evaluate( "//text()[contains(., 'http://') or contains(., 'https://')]", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null ); for (let i = 0; i < textNodes.snapshotLength; i++) { const node = textNodes.snapshotItem(i); let text = node.textContent; text = text.replace( /(https?:\/\/[^\s\[\]<>"']+)/g, (match) => { // تحقق مما إذا كان الرابط وحده في النص const isUrlAlone = text.trim() === match; return convertExternalLink(match, isUrlAlone); } ); if (text !== node.textContent) { node.textContent = text; } } } function processPageLinks() { const links = document.querySelectorAll('.message-body a, .p-body-pageContent a'); links.forEach(link => { const href = link.getAttribute('href'); if (href) { const isUrlAlone = link.textContent.trim() === href; const newHref = convertExternalLink(href, isUrlAlone); if (newHref !== href) { link.setAttribute('href', newHref); if (isUrlAlone) { link.textContent = '****'; } link.classList.add('external-redirect'); } } }); processBBCodeLinks(); processPlainTextLinks(); } document.addEventListener('DOMContentLoaded', processPageLinks); document.addEventListener('XFContentLoaded', processPageLinks); const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (mutation.addedNodes && mutation.addedNodes.length > 0) { processPageLinks(); } }); }); observer.observe(document.body, { childList: true, subtree: true });