
أكد مصدر مسؤول بالشركة المصرية لإدارة وتشغيل مترو الأنفاق، انتظام حركة القطارات بالخط الأول (حلوان – المرج)، مشيرًا إلى أنها تعمل بصورة طبيعية وفقًا لمعدلات التقاطر المقررة، وذلك في أعقاب تداول أنباء عن وجود تكدس وزحام بمحطة سعد زغلول.
وأوضح المصدر أن الكثافات التي تشهدها بعض المحطات ترجع إلى زيادة إقبال الركاب على استخدام الخط الأول، باعتباره وسيلة نقل تتيح اختصار زمن الرحلات مقارنة بـ وسائل النقل الأخرى، وهو ما يؤدي إلى ارتفاع أعداد المستخدمين، خاصة خلال فترات الذروة.
وأضاف أن إدارة المترو تعمل على تشغيل قطارات إضافية، بما يسهم في تقليل زمن التقاطر بين القطارات، والحد من الكثافات داخل المحطات، وتحسين مستوى الخدمة المقدمة للمواطنين.
وفي سياق متصل، أشار المصدر إلى أن الشركة المصرية لإدارة وتشغيل مترو الأنفاق نفذت أعمال تطوير بالخط الأول، شملت تحديث منظومة الإشارات وتطوير القطارات، بهدف رفع كفاءة التشغيل وتحسين جودة الخدمة المقدمة لجمهور الركاب.
function replaceOembeds() { var allEmbeds = document.getElementsByTagName("OEMBED");
while (allEmbeds.length != 0) { replaceOembedWithHtml(allEmbeds[0], extractLinkFromOembed(allEmbeds[0])); allEmbeds = document.getElementsByTagName("OEMBED"); }
runYoutubeLazyLoad(); loadfbApi(); }
function replaceOembedWithHtml(element, sourceData) { if (sourceData.source.toLowerCase() === "youtube") { var html="
';
replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "instagram") { var html="
';
replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "twitter") { var html="
'; replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "facebook") { var html="
' replaceElementWithHtml(element, html); } else { replaceElementWithHtml(element, ""); }
}
function extractLinkFromOembed(element) { return getUrlSource(element.getAttribute("url")); }
function getUrlSource(url) { var ytRegex = /http(?:s?):\/\/(?:www\.)?youtu(?:be\.com\/watch\?v=|\.be\/)([\w\-\_]*)(&(amp;)?[\w\?=]*)?/; var instaRegex = /(https?:\/\/www\.)?instagram\.com(\/p\/(\w+)\/?)/; var twitterRegex = /twitter\.com\/.*\/status(?:es)?\/([^\/\?]+)/; var fbRegex = /^https?:\/\/www\.facebook\.com.*\/(video(s)?|watch|story|posts)(\.php?|\/).+$/;
if (ytRegex.test(url)) { return { source: "Youtube", url: url, id: ytRegex.exec(url)[1] }; }
if (instaRegex.test(url)) { return { source: "Instagram", url: url, id: instaRegex.exec(url)[3] }; }
if (twitterRegex.test(url)) { return { source: "Twitter", url: url, id: twitterRegex.exec(url)[1] }; }
if (fbRegex.test(url)) { return { source: "Facebook", url: url, id: fbRegex.exec(url)[1] };
}
return { source: "Unknown", url: url, id: "" }; }
function replaceElementWithHtml(element, html) { var str = html; var Obj = element; //any element to be fully replaced if (Obj.outerHTML) { //if outerHTML is supported Obj.outerHTML = str; ///it's simple replacement of whole element with contents of str var } else { //if outerHTML is not supported, there is a weird but crossbrowsered trick var tmpObj = document.createElement("div"); tmpObj.innerHTML = ''; ObjParent = Obj.parentNode; //Okey, element should be parented ObjParent.replaceChild(tmpObj, Obj); //here we placing our temporary data instead of our target, so we can find it then and replace it into whatever we want to replace to ObjParent.innerHTML = ObjParent.innerHTML.replace('
', str); } } function loadfbApi() { var js = document.createElement('script'); js.src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.2"; document.body.appendChild(js); } function runYoutubeLazyLoad() { /// youtube lazyload var youtube = document.querySelectorAll(".youtube");
for (var i = 0; i < youtube.length; i++) { var source = "https://img.youtube.com/vi/" + youtube[i].dataset.embed + "/0.jpg"; var image = new Image(); image.src = "https://www.vetogate.com/themes/veto/assets/images/no.jpg"; image.classList.add('lazyload'); image.setAttribute("data-src", source); image.setAttribute("alt", "youtube"); image.addEventListener("load", function () { youtube[i].appendChild(image); }(i)); youtube[i].addEventListener("click", function () { var iframe = document.createElement("iframe"); iframe.setAttribute("frameborder", "0"); iframe.setAttribute("allowfullscreen", ""); iframe.setAttribute("src", "https://www.youtube.com/embed/" + this.dataset .embed + "?rel=0&showinfo=0&autoplay=1"); this.innerHTML = ""; this.appendChild(iframe); }); }; }

