[ALIGN=CENTER][TABLETEXT="width:70%;background-color:black;border:5px solid gray;"][CELL="filter:;"][ALIGN=center]
[/ALIGN][/CELL][/TABLETEXT][/ALIGN]
الادارة العامة
طاقم الإدارة
يعطيكي الف عافيه
تحية تقدير ..
غآإأيــــة آإألروعـــه ..
سلمتــ,, يدآإأكــ,
رائعه بطرحك
مميزه بحضورك
متالقه باختياركــ
ننتظر جدبدكــ بشووووق
دمتي بسعاده ~
يعطيكي الف عافيه
تحية تقدير ..
اسعدني حضورك الراقي ..
ودي لكي ..
غآإأيــــة آإألروعـــه ..
سلمتــ,, يدآإأكــ,
اسعدني حضورك الراقي ..
ودي لكي ..
رائعه بطرحك
مميزه بحضورك
متالقه باختياركــ
ننتظر جدبدكــ بشووووق
دمتي بسعاده ~
اسعدني حضورك الراقي ..
ودي لكي ..
الاداره العامه
طاقم الإدارة
روعة لأبعد حد
سلمت يُمناكِ نور
روعة لأبعد حد
سلمت يُمناكِ نور
اسعدني حضورك الراقي ..
ودي لكي ..
روعه غاليتي اعبني غلاك
اعادك الله من سفرك سالمه
سلمت يدآك وربي يعطيك العآفية
سبحانك اللهم لا اله الا انت نتستغفرك ونتوب اليك . اللهم اجعل ما نكتب شاهد لنا لا علينا ^_^
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
});