import React, { useState, useEffect } from 'react'; import { Play, Pause, ChevronRight, Activity, Heart, Award, Phone, Calendar, Clock, MapPin, X, CheckCircle, Loader2, Lock, User, MessageSquare } from 'lucide-react'; import { initializeApp } from 'firebase/app'; import { getFirestore, collection, addDoc, getDocs } from 'firebase/firestore'; import { getAuth, signInAnonymously, onAuthStateChanged, signInWithCustomToken } from 'firebase/auth'; // --- Firebase Configuration --- const firebaseConfig = JSON.parse(__firebase_config); const app = initializeApp(firebaseConfig); const auth = getAuth(app); const db = getFirestore(app); const appId = typeof __app_id !== 'undefined' ? __app_id : 'default-app-id'; const MaysoonAd = () => { const [activeVideo, setActiveVideo] = useState(null); const [isPlaying, setIsPlaying] = useState(false); const [isModalOpen, setIsModalOpen] = useState(false); const [user, setUser] = useState(null); // Admin State const ADMIN_PASSWORD = 'admin123'; // كلمة المرور الخاصة بلوحة الإدارة const [showAdmin, setShowAdmin] = useState(false); const [isAuthenticated, setIsAuthenticated] = useState(false); const [passwordInput, setPasswordInput] = useState(''); const [loginError, setLoginError] = useState(false); const [appointments, setAppointments] = useState([]); const [loadingAdmin, setLoadingAdmin] = useState(false); // Form State const [formData, setFormData] = useState({ name: '', phone: '', message: '' }); const [formStatus, setFormStatus] = useState('idle'); // --- Authentication Setup --- useEffect(() => { const initAuth = async () => { if (typeof __initial_auth_token !== 'undefined' && __initial_auth_token) { await signInWithCustomToken(auth, __initial_auth_token); } else { await signInAnonymously(auth); } }; initAuth(); const unsubscribe = onAuthStateChanged(auth, setUser); return () => unsubscribe(); }, []); // --- Fetch Appointments (Admin) --- const fetchAppointments = async () => { if (!user) return; setLoadingAdmin(true); try { const querySnapshot = await getDocs(collection(db, 'artifacts', appId, 'public', 'data', 'appointments')); const data = querySnapshot.docs.map(doc => ({ id: doc.id, ...doc.data() })); // Sort by date (newest first) in memory data.sort((a, b) => b.createdAt?.seconds - a.createdAt?.seconds); setAppointments(data); } catch (error) { console.error("Error fetching appointments:", error); } finally { setLoadingAdmin(false); } }; useEffect(() => { // جلب البيانات فقط عند عرض لوحة الإدارة ونجاح المصادقة if (showAdmin && isAuthenticated) { fetchAppointments(); } }, [showAdmin, isAuthenticated, user]); const handleLogin = (e) => { e.preventDefault(); if (passwordInput === ADMIN_PASSWORD) { setIsAuthenticated(true); setLoginError(false); setPasswordInput(''); } else { setLoginError(true); setPasswordInput(''); setTimeout(() => setLoginError(false), 2000); } }; const videos = [ { id: 1, src: "WhatsApp Video 2025-12-14 at 16.14.47 (1).mp4", title: "تنمية المهارات الحركية", desc: "جلسات متخصصة لتعزيز التوافق العضلي العصبي." }, { id: 2, src: "WhatsApp Video 2025-12-14 at 17.55.51 (1).mp4", title: "الاستقلالية في الحياة اليومية", desc: "تدريب الأطفال على مهارات العناية الذاتية." }, { id: 3, src: "WhatsApp Video 2025-12-14 at 17.55.51.mp4", title: "التكامل الحسي", desc: "بيئة مجهزة بأحدث الوسائل العلاجية." }, { id: 4, src: "WhatsApp Video 2025-12-14 at 16.45.23.mp4", title: "تطوير المهارات الدقيقة", desc: "تمارين لتقوية عضلات اليد والأصابع." }, { id: 5, src: "WhatsApp Video 2025-12-14 at 16.14.46.mp4", title: "جلسات فردية مكثفة", desc: "خطة علاجية مخصصة لكل حالة." }, { id: 6, src: "WhatsApp Video 2025-12-14 at 16.14.47.mp4", title: "بيئة تفاعلية آمنة", desc: "نحرص على توفير جو من المرح والتعلم." }, ]; const logoSrc = "logo (1).png"; const handleInputChange = (e) => { const { name, value } = e.target; setFormData(prev => ({ ...prev, [name]: value })); }; const handleSubmit = async (e) => { e.preventDefault(); if (!user) return; setFormStatus('submitting'); try { await addDoc(collection(db, 'artifacts', appId, 'public', 'data', 'appointments'), { ...formData, createdAt: new Date(), userId: user.uid }); setFormStatus('success'); setTimeout(() => { setIsModalOpen(false); setFormStatus('idle'); setFormData({ name: '', phone: '', message: '' }); }, 3000); } catch (error) { console.error("Error adding document: ", error); setFormStatus('error'); } }; // Helper to format date const formatDate = (timestamp) => { if (!timestamp) return ''; return new Date(timestamp.seconds * 1000).toLocaleString('ar-SA'); }; // -------------------------------------------------- // Admin Login Screen (يُعرض عندما showAdmin صحيح و isAuthenticated خاطئ) // -------------------------------------------------- if (showAdmin && !isAuthenticated) { return (

تسجيل الدخول للإدارة

أدخل كلمة المرور للوصول إلى بيانات الحجوزات.

setPasswordInput(e.target.value)} className={`w-full px-4 py-3 rounded-lg border focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition ${loginError ? 'border-red-500' : 'border-slate-300'}`} placeholder="********" required /> {loginError && (

كلمة المرور غير صحيحة.

)}
); } // -------------------------------------------------- // Admin Dashboard (يُعرض عندما showAdmin و isAuthenticated صحيحين) // -------------------------------------------------- if (showAdmin && isAuthenticated) { return (

لوحة تحكم الحجوزات

طلبات المواعيد الواردة

{loadingAdmin ? (
جاري تحميل البيانات...
) : appointments.length === 0 ? (
لا توجد طلبات حجز حتى الآن.
) : (
{appointments.map((app) => ( ))}
الاسم رقم الهاتف الملاحظات وقت الطلب
{app.name}
{app.phone} {app.message ? (
{app.message}
) : لا توجد ملاحظات}
{formatDate(app.createdAt)}
)}
); } // -------------------------------------------------- // Main Website View (يُعرض بشكل افتراضي) // -------------------------------------------------- return (
{/* Navbar */} {/* Hero Section */}
أفضل رعاية صحية لأحبائكم

نحن نبني القدرات
لنصنع المستقبل

في مجمع ميسون الطبي، نستخدم أحدث تقنيات العلاج الوظيفي لمساعدة الأطفال والكبار على استعادة استقلاليتهم وممارسة حياتهم بكل ثقة.

جلسات تأهيلية متقدمة

{/* Services Strip */}

كادر متخصص

فريق من المعالجين ذوي الخبرة العالية في التعامل مع مختلف الحالات.

برامج فردية

خطط علاجية مصممة خصيصاً لتناسب احتياجات كل مراجع بدقة.

بيئة داعمة

تجهيزات حديثة وأجواء محفزة تضمن راحة المراجع وتقدمه.

{/* Video Gallery */}

قصص نجاح ولحظات علاجية

جولة مرئية داخل عياداتنا توثق جانباً من الجلسات العلاجية والتمارين التي نقدمها لتطوير المهارات.

{videos.map((video, index) => (
جلسة علاجية

{video.title}

{video.desc}

))}
{/* Call to Action */}

جاهزون لبدء الرحلة معاً؟

احجز استشارتك اليوم في مجمع ميسون الطبي، ودعنا نساعدك أو نساعد طفلك في الوصول إلى أقصى إمكاناته.

{/* Footer */} {/* Booking Modal */} {isModalOpen && (

حجز موعد استشارة

{formStatus === 'success' ? (

تم استلام طلبك بنجاح!

شكراً لتواصلك معنا. سيقوم فريقنا بالاتصال بك قريباً لتأكيد الموعد.

) : (
{formStatus === 'error' && (

حدث خطأ أثناء الإرسال. يرجى المحاولة مرة أخرى.

)}
)}
نحترم خصوصيتك. بياناتك آمنة ولن يتم مشاركتها.
)}
); }; export default MaysoonAd;