{% extends 'admin/admin_base.html' %}
{% block title %}БД ядра{% endblock %}
{% block admin_content %}
<div class="container-fluid mt-4 mb-4" id="db-admin-root"
     data-datasource="{{ core_datasource }}"
     data-database="{{ core_db_name }}"
     data-db-type="{{ core_db_type }}">
    <div class="admin-toolbar mb-3">
        <h1 class="admin-toolbar__title">
            <i class="bi bi-database-check" aria-hidden="true"></i> БД ядра
        </h1>
        <p class="text-muted mb-0 small">
            Основная база проекта: <strong>{{ core_datasource }} / {{ core_db_name or '— не настроена —' }}</strong>
        </p>
    </div>

    {% if not core_db_name %}
    <div class="alert alert-warning">База данных ядра не указана в конфигурации приложения.</div>
    {% else %}
    <div class="alert alert-info py-2 small">
        Просмотр структуры и проверка схемы ядра. Для сервисных и пользовательских баз используйте
        <a href="/admin/db-studio">Студию БД</a>.
    </div>

    <div class="row g-3">
        <div class="col-lg-3">
            <div class="card">
                <div class="card-header d-flex justify-content-between align-items-center">
                    <span>Таблицы</span>
                    <button type="button" class="btn btn-sm btn-outline-secondary" id="reload-tables-btn" aria-label="Обновить список таблиц">↻</button>
                </div>
                <div class="card-body p-2">
                    <input type="search" class="form-control form-control-sm mb-2" id="table-search" placeholder="Поиск..." aria-label="Поиск таблиц">
                    <ul class="list-group list-group-flush" id="tables-list" aria-label="Список таблиц"></ul>
                </div>
            </div>
        </div>
        <div class="col-lg-9">
            <div class="card mb-3">
                <div class="card-header">
                    <span id="table-title">Выберите таблицу</span>
                </div>
                <div class="card-body">
                    <div id="structure-view" class="mb-3"></div>
                    <div id="table-dataview"></div>
                </div>
            </div>

            <div class="card">
                <div class="card-header">
                    <h5 class="mb-0">Проверка структуры БД ядра</h5>
                </div>
                <div class="card-body">
                    <p class="text-muted small">
                        Сверка всех обязательных таблиц и колонок схемы ядра Cascad360
                        (auth, security, API, files, plugin ports и др.).
                        Таблицы плагинов (content_*, pb_*) в эту проверку не входят.
                    </p>
                    <button id="db-check-btn" class="btn btn-primary mb-2" type="button">Проверить структуру БД</button>
                    <div id="db-check-report"></div>
                </div>
            </div>
        </div>
    </div>
    {% endif %}
</div>
{% endblock %}
{% block admin_scripts %}
<script src="{{ url_for('static', filename='js/database.js') }}"></script>
<script src="{{ url_for('static', filename='js/db_check.js') }}"></script>
{% endblock %}
