<?php
$settings = new Settings();
$message = '';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    foreach ($_POST as $key => $value) {
        if ($key !== 'submit') {
            $settings->update($key, sanitize_input($value));
        }
    }
    $message = __('settings_updated');
}

$currentSettings = $settings->getAll();
?>

<div class="row">
    <div class="col-lg-8">
        <?php if ($message): ?>
            <div class="alert alert-success alert-dismissible fade show" role="alert">
                <i class="fas fa-check-circle"></i> <?= htmlspecialchars($message) ?>
                <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
            </div>
        <?php endif; ?>

        <div class="card">
            <div class="card-header">
                <h5 class="card-title mb-0">
                    <i class="fas fa-cogs"></i> <?= __('general_settings') ?>
                </h5>
            </div>
            <div class="card-body">
                <form method="POST" data-validate>
                    <div class="row mb-3">
                        <div class="col-md-6">
                            <label for="site_title" class="form-label"><?= __('site_title') ?></label>
                            <input type="text" class="form-control" id="site_title" name="site_title"
                                   value="<?= htmlspecialchars($currentSettings['site_title'] ?? 'Excellent Blog') ?>" required>
                        </div>
                        <div class="col-md-6">
                            <label for="default_language" class="form-label"><?= __('default_language') ?></label>
                            <select class="form-select" id="default_language" name="default_language">
                                <?php foreach (SUPPORTED_LANGUAGES as $code => $name): ?>
                                    <option value="<?= $code ?>" <?= ($currentSettings['default_language'] ?? 'en') === $code ? 'selected' : '' ?>>
                                        <?= htmlspecialchars($name) ?>
                                    </option>
                                <?php endforeach; ?>
                            </select>
                        </div>
                    </div>

                    <div class="mb-3">
                        <label for="site_description" class="form-label"><?= __('site_description') ?></label>
                        <textarea class="form-control" id="site_description" name="site_description" rows="3"><?= htmlspecialchars($currentSettings['site_description'] ?? 'AI-Powered International Blog Platform') ?></textarea>
                    </div>

                    <div class="row mb-3">
                        <div class="col-md-6">
                            <label for="articles_per_page" class="form-label"><?= __('articles_per_page') ?></label>
                            <input type="number" class="form-control" id="articles_per_page" name="articles_per_page"
                                   value="<?= htmlspecialchars($currentSettings['articles_per_page'] ?? '10') ?>" min="1" max="50">
                        </div>
                        <div class="col-md-6">
                            <label for="crawl_interval" class="form-label"><?= __('crawl_interval') ?> (<?= __('seconds') ?>)</label>
                            <input type="number" class="form-control" id="crawl_interval" name="crawl_interval"
                                   value="<?= htmlspecialchars($currentSettings['crawl_interval'] ?? '3600') ?>" min="300">
                        </div>
                    </div>

                    <hr>
                    <h6><?= __('features') ?></h6>

                    <div class="row mb-3">
                        <div class="col-md-4">
                            <div class="form-check form-switch">
                                <input class="form-check-input" type="checkbox" id="auto_crawl_enabled" name="auto_crawl_enabled"
                                       value="1" <?= ($currentSettings['auto_crawl_enabled'] ?? '1') === '1' ? 'checked' : '' ?>>
                                <label class="form-check-label" for="auto_crawl_enabled">
                                    <?= __('auto_crawl_enabled') ?>
                                </label>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-check form-switch">
                                <input class="form-check-input" type="checkbox" id="auto_publish_enabled" name="auto_publish_enabled"
                                       value="1" <?= ($currentSettings['auto_publish_enabled'] ?? '1') === '1' ? 'checked' : '' ?>>
                                <label class="form-check-label" for="auto_publish_enabled">
                                    <?= __('auto_publish_enabled') ?>
                                </label>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-check form-switch">
                                <input class="form-check-input" type="checkbox" id="ai_generation_enabled" name="ai_generation_enabled"
                                       value="1" <?= ($currentSettings['ai_generation_enabled'] ?? '1') === '1' ? 'checked' : '' ?>>
                                <label class="form-check-label" for="ai_generation_enabled">
                                    <?= __('ai_generation_enabled') ?>
                                </label>
                            </div>
                        </div>
                    </div>

                    <div class="d-flex justify-content-end">
                        <button type="submit" name="submit" class="btn btn-primary">
                            <i class="fas fa-save"></i> <?= __('save_settings') ?>
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>

    <div class="col-lg-4">
        <div class="card">
            <div class="card-header">
                <h5 class="card-title mb-0">
                    <i class="fas fa-info-circle"></i> <?= __('system_status') ?>
                </h5>
            </div>
            <div class="card-body">
                <div class="d-flex justify-content-between align-items-center mb-2">
                    <span><?= __('php_version') ?>:</span>
                    <span class="badge bg-success"><?= PHP_VERSION ?></span>
                </div>
                <div class="d-flex justify-content-between align-items-center mb-2">
                    <span><?= __('mysql_version') ?>:</span>
                    <span class="badge bg-success">8.0</span>
                </div>
                <div class="d-flex justify-content-between align-items-center mb-2">
                    <span><?= __('app_version') ?>:</span>
                    <span class="badge bg-primary"><?= APP_VERSION ?></span>
                </div>
                <div class="d-flex justify-content-between align-items-center">
                    <span><?= __('storage_used') ?>:</span>
                    <span class="badge bg-info"><?= formatBytes(disk_total_space('.') - disk_free_space('.')) ?></span>
                </div>
            </div>
        </div>

        <div class="card mt-3">
            <div class="card-header">
                <h5 class="card-title mb-0">
                    <i class="fas fa-tools"></i> <?= __('maintenance') ?>
                </h5>
            </div>
            <div class="card-body">
                <p class="text-muted small"><?= __('maintenance_description') ?></p>
                <div class="d-grid gap-2">
                    <button type="button" class="btn btn-outline-warning btn-sm" onclick="clearCache()">
                        <i class="fas fa-trash"></i> <?= __('clear_cache') ?>
                    </button>
                    <button type="button" class="btn btn-outline-info btn-sm" onclick="optimizeDatabase()">
                        <i class="fas fa-database"></i> <?= __('optimize_database') ?>
                    </button>
                </div>
            </div>
        </div>
    </div>
</div>

<script>
function clearCache() {
    if (confirm('<?= __('confirm_clear_cache') ?>')) {
        // Implement cache clearing
        showAlert('<?= __('cache_cleared') ?>', 'success');
    }
}

function optimizeDatabase() {
    if (confirm('<?= __('confirm_optimize_db') ?>')) {
        // Implement database optimization
        showAlert('<?= __('database_optimized') ?>', 'success');
    }
}

function showAlert(message, type) {
    const alertDiv = document.createElement('div');
    alertDiv.className = `alert alert-${type} alert-dismissible fade show position-fixed`;
    alertDiv.style.cssText = 'top: 20px; right: 20px; z-index: 1060; min-width: 300px;';
    alertDiv.innerHTML = `
        ${message}
        <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
    `;
    document.body.appendChild(alertDiv);

    setTimeout(() => {
        alertDiv.remove();
    }, 3000);
}
</script>