document.addEventListener("DOMContentLoaded", function() { console.log("✅ Stream.js Loaded - تسجيل الأحداث"); function registerEvents() { var editButton = document.getElementById("edit_file_name"); var resetButton = document.getElementById("reset_settings"); if (editButton) { editButton.addEventListener("click", function() { console.log("✅ تم الضغط على زر 'إنشاء ملف' بنجاح!"); }); } else { console.error(" خطأ: لم يتم العثر على زر 'إنشاء ملف'! سيتم إعادة الماولة..."); } if (resetButton) { resetButton.addEventListener("click", function() { console.log("✅ تم الغط على زر 'إعادة ضبط' بنجاح!"); }); } else { console.error("❌ خطأ: ل يتم العثور على ز 'إعادة ضبط'! سيتم إعادة المحاولة..."); } } // تأجيل التسجيل حتى يت تحميل جميع العناصر setTimeout(registerEvents, 1500); }); document.addEventListener("DOMContentLoaded", function() { console.log("🔍 البحث عن عناصر التبديل..."); var toggleSwitch = document.getElementById("stream_settings_status"); var settingsContent = document.getElementById("settings_content"); console.log("🔹 stream_settings_status:", toggleSwitch); console.log("🔹 settings_content:", settingsContent); if (!toggleSwitch) { console.error("❌ لم يتم العثور على زر التديل!"); return; } if (!settingsContent) { console.warn("⚠️ لم يتم العثور على settings_content! قد يكون غير مضاف في الـ HTML."); return; } // حديث الحالة عند تحميل الصفحة settingsContent.style.display = toggleSwitch.checked ? "block" : "none"; toggleSwitch.addEventListener("change", function() { var status = toggleSwitch.checked ? "enabled" : "disabled"; settingsContent.style.display = toggleSwitch.checked ? "block" : "none"; console.log("✅ تم تغيير حاة الحماية إلى:", status); var formData = new FormData(); formData.append("action", "save_stream_status"); formData.append("status", status); fetch(ajaxurl, { method: "POST", body: formData }) .then(response => response.json()) .then(data => { if (data.success) { console.log(" تم حفظ حالة الحمية بنجاح في قاعدة البيانات!"); } else { console.error("❌ فشل ف حفظ حالة الحماية!"); } }); }); }); document.addEventListener("DOMContentLoaded", function() { console.log("✅ تم تحميل DOM بالكامل - جاري تسجيل اأحداث..."); var editButton = document.getElementById("edit_file_name"); var resetButton = document.getElementById("reset_settings"); var saveButton = document.getElementById("save_file_name"); var confirmResetButton = document.getElementById("confirm_reset"); var cancelResetButton = document.getElementById("cancel_reset"); var cancelEditButton = document.getElementById("cancel_edit"); // ✅ زر إغلاق النافذة المنبثقة var resetMessage = document.getElementById("resetMessage"); var fileNameField = document.getElementById("stream_file_name"); var loadingIndicator = document.getElementById("loadingIndicator"); if (editButton) { editButton.addEventListener("click", function() { document.getElementById("editFileModal").style.display = "block"; }); } if (cancelEditButton) { cancelEditButton.addEventListener("click", function() { document.getElementById("editFileModal").style.display = "none"; console.log("❌ تم إغلاق النافذة لمنبثقة."); }); } if (resetButton) { resetButton.addEventListener("click", function() { document.getElementById("resetConfirmModal").style.display = "block"; }); } if (cancelResetButton) { cancelResetButton.addEventListener("click", function() { document.getElementById("resetConfirmModal").style.display = "none"; console.log("❌ تم إلغاء إعادة الضبط."); }); } if (saveButton) { saveButton.addEventListener("click", function() { var newFileName = document.getElementById("new_file_name").value.trim(); var oldFileName = fileNameField.value.trim(); if (newFileName === "" || !newFileName.endsWith(".php")) { alert("⚠️ يجب إدخال اسم ملف يحتوي على .php!"); return; } var confirmationMessage = oldFileName === "" ? "⚠ هل أنت متأكد من إنشاء ملف جديد باس " + newFileName + "؟" : "⚠️ هل أنت متأكد من حذف المل الحالي " + oldFileName + " وإنشاء ملف جديد باسم " + newFileName + "؟"; if (!confirm(confirmationMessage)) return; console.log(" تم تأكيد الحفظ، جاري تنفيذ العملية..."); document.getElementById("editFileModal").style.display = "none"; // إظهار التحميل وتعطيل الزر loadingIndicator.style.display = "block"; saveButton.disabled = true; var formData = new FormData(); formData.append("action", "update_file_name"); formData.append("file_name", newFileName); fetch(stream_ajax.ajaxurl, { method: "POST", body: formData }) .then(response => response.json()) .then(data => { console.log("📡 Server Response:", data); // ✅ عرض استجابة السيرفر في الكونسول loadingIndicator.style.display = "none"; // إخفاء التحميل saveButton.disabled = false; if (data.success) { console.log("✅ تم إنشاء الملف بنجاح!"); fileNameField.value = newFileName; editButton.innerText = "تغيير اسم الملف"; // ✅ تحديث الزر تلقائيًا } else { console.error("❌ حدث خطأ أثناء إنشاء الملف!"); alert("❌ حدث خطأ أثناء إنشاء الملف."); } }) .catch(error => console.error("❌ Fetch Error:", error)); }); } if (confirmResetButton) { confirmResetButton.addEventListener("click", function() { var toggleSwitch = document.getElementById("stream_settings_status"); var settingsContent = document.getElementById("settings_content"); var confirmation = confirm("⚠️ هل أنت متأكد من إادة ضبط الإعدادا؟ هذا الإجراء لا مكن التراجع عنه!"); if (!confirmation) return; console.log("⏳ جاري إعادة البط..."); confirmResetButton.disabled = true; resetMessage.innerHTML = ' برجاء الانتظر، جاري إعادة ضبط الإعدادات...'; loadingIndicator.style.display = "block"; setTimeout(function() { var formData = new FormData(); formData.append("action", "reset_stream_settings"); fetch(ajaxurl, { method: "POST", body: formData }) .then(response => response.json()) .then(data => { loadingIndicator.style.display = "none"; confirmResetButton.disabled = false; if (data.success) { console.log("✅ تمت إعادة ضبط جميع الإعدادات بنجاح!"); resetMessage.innerHTML = "✅ تمت إعادة ضبط جميع الإعدادات بنجاح!"; toggleSwitch.checked = false; settingsContent.style.display = "none"; fileNameField.value = ""; editButton.innerText = "إنشاء ملف"; // ✅ تحديث الزر بعد إعدة الضبط setTimeout(function() { document.getElementById("resetConfirmModal").style.display = "none"; }, 4000); } else { console.error("❌ فشل في إعادة ضبط لإعدادات!"); resetMessage.innerHTML = "❌ حدث خطأ أثناء إعادة الضبط."; } }); }, 3000); }); } });