/* 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(); });
}
});
ألم يحلم الجميع بأن يصبحوا طيارين في مرحلة ما من حياتهم؟ لقد كان ذلك حلمي بالتأكيد، ففي المرحلة الثانوية، وقعت عيناي على ملصق لبرنامج تدريب الطيارين برعاية وتمويل من الخطوط الجوية البريطانية، ومنذ ذلك الحين أمضيت جزءاً كبيراً من شبابي في ملاحقة هذا الحلم، والبحث فيما يتطلبه الأمر فعلياً للوصول إلى مقعد مساعد الطيار.
واليوم، تتقاطع تلك الأحلام لدى الشباب في منطقة الشرق الأوسط وشمال أفريقيا مع فرص استثنائية. فقد أصبح قطاع الطيران المحرك الرئيسي لتنوع اقتصادات المنطقة في مرحلة ما بعد النفط. غير أن تأهيل الكفاءات البشرية لقيادة هذه الأساطيل العملاقة القادمة يمثل تحدياً لوجستياً هائلاً.
كواليس الطيران في الشرق الأوسط وشمال أفريقيا: كيف يصنع طيارو المستقبل؟
يفتتح هذا المقال سلسلة من أربعة أجزاء تسلط الضوء على الواقع الفعلي لمسارات العمل في قطاع الطيران بالمنطقة. وعلى مدى الأسابيع المقبلة، سننتقل من قمرة القيادة إلى برج المراقبة، ثم إلى حظيرة الطائرات، وصولاً إلى المكاتب التنفيذية في المطارات، لنفكك بالتفصيل كيفية إعداد وتأهيل كوادر الطيران الحديثة.
الى قمرة القيادة: ما بعد رخصة الطيار الخاص
نبدأ من قمرة القيادة. انسَ فكرة قضاء عطلات نهاية الأسبوع في تسجيل ساعات طيران بصورة عابرة في مدرج محلي للحصول على رخصة الطيار الخاص (PPL)، كما فعلتُ أنا. فإذا كنت ترغب في اتخاذ الطيران مهنةً لك، فعليك قضاء ساعات كثيرة في التدريب على الطيران لتكون مؤهلا لقيادة جهاز الطيران الآلي (IR)، ثم الحصول إلى رخصة الطيار التجاري (CPL).
هكذا يبدأ طريق الطيارين في الشرق الأوسط وشمال أفريقيا
يكاد الطيران الخاص الترفيهي لا يكون موجوداً هنا في دول مجلس التعاون الخليجي. فإذا كنت تتعلم الطيران في المنطقة، فأنت تتعلمه في الغالب بهدف قيادة طائرات الخطوط الجوية التجارية. وهناك مساران رئيسيان لتدريب أطقم القيادة: رخصة طيار النقل الجوي المتكاملة (ATPL)، ورخصة الطيار متعدد الطاقم (MPL).
وينقل مسار رخصة طيار النقل الجوي المتكاملة (ATPL) المتدرب من الصفر إلى مقعد مساعد الطيار في طائرة تجارية خلال فترة تتراوح بين 18 و24 شهراً. ويتطلب هذا المسار من المتدرب إتقان 14 مادة نظرية، من بينها قانون الطيران، وأداء الطائرات، والملاحة العامة، والأرصاد الجوية، قبل الانتقال إلى مراحل التدريب العملي على الطائرات أحادية وثنائية المحركات.
في المقابل، وخلال الإطار الزمني نفسه، يقلل مسار رخصة الطيار متعدد الطاقم (MPL) من الطيران الانفرادي على الطائرات أحادية المحرك، لصالح التدريب المكثف في بيئات محاكاة مخصصة للعمل ضمن طاقم متعدد. ويجري خلال ذلك التدريب على إجراءات التشغيل القياسية (SOPs) الخاصة بشركة الطيران المعنية، وصولاً إلى الحصول على تصنيف لطراز محدد من الطائرات، عادةً إيرباص أيه 320 (A320 ) أو بوينغ 737، منذ المراحل الأولى من التدريب.
وتعتمد المنطقة بدرجة كبيرة على مسارات تدريب شديدة التنظيم ومتكاملة مع شركات الطيران، فيما تتقدم رخصة الطيار متعدد الطواقم (MPL) بسرعة على المسار التقليدي القائم على المراحل التدريبية المنفصلة. فشركات الطيران لا تريد مجرد شخص قادر على قيادة طائرة أحادية المحرك؛ بل تريد طياراً مؤهلاً لقيادة طائرة من طراز إيرباص أو بوينغ، ومدرباً منذ اليوم الأول وفق إجراءات التشغيل القياسية الخاصة بالشركة.
صورة: أكاديمية طيران الإمارات لتدريب الطيارين. طياران متدربان يتدربان داخل جهاز محاكاة طيران صغير متحرك بالكامل.
إن وضع قدم في هذا المجال ليس بالأمر السهل على الإطلاق، إذ تتسم الاختبارات البدنية والذهنية بالصرامة الشديدة. وعلى الرغم من أن الغالبية العظمى من برامج رعاية الطيارين التي تقدمها شركات الطيران في الشرق الأوسط وشمال أفريقيا تحظى بدعم مالي كبير أو بتمويل كامل، فإن التقدم إليها يتطلب أن تكون مواطناً في الدولة التي تتخذ منها شركة الطيران مقراً لها.
وتقبل أكاديمية الإمارات لتدريب الطيارين، ومقرها دبي، متدربين دوليين على نفقتهم الخاصة إلى جانب المواطنين الإماراتيين المستفيدين من برامج الرعاية. وإلى جانب التفوق الأكاديمي، تفرض الأكاديمية معايير صحية وبدنية صارمة، تشمل ألا يتجاوز مؤشر كتلة الجسم 29، وألا يقل طول المتقدم عن 160 سنتيمتراً، وأن يحصل على درجة 6.0 في اختبار “آيلتس”، وذلك لضمان قدرته على الاستمرار في أداء مهام قمرة القيادة التجارية على المدى الطويل.
وتظل الملكية الأردنية مرتبطة ارتباطاً وثيقاً بأكاديمية الطيران الملكية الأردنية المحلية. إذ تقيّم الشركة باستمرار مرشحين أردنيين مختارين وترعى تدريبهم عبر مراحل متعددة وشديدة التنظيم من إجراءات الاختيار، بما يضمن جودة مسار إعداد الطيارين. كما تستقبل الأكاديمية متدربين دوليين على نفقتهم الخاصة.
قيود المجال الجوي
قد تفترض أن كل دولة ستنشئ تلقائياً مدارس طيران محلية خاصة بها، لكن المجال الجوي مورد محدود. وتقدم الكويت نموذجا واضحاً لهذا العائق التشغيلي.
فعلى خلاف الإمارات والأردن والسعودية، التي تتمتع بمجالات جوية واسعة، تواجه الكويت قيوداً جغرافية وتنظيمية كبيرة. وتفرض الإدارة العامة للطيران المدني (DGCA) قيوداً على مدارس الطيران المحلية، نظراً إلى إعطاء الأولوية في المجال الجوي للاستخدامات العسكرية وحركة الطيران التجاري الكثيفة في مطار الكويت الدولي. وتجعل هذه القيود، إلى جانب محدودية مرافق ومدارج الطيران المدني، تدريب الطيران التجاري داخل البلاد أمراً شبه مستحيل.
حين تنتقل مدارس الطيران الى الخارج
في مثل هذه الحالات، تلجأ شركات الطيران إلى حل عملي يتمثل في نقل التدريب إلى الخارج. فالخطوط الجوية الكويتية وطيران الجزيرة تتجاوز القيود المحلية بالكامل من خلال إسناد برامج تدريب الطيارين متعدد الطاقم (MPL) إلى مراكز أوروبية، مثل أكاديمية فليت ترينينغ أوروبا-خيريز (FTEJerez ) في إسبانيا. كما تستعين الخطوط الجوية الكويتية بشركة إلكترونيات الطيران الكندية (CAE)، التي تدير مراكز عدة حول العالم لتدريب الطيارين للحصول على رخصة الطيار التجاري (CPL).
يخوض المتدربون مرحلة الاختيار الصعبة في بلدانهم، لكنهم يتعلمون الطيران في أوروبا. وهذه الاستراتيجية لا تقتصر على الكويت؛ فقد وقّعت الخطوط الجوية القطرية مؤخراً اتفاقية كبيرة مدتها خمس سنوات مع شركة بي إيه إيه للتدريب BAA Training بهدف تدريب ما يصل إلى 150 متدرباً سنوياً في منشآتها في ليتوانيا وإسبانيا.
ولتأمين أطقمها الجوية المستقبلية، أطلقت شركة طيران الرياض السعودية برنامج ابتعاث ضخم لإعداد مساعدي الطيارين. ومن خلال شراكة مع جامعة إمبري-ريدل للطيران في الولايات المتحدة، ترسل الشركة الناشئة مواطنين سعوديين من كلا الجنسين إلى الخارج للحصول على درجات علمية وتلقي تدريب على الطيران، مع وعدهم بفرص للعمل ضمن أسطولها القادم من طائرات بوينغ 787.
ولا تقتصر استراتيجية نقل التدريب إلى الخارج على ذلك، بل تمتد أيضاً إلى منطقة بلاد الشام. فطيران الشرق الأوسط (MEA)، الناقلة الوطنية للبنان، يوفد بانتظام مواطنيه إلى برامج التدريب الأساسي على الطيران في المراكز الدولية نفسها، ومنها أكاديمية فليت ترينينغ أوروبا-خيريز، لينتقل المتدربون من مرحلة الصفر إلى الحصول على الرخصة التجارية.
ومن المنظورين اللوجستي والاقتصادي، تبدو هذه العلاقة التكاملية مع أكاديميات التدريب الأوروبية والأمريكية منطقية تماماً. فالاستعانة بمصادر خارجية تتيح توفير مساعدين للطيارين مؤهلين وجاهزين للعمل فوراً، من دون تحمل الأعباء اللوجستية التي ينطوي عليها تنفيذ التدريب محلياً.
خريطة توضح مسارات تدريب الطيارين ومواقع التدريب الدولية التي تستخدمها مختلف شركات الطيران في منطقة الشرق الأوسط وشمال إفريقيا. رسم بياني: الجوية، المصادر: الإدارة العامة للطيران المدني في الكويت؛ FTEJerez؛ CAE؛ أكاديمية BAA للتدريب؛ طيران الرياض؛ جامعة إمبري ريدل للطيران؛ طيران الشرق الأوسط؛ معهد الطيران (The Aviator Institute)؛ أكاديمية إيرباص للطيران.
استثمارات إيرباص وتدريب الطيارين في المغرب العربي
في تونس، تستعين شركة نوفلار بمعهد آفياتور للطيران The Aviator Institute التونسي، الذي كان يُعرف سابقاً باسم أكاديمية سايف فلايت Safe Flight Academy وتأسس العام 2010، لنقل المتدربين من مراحل التعليم الأساسي إلى الحصول على تصنيف لطرازات الطائرات النفاثة. وإدراكاً للإمكانيات الكبيرة التي يتمتع بها سوق الطيران في شمال أفريقيا، جرى ضخ استثمار أوروبي مباشر، مع بدء أكاديمية إيرباص للطيران تشغيل منشآتها في موقع المنستير، لتوفير برامج متخصصة لإعداد طياري شركات الطيران من مرحلة الصفر.
التدريب على النفقة الخاصة: طريق أطول وكلفة أعلى الى قمرة القيادة
بخصوص الطلاب المستقلين الذين لا يحالفهم الحظ في الحصول على برامج تدريب الطيارين التي تقدمها شركات الطيران، وهي برامج تحظى بإقبال كبير، فطريقهم أكثر تعقيداً ويعتمد إلى حد كبير على التمويل الشخصي. وتظل مراكز إقليمية مثل الأردن والإمارات العربية المتحدة، التي تجمع بين معايير التدريب الصارمة المعتمدة من الوكالة الأوروبية لسلامة الطيران (اياسا) وبين توافر مجال جوي أكثر ملاءمة، وجهات أساسية للمرشحين الذين يسلكون مسار رخصة طيار النقل الجوي المتكاملة (ATPL) المتاح في السوق المفتوحة.
وتختلف تكاليف التدريب بدرجة كبيرة بحسب الموقع، والأكاديمية، ونوع البرنامج، وتكاليف السكن والمعيشة المشمولة ضمن البرنامج. وكما هو الحال في دورات القيادة واختباراتها، فإن عدم بلوغ مستوى الكفاءة المطلوب خلال الساعات المحددة في البرنامج، أو الرسوب في الاختبارات، يترتب عليه تكاليف إضافية. وحتى أفضل المرشحين قد يجدون صعوبة في إتقان جميع الوحدات من المحاولة الأولى، ما يعني أن الطريق إلى قمرة القيادة قد يتطلب وقتاً وتمويلاً أكبر بكثير مما توحي به التكلفة الأولية للبرنامج.
قبل الإقلاع: الاختبار الأصعب لأطقم الطيران
يخضع الرجال والنساء الذين يجلسون خلف مقود أساطيلنا الجوية الإقليمية لسلسلة شاقة من اختبارات القياس النفسي، والفحوص الطبية الصارمة، والاختبارات الفنية المتعددة، وسنوات من التدريب المكثف على أجهزة المحاكاة، قبل أن ينقلوا راكباً يدفع ثمن تذكرته للمرة الأولى. ومع توسع شركات الطيران في شبكات وجهاتها بوتيرة متسارعة، يصبح فهم كيفية الوصول إلى مسار العمل ضمن أطقم الطيران، وكذلك إدراك حقيقة التدريب الشاق الذي يسبق هذه الوظيفة، أمراً أساسياً للجيل المقبل من الطيارين في منطقتنا.
من قمرة القيادة الى برج المراقبة
في الأسبوع المقبل، نغادر قمرة القيادة لنتجه إلى أبراج مراقبة الحركة الجوية، حيث يعمل أفرادٌ على مدار الساعة لتوجيه الطائرات بأمان في الأجواء وعلى مدارج المطارات، وسط ضغوط عالية وتوطين متسارع للكوادر.
ابقوا على اطلاع دائم. احصلوا على أحدث أخبار الطيران والفضاء في العالم العربي لحظة نشرها عبر واتساب وتيليغرام، أو اشتركوا بنشرتنا البريدية لتصلكم نشرة أسبوعية. كما يمكنكم إضافتنا إلى مصادركم المفضلة لتظهر لكم أخبارنا بشكل أوسع في بحث 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"};