<?php
if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/bi-system/bitrix_auth.php')) {
    require_once $_SERVER['DOCUMENT_ROOT'] . '/bi-system/bitrix_auth.php';
} elseif (file_exists(__DIR__ . '/../../bi-system/bitrix_auth.php')) {
    require_once __DIR__ . '/../../bi-system/bitrix_auth.php';
}

if (file_exists(__DIR__ . '/region_config.php')) {
    require_once __DIR__ . '/region_config.php';
}

require_once __DIR__ . '/crm_user_context.php';

$bitrixUserAuthorized = isset($GLOBALS['USER']) && is_object($GLOBALS['USER']) && method_exists($GLOBALS['USER'], 'IsAuthorized') && $GLOBALS['USER']->IsAuthorized();
$envPath = realpath(__DIR__ . '/../.env');
$context = crm_uc_build_context($envPath, $bitrixUserAuthorized);

$crmCurrentUser = $context['crmCurrentUser'];
$managerLogins = $context['roles']['managerLogins'];
$brandManagerLogins = $context['roles']['brandManagerLogins'];

if (!$bitrixUserAuthorized || $crmCurrentUser === null) {
    http_response_code(403);
    echo 'Доступ запрещён';
    exit;
}

header('X-Robots-Tag: noindex, nofollow, noarchive, nosnippet');
?><!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="robots" content="noindex, nofollow, noarchive, nosnippet, noimageindex, nocache">
    <title>Детейлинг CRM</title>
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="style.css?v=2.0">
    <script>
        window.CRM_CURRENT_USER = <?= json_encode($crmCurrentUser, JSON_UNESCAPED_UNICODE) ?>;
        window.CRM_MANAGERS = <?= json_encode(array_values(array_map('mb_strtolower', array_map('trim', $managerLogins))), JSON_UNESCAPED_UNICODE) ?>;
        window.CRM_BRAND_MANAGERS = <?= json_encode(array_values($brandManagerLogins), JSON_UNESCAPED_UNICODE) ?>;
    </script>
</head>
<body>
<div class="container-fluid py-3">
    <div class="d-flex flex-wrap gap-2 align-items-center justify-content-between mb-3">
        <div class="d-flex align-items-center gap-3">
            <div class="fw-semibold">Детейлинг CRM</div>
            <div class="small text-muted" id="detailUserLabel"></div>
        </div>
        <div class="d-flex align-items-center gap-2">
            <a class="btn btn-outline-secondary btn-sm" href="index.php">Старый CRM</a>
        </div>
    </div>

    <div class="card shadow-sm">
        <div class="card-body">
            <div class="row g-2 align-items-end mb-3">
                <div class="col-12 col-md-3">
                    <label class="form-label mb-1">Локация</label>
                    <select class="form-select form-select-sm" id="detailLocationSelect"></select>
                </div>
                <div class="col-12 col-md-3">
                    <label class="form-label mb-1">Дата</label>
                    <input type="date" class="form-control form-control-sm" id="detailDayInput">
                </div>
                <div class="col-12 col-md-3">
                    <label class="form-label mb-1">Услуга</label>
                    <select class="form-select form-select-sm" id="detailServiceSelect"></select>
                </div>
                <div class="col-12 col-md-3 d-flex gap-2">
                    <button class="btn btn-primary btn-sm flex-grow-1" id="detailAddOrderBtn">Добавить заказ</button>
                    <button class="btn btn-outline-secondary btn-sm" id="detailRefreshBtn">Обновить</button>
                </div>
            </div>

            <ul class="nav nav-pills mb-3" id="detailViewsNav">
                <li class="nav-item">
                    <button class="nav-link active" id="detailViewSchedulerBtn" type="button">Планировщик</button>
                </li>
                <li class="nav-item">
                    <button class="nav-link" id="detailViewListBtn" type="button">Список</button>
                </li>
                <li class="nav-item">
                    <button class="nav-link" id="detailViewKanbanBtn" type="button">Канбан</button>
                </li>
                <li class="nav-item">
                    <button class="nav-link" id="detailViewAnalyticsBtn" type="button">Аналитика</button>
                </li>
                <li class="nav-item">
                    <button class="nav-link" id="detailViewWorkspaceBtn" type="button">Рабочее место менеджера</button>
                </li>
            </ul>

            <div id="detailSchedulerView">
                <div class="row g-3" id="detailSchedulerRoot"></div>
            </div>

            <div id="detailListView" class="d-none">
                <div class="table-responsive">
                    <table class="table table-sm table-hover table-bordered align-middle mb-0">
                        <thead class="table-light">
                            <tr>
                                <th style="min-width:120px;">Время</th>
                                <th style="min-width:140px;">Статус</th>
                                <th style="min-width:140px;">Пост</th>
                                <th style="min-width:160px;">Услуга</th>
                                <th style="min-width:220px;">Клиент</th>
                                <th style="min-width:220px;">Авто</th>
                            </tr>
                        </thead>
                        <tbody id="detailListTbody"></tbody>
                    </table>
                </div>
            </div>

            <div id="detailKanbanView" class="d-none">
                <div class="d-flex gap-3 overflow-auto pb-2" id="detailKanbanBoard"></div>
            </div>

            <div id="detailAnalyticsView" class="d-none">
                <div id="detailAnalyticsRoot"></div>
            </div>

            <div id="detailWorkspaceView" class="d-none">
                <div id="detailWorkspaceRoot"></div>
            </div>
        </div>
    </div>
</div>

<div class="modal fade" id="detailOrderModal" tabindex="-1" aria-hidden="true">
    <div class="modal-dialog modal-lg modal-dialog-scrollable">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title" id="detailOrderModalTitle">Заказ</h5>
                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
            </div>
            <div class="modal-body">
                <form id="detailOrderForm" class="row g-2">
                    <input type="hidden" id="detailOrderId">
                    <div class="col-12 col-md-6">
                        <label class="form-label mb-1">Клиент (ФИО)</label>
                        <input class="form-control form-control-sm" id="detailCustomerName" required>
                    </div>
                    <div class="col-12 col-md-6">
                        <label class="form-label mb-1">Телефон</label>
                        <input class="form-control form-control-sm" id="detailCustomerPhone" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Марка</label>
                        <input class="form-control form-control-sm" id="detailCarBrand" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Модель</label>
                        <input class="form-control form-control-sm" id="detailCarModel" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Госномер</label>
                        <input class="form-control form-control-sm" id="detailCarPlate" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Пост</label>
                        <select class="form-select form-select-sm" id="detailPostSelect" required></select>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Услуга</label>
                        <select class="form-select form-select-sm" id="detailOrderServiceSelect" required></select>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Статус</label>
                        <select class="form-select form-select-sm" id="detailStatusSelect" required>
                            <option value="reserved">Зарезервировано</option>
                            <option value="pending_payment">Ожидает предоплаты</option>
                            <option value="confirmed">Подтверждено</option>
                            <option value="in_work">В работе</option>
                            <option value="ready">Готово к выдаче</option>
                            <option value="done">Выдан / Завершен</option>
                            <option value="no_show">Не приехал</option>
                        </select>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Начало</label>
                        <input type="datetime-local" class="form-control form-control-sm" id="detailStartAt" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Длительность (мин)</label>
                        <input type="number" min="1" class="form-control form-control-sm" id="detailDurationMinutes" required>
                    </div>
                    <div class="col-12 col-md-4">
                        <label class="form-label mb-1">Окончание</label>
                        <input type="datetime-local" class="form-control form-control-sm" id="detailEndAt" required>
                    </div>
                    <div class="col-12">
                        <label class="form-label mb-1">Комментарий</label>
                        <textarea class="form-control form-control-sm" id="detailComment" rows="3"></textarea>
                    </div>
                </form>

                <div class="mt-3">
                    <div class="fw-semibold mb-2">Вложения</div>
                    <div class="d-flex flex-wrap gap-2 align-items-center mb-2">
                        <select class="form-select form-select-sm" id="detailAttachmentKind" style="max-width: 220px;">
                            <option value="before">До</option>
                            <option value="after">После</option>
                            <option value="defects">Дефектовка</option>
                        </select>
                        <input type="file" class="form-control form-control-sm" id="detailAttachmentFile" accept="image/*" style="max-width: 360px;">
                        <button class="btn btn-outline-primary btn-sm" id="detailUploadAttachmentBtn">Загрузить</button>
                    </div>
                    <div class="row g-2" id="detailAttachmentsGrid"></div>
                </div>
            </div>
            <div class="modal-footer">
                <button class="btn btn-outline-danger me-auto d-none" id="detailDeleteOrderBtn">Удалить</button>
                <button class="btn btn-secondary" data-bs-dismiss="modal">Закрыть</button>
                <button class="btn btn-primary" id="detailSaveOrderBtn">Сохранить</button>
            </div>
        </div>
    </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script type="module" src="js_modules/detailing/main.js"></script>
</body>
</html>

