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

// AJAX isteği kontrolü
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    echo json_encode(['success' => false, 'message' => 'Geçersiz istek metodu']);
    exit;
}

// Gerekli parametreleri kontrol et
if (!isset($_POST['theme_name'])) {
    echo json_encode(['success' => false, 'message' => 'Tema adı belirtilmedi']);
    exit;
}

$theme_name = trim($_POST['theme_name']);
$theme_dir = THEME_PATH . '/' . $theme_name;
$theme_info_file = $theme_dir . '/theme.json';

// Tema klasörünün varlığını kontrol et
if (!is_dir($theme_dir)) {
    echo json_encode(['success' => false, 'message' => 'Tema bulunamadı']);
    exit;
}

// Mevcut theme.json dosyasını oku
$current_info = [];
if (file_exists($theme_info_file)) {
    $current_info = json_decode(file_get_contents($theme_info_file), true) ?: [];
}

// Form verilerini al
$new_info = [
    'title' => trim($_POST['title'] ?? ''),
    'description' => trim($_POST['description'] ?? ''),
    'version' => trim($_POST['version'] ?? '1.0'),
    'author' => trim($_POST['author'] ?? ''),
    'preview_image' => trim($_POST['preview_image'] ?? '')
];

// Mevcut bilgileri koru ve yeni bilgileri ekle
$updated_info = array_merge($current_info, $new_info);

// Boş değerleri temizle
$updated_info = array_filter($updated_info, function($value) {
    return $value !== '';
});

// JSON dosyasını güncelle
try {
    $json_content = json_encode($updated_info, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
    
    if (file_put_contents($theme_info_file, $json_content) === false) {
        echo json_encode(['success' => false, 'message' => 'Dosya yazma hatası']);
        exit;
    }
    
    echo json_encode(['success' => true, 'message' => 'Tema ayarları başarıyla kaydedildi']);
    
} catch (Exception $e) {
    echo json_encode(['success' => false, 'message' => 'JSON yazma hatası: ' . $e->getMessage()]);
}
?> 