function addBlog() { const targetElement = document.querySelector("nav#mobile-menu li.links"); if (targetElement) { console.log(targetElement) const blogLink = `
  • ` targetElement.insertAdjacentHTML("beforebegin", blogLink); } } function removeHeaderCategories() { const categoriesItems = document.querySelectorAll("nav#mobile-menu .footer-list.store-links-items a"); if (categoriesItems.length > 0) { categoriesItems.forEach((category) => { const regex = /c\d+$/; if (regex.test(category.href)) { category.remove(); } }); } } document.addEventListener("DOMContentLoaded", () => { addBlog(); removeHeaderCategories() }); (function () { var P = '|'; var TABLE_START = P + 'جدول' + P, TABLE_END = P + 'الجدول' + P; var FAQ_START = P + 'اسئلة' + P, FAQ_END = P + 'نهاية' + P; var tableRe = new RegExp(esc(TABLE_START) + '([\\s\\S]*?)' + esc(TABLE_END), 'g'); var faqRe = new RegExp(esc(FAQ_START) + '([\\s\\S]*?)' + esc(FAQ_END), 'g'); var SKIP = /^(SCRIPT|STYLE|NOSCRIPT|TEXTAREA)$/; var busy = false; var faqData = []; var faqSeen = {}; function esc(s) { return s.replace(/\|/g, '\\|'); } function clean(html) { return html .replace(//gi, '\n') .replace(/<\/(p|div|li|h[1-6]|tr)>/gi, '\n') .replace(/<(?!\/?a[\s>])[^>]*>/gi, '') .replace(/ /g, ' '); } function decode(s) { var t = document.createElement('textarea'); t.innerHTML = s; return t.value; } function plain(s) { return decode(s.replace(/<[^>]*>/g, '')).trim(); } function safe(s) { return s .replace(/&/g, '&') .replace(//g, '>'); } function linkify(html) { var tmp = document.createElement('div'); tmp.innerHTML = html; var out = ''; function walk(node) { node.childNodes.forEach(function (n) { if (n.nodeType === 3) { out += safe(n.nodeValue); } else if (n.nodeType === 1 && n.tagName === 'A') { var href = (n.getAttribute('href') || '').trim(); if (/^(https?:\/\/|\/|#)/i.test(href)) { out += ''; walk(n); out += ''; } else { walk(n); } } else if (n.nodeType === 1) { walk(n); } }); } walk(tmp); return out; } function findContainers(start, end) { var result = []; var all = document.body.querySelectorAll('*'); for (var i = 0; i < all.length; i++) { var el = all[i]; if (SKIP.test(el.tagName)) continue; var t = el.textContent; if (t.indexOf(start) === -1 || t.indexOf(end) === -1) continue; var childHas = false; for (var j = 0; j < el.children.length; j++) { var ct = el.children[j].textContent; if (ct.indexOf(start) !== -1 && ct.indexOf(end) !== -1) { childHas = true; break; } } if (!childHas) result.push(el); } return result; } function buildTable(inner) { var rows = clean(inner).split('\n') .map(function (r) { return r.trim(); }) .filter(Boolean) .map(function (r) { return r.split('|').map(function (c) { return linkify(c.trim()); }); }); if (!rows.length) return ''; var count = rows[0].length; var html = ''; rows[0].forEach(function (c) { html += ''; }); html += ''; for (var i = 1; i < rows.length; i++) { html += ''; for (var j = 0; j < count; j++) { html += ''; } html += ''; } return html + '
    ' + c + '
    ' + (rows[i][j] || '') + '
    '; } function buildFaq(inner) { var lines = clean(inner).split('\n'); var html = '
    '; var q = null, a = ''; function flush() { if (q !== null && a) { var pq = plain(q), pa = plain(a); if (!faqSeen[pq]) { faqSeen[pq] = true; faqData.push({ question: pq, answer: pa }); } html += '

    ' + linkify(q) + '

    ' + linkify(a) + '

    '; } q = null; a = ''; } lines.forEach(function (raw) { var line = raw.trim(); if (!line) return; if (/^س\s*[::]/.test(line)) { flush(); q = line.replace(/^س\s*[::]\s*/, ''); } else if (/^ج\s*[::]/.test(line)) { a = line.replace(/^ج\s*[::]\s*/, ''); } else if (q !== null) { a += (a ? ' ' : '') + line; } }); flush(); return html + '
    '; } function updateSchema() { var old = document.getElementById('faq-schema'); if (old) old.remove(); if (!faqData.length) return; var s = document.createElement('script'); s.id = 'faq-schema'; s.type = 'application/ld+json'; s.text = JSON.stringify({ '@context': 'https://schema.org', '@type': 'FAQPage', 'mainEntity': faqData.map(function (item) { return { '@type': 'Question', 'name': item.question, 'acceptedAnswer': { '@type': 'Answer', 'text': item.answer } }; }) }); document.head.appendChild(s); } function run() { if (busy) return; var body = document.body.textContent; if (body.indexOf(TABLE_START) === -1 && body.indexOf(FAQ_START) === -1) return; busy = true; try { findContainers(TABLE_START, TABLE_END).forEach(function (el) { var n = el.innerHTML.replace(tableRe, function (m, c) { return buildTable(c); }); if (n !== el.innerHTML) el.innerHTML = n; }); var before = faqData.length; findContainers(FAQ_START, FAQ_END).forEach(function (el) { var n = el.innerHTML.replace(faqRe, function (m, c) { return buildFaq(c); }); if (n !== el.innerHTML) el.innerHTML = n; }); if (faqData.length !== before) updateSchema(); } finally { setTimeout(function () { busy = false; }, 0); } } function start() { run(); [500, 1500, 3000].forEach(function (t) { setTimeout(run, t); }); var timer; new MutationObserver(function () { if (busy) return; clearTimeout(timer); timer = setTimeout(run, 300); }).observe(document.body, { childList: true, subtree: true }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', start); } else { start(); } })();