/* Aljaweea — footer "Cookie Preferences" link opens the Complianz banner.
* Original by Digency (19 Aug 2026); amended 8 Sep 2026, runbook 5.14:
* - e.preventDefault() so the href="#" no longer scrolls the page to the top;
* - calls Complianz's own cmplz_set_banner_status('show') and falls back to
* clicking the (hidden) Manage-consent button if that function is absent.
* Rollback: restore the original 12-line version recorded in the runbook. */
document.addEventListener('click', function (e) {
var link = e.target.closest('.cmplz-show-banner');
if (!link) { return; }
e.preventDefault();
if (typeof cmplz_set_banner_status === 'function') {
cmplz_set_banner_status('show');
} else {
document.querySelectorAll('.cmplz-manage-consent').forEach(function (btn) { btn.click(); });
}
});
شهد صيف العام 2026 سلسلة من الاتفاقيات التي عزّزت الروابط الجوية بين منطقة الشرق الأوسط وشمال إفريقيا وبقية أنحاء القارة الإفريقية. وكان أحدثها اتفاقية تاريخية للنقل الجوي وفق سياسة الأجواء المفتوحة، وقّعتها سلطنة عُمان وجمهورية أنغولا في العاصمة الأنغولية لواندا يوم 18 سبتمبر 2026. وتسمح الاتفاقية بتسيير عدد غير محدود من الرحلات المباشرة بين البلدين، كما تتيح لشركات الطيران إبرام اتفاقيات للمشاركة بالرمز.
وفي معرض توضيحه لأهمية الاتفاقية، قال رئيس هيئة الطيران المدني في سلطنة عُمان المهندس نايف بن علي العبري “تمثل اتفاقيات النقل الجوي أحد الركائز الأساسية الداعمة لنمو قطاع الطيران المدني وانفتاحه على أسواق ووجهات جديدة. ومن شأن ذلك تعزيز إسهامه في دعم السياحة والتجارة والاستثمارات، فضلًا عن الإسهام في تحقيق الأهداف الاستراتيجية للسلطنة للطيران 2040”.
سباق خليجي لتعزيز الحضور في الأجواء الإفريقية
وفي أغسطس 2026، عزّزت طيران الإمارات، التي تتخذ من دبي مقرًا لها، حضورها الراسخ في جنوب القارة الإفريقية. ففي 5 أغسطس، وسّعت الناقلة والخطوط الجوية لجنوب إفريقيا نطاق شراكتهما الممتدة منذ العام 1997، لتشمل اتفاقية متبادلة للمشاركة بالرمز.
وأتاحت هذه الخطوة إضافة تسع مسارات تشغّلها الخطوط الجوية لجنوب إفريقيا انطلاقًا من جوهانسبرغ إلى شبكة طيران الإمارات، مستفيدةً من تشغيل الناقلة الخليجية 56 رحلة أسبوعيًا إلى جنوب إفريقيا بطائرات بوينغ 777 وإيرباص أيه 380 ( A380 ) و أيه 350 (A350). وفي يوليو 2026، مضت “الاتحاد للطيران”، التي تتخذ من أبو ظبي مقرًا لها، في تنفيذ خطة من ثلاثة محاور، تُوّجت في 24 يوليو بتوقيع مذكرة تفاهم مع شركة “أفريكا وورلد إيرلاينز” الغانية. وشملت المذكرة التعاون في مجال المشاركة بالرمز، وخدمات الشحن الجوي، ومواءمة برامج الولاء.
وقبل ذلك بأيام، وتحديدًا في 22 يوليو 2026، وقّعت الاتحاد للطيران اتفاقية ربط بين الخطوط مع شركة “إير بيس”» النيجيرية، تتيح للمسافرين الوصول، عبر تذكرة واحدة، إلى 20 مدينة في غرب إفريقيا ووسطها، مرورًا بلاغوس وأكرا. ولتقديم خدمات راقية من خلال إطار توحيد خيارات الأمتعة، حددت الناقلتان رسومًا تبدأ من 185 درهمًا إماراتيًا لحقيبتين، مع توفير هذه الخدمة مجانًا للمسافرين في درجتي “الأولى ديلوكس” و”الإقامة”.
وقال المسؤول عن الشؤون التجارية في “إير بيس” نويل نغاالا، “لطالما سعت إير بيس إلى فتح آفاق جديدة أمام المسافرين من نيجيريا وغرب إفريقيا. ويأتي تعاوننا مع الاتحاد للطيران امتدادًا لهذا التوجه، إذ يتيح لعملائنا الوصول بسهولة إلى أبوظبي عبر رحلات الاتحاد بمجرد بدء تشغيل المسارات الجديدة، كما يتيح لمسافري الاتحاد الوصول إلى الوجهات العديدة التي نخدمها في المنطقة”.
واستكمالًا لتحركاتها في إفريقيا خلال يوليو، أبرمت الاتحاد للطيران اتفاقية ربط بين الخطوط مع شركة “فاست جيت” الزيمبابوية لتعزيز الربط الجوي في جنوب القارة الإفريقية. وبذلك، تكون الناقلة قد أبرمت ثلاث اتفاقيات خلال شهر واحد، صُممت كل منها بالشكل الذي يلبي احتياجات السوق المعنية.
الأجواء المفتوحة تمهّد الطريق أمام توسّع الربط الجوي الإفريقي
وتعزّز هذه الاتفاقيات الأساس القانوني للتوسع التجاري في غرب إفريقيا. ففي الأول من يوليو 2026، صادق البرلمان الغاني على اتفاقيات خدمات جوية ثنائية مع ست دول، من بينها دولتان من منطقة الشرق الأوسط وشمال إفريقيا، هما المملكة العربية السعودية وقطر. وتهدف هذه الأطر التنظيمية إلى ضمان الامتثال للالتزامات المتفق عليها، وتسوية النزاعات، والحد من الممارسات المناهضة للمنافسة التي قد تؤثر في العمليات الجوية ومصالح الناقلات.
ولا يكتمل فهم هذه التحالفات الخليجية الإفريقية من دون الإشارة إلى الدور التاريخي لناقلات شمال إفريقيا، مثل مصر للطيران والخطوط الملكية المغربية، التي شكّلت على مدى عقود جسرًا جويًا بين العالم العربي وإفريقيا جنوب الصحراء. وفي إطار مساعي المغرب إلى تعزيز مكانته مركزًا رئيسيًا للطيران على مستوى القارة، وقّعت المملكة المغربية 19 اتفاقية ثنائية في مجال الطيران خلال أبريل 2026، بهدف توسيع حقوق النقل الجوي وتعزيز اندماجه في شبكة الطيران الإفريقية. وتهدف هذه الاتفاقيات إلى تحسين التنقل الإقليمي، وترسيخ مكانة المغرب في حركة النقل الجوي بالقارة، ودعم السوق الإفريقية الموحدة للنقل الجوي (SAATM).
وناقش قادة القطاع هذه التحولات المتسارعة خلال فعاليات بارزة، من بينها قمة الطيران الإفريقي في نيروبي يومي 9 و10 سبتمبر 2026، وسوق السفر العربي في دبي خلال الفترة من 14 إلى 17 سبتمبر. وبدلًا من انتظار التطبيق الكامل للسوق الإفريقية الموحدة للنقل الجوي، تتجه شركات الطيران في الشرق الأوسط إلى بناء شراكات مباشرة مع الناقلات المحلية وتوسيع اتفاقيات الربط بين الخطوط، بما يعزّز خيارات السفر ويوفّر وصلات جوية إضافية تتيح للمسافرين الوصول إلى وجهاتهم النهائية.
وتأتي الشراكة العربية الإفريقية في مرحلة مفصلية لقطاع النقل الجوي في القارة. فبحسب تقرير جمعية شركات الطيران الإفريقية “أفرا” لشهر أغسطس 2026، حيث سجل القطاع نموًا ملحوظًا، إذ ارتفعت السعة المقعدية الإجمالية بنسبة 8.8 في المئة على أساس سنوي، فيما زادت السعة المقعدية للرحلات داخل إفريقيا بنسبة 10.5 في المئة. وفي السياق نفسه، أظهرت بيانات الاتحاد الدولي للنقل الجوي (إياتا) ارتفاع سعة الشحن الجوي بنسبة 14 في المئة خلال أغسطس، بالتزامن مع جهود تنفيذ منطقة التجارة الحرة القارية الإفريقية (AfCFTA).
مصفوفة التوسع الأفريقي. رسم بياني: الجوية، المصدر: AFRAA, IATA, QIA.
رهان المليارات.. استثمارات شرق أوسطية تدفع مشاريع الطيران الإفريقي
على الرغم من أن الشراكات بين شركات الطيران تتيح التوسع السريع في الأسواق، فإن تحقيق النجاح على المدى الطويل يتطلب استثمارات في البنية التحتية الإفريقية، ولا سيما قطاع الصيانة والإصلاح والعمرة (MRO)، بما يفتح آفاقًا جديدة للنمو.
ومع توقع تضاعف حجم أسطول الطائرات في القارة بحلول العام 2045، تقدّر جمعية شركات الطيران الإفريقية “أفرا” احتياجات إفريقيا بنحو 140 مليار دولار من الاستثمارات في قطاع الصيانة والإصلاح والعَمرة، إلى جانب الحاجة إلى 75 ألف عامل جديد في قطاع الطيران. وفي ضوء هذه الاحتياجات، تكثّف جهات من الشرق الأوسط استثماراتها في البنية التحتية للطيران الإفريقي، بالتوازي مع توسيع شبكاتها التشغيلية.
ويبرز مشروع مطار بوجيسيرا الدولي الجديد، بالقرب من العاصمة الرواندية كيغالي، بوصفه أحد أبرز مشاريع البنية التحتية المرتبطة باستثمارات الشرق الأوسط في إفريقيا، إذ تبلغ قيمته الإجمالية 2 مليار دولار. وفي يناير 2026، استحوذ صندوق قطر للاستثمار على حصة تبلغ 60 في المئة من المشروع مقابل 578 مليون دولار، وتعهد بتوفير 1.1 مليار دولار إضافية لاستكمال أعمال الإنشاء. ومن المقرر افتتاح المطار في العام 2027، مع توقعات بأن تصل طاقته الاستيعابية إلى سبعة ملايين مسافر سنويًا، على أن ترتفع إلى 14 مليون مسافر بحلول العام 2032.
تصميم مقترح لمبنى مسافرين في المطار. صورة: Engineering Structures for Lif.
وإلى جانب مبادرات أخرى، من بينها تمويل البنك الإفريقي للتنمية بقيمة 270 مليون يورو لتوسيع المطارات المغربية، تعكس هذه الاستثمارات توجّه جهات من الشرق الأوسط وشمال إفريقيا إلى لعب دور يتجاوز بيع تذاكر السفر، وصولًا إلى المساهمة في تطوير البنية التحتية التي سترسم ملامح مستقبل الطيران في القارة. وبوجه عام، أظهر العام 2026 الدور المتنامي لشركات الطيران في الشرق الأوسط بوصفها محركًا رئيسيًا لتعزيز الربط الجوي مع إفريقيا. ومع تنامي الطلب على السفر واتساع سلاسل الإمداد في القارة، تمضي ناقلات المنطقة في توسيع حضورها عبر الشراكات التجارية والاستثمارات في البنية التحتية، بما يعزّز موقعها في رسم ملامح مستقبل الطيران الإفريقي. وفي ظل هذه التحولات، يبرز الممر الجوي العربي الإفريقي بوصفه أحد المسارات الواعدة التي قد تعيد تشكيل خريطة النقل الجوي العالمي خلال العقد المقبل.
ابقوا على اطلاع دائم. احصلوا على أحدث أخبار الطيران والفضاء في العالم العربي لحظة نشرها عبر واتساب وتيليغرام، أو اشتركوا بنشرتنا البريدية لتصلكم نشرة أسبوعية. كما يمكنكم إضافتنا إلى مصادركم المفضلة لتظهر لكم أخبارنا بشكل أوسع في بحث Google.
نستخدم ملفات تعريف الارتباط لتشغيل هذا الموقع، وقياس القراءة، وعرض الإعلانات التي تموّل عملنا الصحافي. في منطقتكم تبقى ملفات تعريف الارتباط غير الضرورية معطّلة حتى تقبلوها. يمكنكم قبولها كلها أو رفضها كلها أو الاختيار بحسب الفئة، وتغيير خياركم في أي وقت عبر رابط “تفضيلات ملفات تعريف الارتباط” في أسفل كل صفحة.
وظيفية دائما مفعلة
ضرورية لعمل الموقع: لغة التصفح، وخياركم بشأن ملفات تعريف الارتباط، وحماية النماذج، وجلسة ووردبريس. مفعّلة دائماً.
تفضيلات
تحفظ الإعدادات التي اخترتموها حتى لا تحتاجوا إلى ضبطها مجدداً في زيارتكم التالية.
إحصائيات
Google Analytics لمعرفة المقالات الأكثر قراءة، ومن أي بلد، وعلى أي أجهزة. تُختصر عناوين IP قبل تخزينها.التخزين أو الوصول الفني الذي يُستخدم حصرياً لأغراض إحصائية مجهولة المصدر. وبدون أمر استدعاء أو امتثال طوعي من جانب مزود خدمة الإنترنت الخاص بك أو سجلات إضافية من طرف ثالث، لا يمكن عادةً استخدام المعلومات المخزنة أو المستردة لهذا الغرض وحده لتحديد هويتك.
تسويق
الإعلانات التي تعرضها Google AdSense، ومقاطع الفيديو المضمّنة وأزرار وسائل التواصل الاجتماعي، وبكسلات القياس لمنشوراتنا على المنصات الاجتماعية.
نستخدم ملفات تعريف الارتباط لتشغيل هذا الموقع، وقياس القراءة، وعرض الإعلانات التي تموّل عملنا الصحافي. وهي مفعّلة ما لم ترفضوها هنا. يمكنكم تغيير خياركم في أي وقت عبر رابط “تفضيلات ملفات تعريف الارتباط” في أسفل كل صفحة.
وظيفية دائما مفعلة
ضرورية لعمل الموقع: لغة التصفح، وخياركم بشأن ملفات تعريف الارتباط، وحماية النماذج، وجلسة ووردبريس. مفعّلة دائماً.
تفضيلات
تحفظ الإعدادات التي اخترتموها حتى لا تحتاجوا إلى ضبطها مجدداً في زيارتكم التالية.
إحصائيات
Google Analytics لمعرفة المقالات الأكثر قراءة، ومن أي بلد، وعلى أي أجهزة. تُختصر عناوين IP قبل تخزينها.التخزين أو الوصول الفني الذي يُستخدم حصرياً لأغراض إحصائية مجهولة المصدر. وبدون أمر استدعاء أو امتثال طوعي من جانب مزود خدمة الإنترنت الخاص بك أو سجلات إضافية من طرف ثالث، لا يمكن عادةً استخدام المعلومات المخزنة أو المستردة لهذا الغرض وحده لتحديد هويتك.
تسويق
الإعلانات التي تعرضها Google AdSense، ومقاطع الفيديو المضمّنة وأزرار وسائل التواصل الاجتماعي، وبكسلات القياس لمنشوراتنا على المنصات الاجتماعية.
var molongui_authorship_byline_params = {"byline_modifiers_enabled":"","byline_prefix":"","byline_suffix":"","byline_separator":",\u00a0","byline_last_separator":"\u00a0and\u00a0","byline_link_title":"View all posts by","byline_link_class":"","byline_dom_tree":"","byline_dom_prepend":"","byline_dom_append":"","byline_decoder":"v3","byline_data_url":"https://aljaweea.com/ar/wp-json/molongui-authorship/v1/bylines","byline_rest_nonce":""};
//# sourceURL=molongui-authorship-byline-js-extra
let cmplzBlockedContent = document.querySelector('.cmplz-blocked-content-notice');
if ( cmplzBlockedContent) {
cmplzBlockedContent.addEventListener('click', function(event) {
event.stopPropagation();
});
}
//# sourceURL=cmplz-cookiebanner-js-after
/* Accessibility quick fixes (WCAG 2.2 AA test, 27 Oct 2026). Safe to switch off.
1 skip link · 2 form autofill · 3 language switcher name · 4 dark-mode button name and state
5 mobile menu state and focus · 6 heading levels for screen readers · 7 author photos
8 form errors linked to fields · 9 "opens in a new tab" for screen readers · 10 main content area */
(function () {
var isAr = (document.documentElement.lang || '').toLowerCase().indexOf('ar') === 0;
var T = isAr
? { skip: 'تخطَّ إلى المحتوى الرئيسي', dark: 'الوضع المظلم', newTab: ' (يُفتح في علامة تبويب جديدة)' }
: { skip: 'Skip to main content', dark: 'Dark mode', newTab: ' (opens in a new tab)' };function visible(el) {
if (!el) { return false; }
var r = el.getBoundingClientRect(), s = getComputedStyle(el);
return r.width > 0 && r.height > 0 && s.visibility !== 'hidden' && s.display !== 'none' && r.right > 0 && r.left < window.innerWidth;
}function run() {
/* 1. Skip link (WCAG 2.4.1): jumps to the first block after the site header */
var header = document.getElementById('theme-header');
var target = header ? header.nextElementSibling : null;
while (target && (target.tagName === 'SCRIPT' || target.tagName === 'STYLE')) { target = target.nextElementSibling; }
if (target && !document.querySelector('.aj-skip-link')) {
if (!target.id) { target.id = 'aj-main'; }
if (!target.hasAttribute('tabindex')) { target.setAttribute('tabindex', '-1'); }
var a = document.createElement('a');
a.className = 'aj-skip-link';
a.href = '#' + target.id;
a.textContent = T.skip;
a.addEventListener('click', function () { setTimeout(function () { target.focus({ preventScroll: true }); }, 0); });
document.body.insertBefore(a, document.body.firstChild);
}/* 10. Main content area (WCAG 1.3.1): pages with none (the home pages) get one */
if (target && !document.querySelector('main, [role="main"]') && !target.querySelector('footer, #footer')) {
target.setAttribute('role', 'main');
}/* 2. Form autofill (WCAG 1.3.5) */
var inputs = document.querySelectorAll('form input');
for (var i = 0; i < inputs.length; i++) {
var el = inputs[i];
if (el.getAttribute('autocomplete')) { continue; }
var n = (el.name || '').toLowerCase();
var l = ((el.labels && el.labels[0] && el.labels[0].textContent) || el.getAttribute('aria-label') || el.placeholder || '').toLowerCase().trim();
var v = null;
if (el.type === 'email') { v = 'email'; }
else if (el.type === 'tel' || (/phone|هاتف|جوال/.test(l) && !/mail|بريد/.test(l))) { v = 'tel'; }
else if (/first_name/.test(n)) { v = 'given-name'; }
else if (/last_name/.test(n)) { v = 'family-name'; }
else if (el.type === 'text' && /^(name|full name|الاسم|الإسم)\b/.test(l)) { v = 'name'; }
else if (el.type === 'url') { v = 'url'; }
if (v) { el.setAttribute('autocomplete', v); }
}/* 3. Language switcher (WCAG 2.4.4, 3.1.2): name the target language in that language */
var sw = document.querySelectorAll('a.lang-toggle');
for (var s = 0; s < sw.length; s++) {
var toAr = /\/ar(\/|$)/.test(sw[s].getAttribute('href') || '');
var name = toAr ? 'العربية' : 'English';
sw[s].setAttribute('aria-label', name);
sw[s].setAttribute('title', name);
sw[s].setAttribute('lang', toAr ? 'ar' : 'en');
sw[s].setAttribute('hreflang', toAr ? 'ar' : 'en');
var ims = sw[s].querySelectorAll('img');
for (var k = 0; k < ims.length; k++) { ims[k].setAttribute('alt', ''); }
}/* 4. Dark-mode button (WCAG 4.1.2): clear name, behaves as a toggle button that reports on/off */
var skins = document.querySelectorAll('a.change-skin');
function isDark() { return document.documentElement.classList.contains('dark-skin'); }
function syncSkin() { for (var q = 0; q < skins.length; q++) { skins[q].setAttribute('aria-pressed', isDark() ? 'true' : 'false'); } }
for (var d = 0; d < skins.length; d++) {
skins[d].setAttribute('role', 'button');
skins[d].setAttribute('aria-label', T.dark);
skins[d].setAttribute('title', T.dark);
skins[d].addEventListener('click', function () { setTimeout(syncSkin, 300); });
skins[d].addEventListener('keydown', function (e) { if (e.key === ' ') { e.preventDefault(); this.click(); } });
}
syncSkin();/* 5. Mobile menu (WCAG 4.1.2, 2.4.3): report open/closed, move focus in on open and back on close */
var btn = document.getElementById('mobile-menu-icon');
var panel = document.querySelector('.side-aside');
if (btn && panel) {
btn.setAttribute('role', 'button');
btn.setAttribute('aria-expanded', 'false');
if (!panel.id) { panel.id = 'aj-mobile-menu'; }
btn.setAttribute('aria-controls', panel.id);
var check = function (moveFocus) {
setTimeout(function () {
var open = visible(panel);
btn.setAttribute('aria-expanded', open ? 'true' : 'false');
if (open && moveFocus) {
var first = panel.querySelector('a[href]:not(.close-side-aside), button');
if (first) { first.focus(); }
}
if (!open && moveFocus === 'back') { btn.focus(); }
}, 450);
};
btn.addEventListener('click', function () { check(true); });
var closers = panel.querySelectorAll('.close-side-aside');
for (var c = 0; c < closers.length; c++) { closers[c].addEventListener('click', function () { check('back'); }); }
document.addEventListener('keydown', function (e) {
if (e.key === 'Escape' && btn.getAttribute('aria-expanded') === 'true') {
setTimeout(function () {
/* the theme closes the menu on Escape in English but not in Arabic */
var x = panel.querySelector('.close-side-aside');
if (visible(panel) && x) { x.click(); }
check('back');
}, 150);
}
});
}/* 6. Heading levels (WCAG 1.3.1): no jumps for screen readers; looks unchanged */
var hs = document.querySelectorAll('h1, h2, h3, h4, h5, h6');
var prev = 0, hasH1 = !!document.querySelector('h1');
for (var h = 0; h < hs.length; h++) {
if (!visible(hs[h]) && !hs[h].closest('.side-aside')) { continue; }
var lvl = parseInt(hs[h].tagName.charAt(1), 10);
var eff = lvl;
if (!hasH1 && prev === 0) { eff = 1; }
else if (prev && lvl > prev + 1) { eff = prev + 1; }
if (eff !== lvl) { hs[h].setAttribute('aria-level', String(eff)); }
prev = eff;
}/* 7. Author photos: describe a linked photo by the author's name (it is the link's name); otherwise decorative */
var boxes = document.querySelectorAll('.about-author, .author-box, .m-a-box, .molongui-author-box');
for (var b = 0; b < boxes.length; b++) {
var pics = boxes[b].querySelectorAll('img');
for (var p = 0; p < pics.length; p++) {
var lk = pics[p].closest('a[href]');
var who = '';
if (lk) {
var byline = document.querySelector('a.author-name[href="' + lk.getAttribute('href') + '"]');
var strong = boxes[b].querySelector('.m-a-box-bio strong, [itemprop="name"]');
who = ((byline && byline.textContent) || (strong && strong.textContent) || '').trim();
}
if (lk && !who) { continue; } /* name not found: keep the existing description so the link keeps a name */
pics[p].setAttribute('alt', who);
}
}/* 9. "Opens in a new tab" for screen-reader users (W3C technique G201) */
var blanks = document.querySelectorAll('a[target="_blank"]');
for (var t = 0; t < blanks.length; t++) {
if (blanks[t].querySelector('.aj-newtab')) { continue; }
var sr = document.createElement('span');
sr.className = 'screen-reader-text aj-newtab';
sr.textContent = T.newTab;
blanks[t].appendChild(sr);
if (blanks[t].hasAttribute('aria-label')) { blanks[t].setAttribute('aria-label', blanks[t].getAttribute('aria-label') + T.newTab); }
}
}/* 8. Form errors (WCAG 3.3.1): link each error message to its field when it appears */
function linkErrors(root) {
var errs = (root || document).querySelectorAll('.ff-el-group .error, .ff-el-group .text-danger');
for (var e = 0; e < errs.length; e++) {
var grp = errs[e].closest('.ff-el-group');
var field = grp ? grp.querySelector('input:not([type=hidden]), select, textarea') : null;
if (!field) { continue; }
if (!errs[e].id) { errs[e].id = 'aj-err-' + Math.random().toString(36).slice(2, 9); }
var ids = (field.getAttribute('aria-describedby') || '').split(' ').filter(Boolean);
if (ids.indexOf(errs[e].id) === -1) { ids.push(errs[e].id); field.setAttribute('aria-describedby', ids.join(' ')); }
}
}
function watchForms() {
var forms = document.querySelectorAll('form.frm-fluent-form');
if (!window.MutationObserver) { return; }
for (var f = 0; f < forms.length; f++) {
new MutationObserver(function () { linkErrors(); }).observe(forms[f], { childList: true, subtree: true });
}
}function start() { run(); watchForms(); }
if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', start); } else { start(); }
})();
/* Aljaweea newsletter form (form 10): on Arabic pages, pre-select the Arabic edition.
2 Nov 2026 (Claude, runbook 8.82). Decision D-05 asks for the page language to be pre-selected through
the WPML translation of the field's default value; WPML does not offer that value for translation,
so this is the flagged fallback. The stored values stay "English" / "العربية" for the FluentCRM tag routing.
Rollback: set this snippet to Draft (the Arabic page then pre-selects English). */
(function () {
function run() {
if (!/^ar/i.test(document.documentElement.lang || '')) { return; }
var radios = document.querySelectorAll('form.fluent_form_10 input[type="radio"][name="dropdown"]');
for (var i = 0; i < radios.length; i++) {
if (radios[i].value === 'العربية') { radios[i].checked = true; radios[i].dispatchEvent(new Event('change', { bubbles: true })); }
}
}
/* Runs whether or not the page has finished loading (Breeze may delay scripts). */
if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); }
})();
/* Aljaweea forms: let Fluent Forms show its own error messages.
2 Nov 2026 (Claude, runbook 8.86; finding V-1 of the 8.85 test). Without this, the browser's own email check
stops the form when an address has no "@" and shows the browser's pop-up in the browser's language (English on
Arabic pages for most visitors), so our message from the forms standard (1.4) never appears.
"novalidate" switches off only the browser's own check: Fluent Forms still checks every field in the browser
and again on the server, so a badly formed address is still refused - now with our wording, in the page language.
Rollback: set this snippet to Draft. */
(function () {
function run() {
var forms = document.querySelectorAll('form.frm-fluent-form');
for (var i = 0; i < forms.length; i++) { forms[i].setAttribute('novalidate', 'novalidate'); }
}
/* Runs whether or not the page has finished loading (Breeze may delay scripts). */
if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); }
})();
ai_front = {"insertion_before":"BEFORE","insertion_after":"AFTER","insertion_prepend":"PREPEND CONTENT","insertion_append":"APPEND CONTENT","insertion_replace_content":"REPLACE CONTENT","insertion_replace_element":"REPLACE ELEMENT","visible":"VISIBLE","hidden":"HIDDEN","fallback":"FALLBACK","automatically_placed":"Automatically placed by AdSense Auto ads code","cancel":"Cancel","use":"Use","add":"Add","parent":"Parent","cancel_element_selection":"Cancel element selection","select_parent_element":"Select parent element","css_selector":"CSS selector","use_current_selector":"Use current selector","element":"ELEMENT","path":"PATH","selector":"SELECTOR"};