<?php
require_once '../config.php';

// التحقق من تسجيل الدخول
requireLogin();

// التحقق من الصلاحيات
requirePermission('admin');

// معالجة تحديث الإعدادات
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = sanitizeInput($_POST['name']);
    $email = sanitizeInput($_POST['email']);
    $phone = sanitizeInput($_POST['phone']);
    $address = sanitizeInput($_POST['address']);
    $website = sanitizeInput($_POST['website']);
    $description = sanitizeInput($_POST['description']);
    $bankAccount = sanitizeInput($_POST['bank_account']);
    $taxId = sanitizeInput($_POST['tax_id']);
    
    if (empty($name)) {
        setAlert('danger', 'اسم الجمعية مطلوب');
    } else {
        try {
            // التحقق من وجود سجلات
            $checkQuery = "SELECT COUNT(*) as count FROM association_settings";
            $result = fetchOne($checkQuery);
            $count = $result ? $result['count'] : 0;
            
            if ($count > 0) {
                // تحديث السجل الموجود
                $updateQuery = "UPDATE association_settings SET 
                    name = :name, 
                    email = :email, 
                    phone = :phone, 
                    address = :address, 
                    website = :website, 
                    description = :description, 
                    bank_account = :bank_account,
                    tax_id = :tax_id,
                    updated_at = :updated_at
                ";
                
                $params = [
                    ':name' => $name,
                    ':email' => $email,
                    ':phone' => $phone,
                    ':address' => $address,
                    ':website' => $website,
                    ':description' => $description,
                    ':bank_account' => $bankAccount,
                    ':tax_id' => $taxId,
                    ':updated_at' => date('Y-m-d H:i:s')
                ];
                
                $updateQuery .= " WHERE id = (SELECT id FROM association_settings LIMIT 1)";
                update($updateQuery, $params);
            } else {
                // إدراج سجل جديد
                $insertQuery = "INSERT INTO association_settings (
                    name, email, phone, address, website, description, bank_account, tax_id, updated_at
                ) VALUES (
                    :name, :email, :phone, :address, :website, :description, :bank_account, :tax_id, :updated_at
                )";
                
                $params = [
                    ':name' => $name,
                    ':email' => $email,
                    ':phone' => $phone,
                    ':address' => $address,
                    ':website' => $website,
                    ':description' => $description,
                    ':bank_account' => $bankAccount,
                    ':tax_id' => $taxId,
                    ':updated_at' => date('Y-m-d H:i:s')
                ];
                
                insert($insertQuery, $params);
            }
            
            // معالجة تحميل الشعار
            if (isset($_FILES['logo']) && $_FILES['logo']['size'] > 0) {
                $uploadDir = LOGO_PATH;
                
                // التأكد من وجود المجلد
                if (!file_exists($uploadDir)) {
                    mkdir($uploadDir, 0777, true);
                }
                
                $fileName = 'logo_' . time() . '.' . pathinfo($_FILES['logo']['name'], PATHINFO_EXTENSION);
                $targetFile = $uploadDir . '/' . $fileName;
                
                // التحقق من نوع الملف
                $allowedTypes = ['image/jpeg', 'image/png', 'image/gif'];
                if (in_array($_FILES['logo']['type'], $allowedTypes)) {
                    // حذف الشعار القديم إذا وجد
                    $oldLogoQuery = "SELECT logo FROM association_settings WHERE logo IS NOT NULL AND logo != '' LIMIT 1";
                    $oldLogoResult = fetchOne($oldLogoQuery);
                    
                    if ($oldLogoResult && !empty($oldLogoResult['logo'])) {
                        $oldLogo = $uploadDir . '/' . $oldLogoResult['logo'];
                        if (file_exists($oldLogo)) {
                            unlink($oldLogo);
                        }
                    }
                    
                    // نقل الملف إلى المجلد المحدد
                    if (move_uploaded_file($_FILES['logo']['tmp_name'], $targetFile)) {
                        // تحديث مسار الشعار في قاعدة البيانات
                        $logoQuery = "UPDATE association_settings SET logo = :logo";
                        update($logoQuery, [':logo' => $fileName]);
                    }
                } else {
                    setAlert('warning', 'نوع ملف الشعار غير مدعوم. الأنواع المدعومة هي: JPEG، PNG، GIF');
                }
            }
            
            setAlert('success', 'تم تحديث إعدادات الجمعية بنجاح');
        } catch (Exception $e) {
            setAlert('danger', 'حدث خطأ أثناء تحديث الإعدادات: ' . $e->getMessage());
            error_log('Error updating settings: ' . $e->getMessage());
        }
    }
}

// جلب إعدادات الجمعية
$query = "SELECT * FROM association_settings LIMIT 1";
$settings = fetchOne($query);

// عنوان الصفحة
$pageTitle = 'إعدادات الجمعية';

// تضمين ملف الهيدر
include '../includes/header.php';
?>

<div class="d-flex justify-content-between align-items-center mb-4">
    <h1 class="h3 mb-0"><i class="fas fa-building me-2"></i> إعدادات الجمعية</h1>
</div>

<div class="card">
    <div class="card-body">
        <form method="post" enctype="multipart/form-data">
            <!-- بطاقة معلومات الجمعية الأساسية -->
            <div class="card mb-4">
                <div class="card-header bg-primary text-white">
                    <h5 class="mb-0"><i class="fas fa-info-circle me-2"></i> المعلومات الأساسية</h5>
                </div>
                <div class="card-body">
                    <div class="row">
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="name" class="form-label">اسم الجمعية <span class="text-danger">*</span></label>
                                <input type="text" class="form-control" id="name" name="name" value="<?php echo isset($settings['name']) ? htmlspecialchars($settings['name']) : ''; ?>" required>
                            </div>
                        </div>
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="website" class="form-label">الموقع الإلكتروني</label>
                                <input type="url" class="form-control" id="website" name="website" value="<?php echo isset($settings['website']) ? htmlspecialchars($settings['website']) : ''; ?>">
                            </div>
                        </div>
                    </div>
                    
                    <div class="mb-3">
                        <label for="description" class="form-label">وصف الجمعية</label>
                        <textarea class="form-control" id="description" name="description" rows="4"><?php echo isset($settings['description']) ? htmlspecialchars($settings['description']) : ''; ?></textarea>
                    </div>
                    
                    <div class="mb-3">
                        <label for="logo" class="form-label">شعار الجمعية</label>
                        <?php if (isset($settings['logo']) && !empty($settings['logo'])): ?>
                            <div class="mb-2">
                                <img src="<?php echo SITE_URL; ?>/uploads/logo/<?php echo htmlspecialchars($settings['logo']); ?>" alt="شعار الجمعية" class="img-thumbnail" style="max-height: 100px;">
                            </div>
                        <?php endif; ?>
                        <input type="file" class="form-control" id="logo" name="logo" accept="image/jpeg,image/png,image/gif">
                        <small class="form-text text-muted">اترك هذا الحقل فارغًا إذا كنت لا ترغب في تغيير الشعار الحالي. الأنواع المدعومة: JPEG، PNG، GIF.</small>
                    </div>
                </div>
            </div>
            
            <!-- بطاقة معلومات الاتصال -->
            <div class="card mb-4">
                <div class="card-header bg-primary text-white">
                    <h5 class="mb-0"><i class="fas fa-address-card me-2"></i> معلومات الاتصال</h5>
                </div>
                <div class="card-body">
                    <div class="row">
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="email" class="form-label">البريد الإلكتروني</label>
                                <input type="email" class="form-control" id="email" name="email" value="<?php echo isset($settings['email']) ? htmlspecialchars($settings['email']) : ''; ?>">
                            </div>
                        </div>
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="phone" class="form-label">رقم الهاتف</label>
                                <input type="text" class="form-control" id="phone" name="phone" value="<?php echo isset($settings['phone']) ? htmlspecialchars($settings['phone']) : ''; ?>">
                            </div>
                        </div>
                    </div>
                    
                    <div class="mb-3">
                        <label for="address" class="form-label">العنوان</label>
                        <textarea class="form-control" id="address" name="address" rows="2"><?php echo isset($settings['address']) ? htmlspecialchars($settings['address']) : ''; ?></textarea>
                    </div>
                </div>
            </div>
            
            <!-- بطاقة المعلومات المالية -->
            <div class="card mb-4">
                <div class="card-header bg-primary text-white">
                    <h5 class="mb-0"><i class="fas fa-money-check-alt me-2"></i> المعلومات المالية</h5>
                </div>
                <div class="card-body">
                    <div class="row">
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="bank_account" class="form-label">الحساب البنكي</label>
                                <input type="text" class="form-control" id="bank_account" name="bank_account" value="<?php echo isset($settings['bank_account']) ? htmlspecialchars($settings['bank_account']) : ''; ?>">
                            </div>
                        </div>
                        <div class="col-md-6">
                            <div class="mb-3">
                                <label for="tax_id" class="form-label">الرقم الضريبي</label>
                                <input type="text" class="form-control" id="tax_id" name="tax_id" value="<?php echo isset($settings['tax_id']) ? htmlspecialchars($settings['tax_id']) : ''; ?>">
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            
            <div class="d-grid gap-2 d-md-flex justify-content-md-end">
                <button type="submit" class="btn btn-primary">
                    <i class="fas fa-save me-1"></i> حفظ الإعدادات
                </button>
            </div>
        </form>
    </div>
</div>

<?php
// تضمين ملف الفوتر
include '../includes/footer.php';
?>
