// script.js
let tg = window.Telegram.WebApp;
tg.expand();

const urlParams = new URLSearchParams(window.location.search);
const userId = urlParams.get('user_id');
const theme = urlParams.get('theme') || 'light';

document.documentElement.setAttribute('data-theme', theme);

let currentPage = 'home';
let userData = null;

// Загружаем данные при старте
document.addEventListener('DOMContentLoaded', function() {
    loadUserData();
    loadHomePage();
    setActiveNav('home');
});

// Навигация
function navigateTo(page) {
    currentPage = page;
    setActiveNav(page);
    
    if (page === 'home') {
        loadHomePage();
    } else if (page === 'appointments') {
        loadAppointmentsPage();
    } else if (page === 'shop') {
        loadShopPage();
    } else if (page === 'my') {
        loadMyPage();
    } else if (page === 'more') {
        loadMorePage();
    }
}

function setActiveNav(page) {
    var navItems = document.querySelectorAll('.nav-item');
    for (var i = 0; i < navItems.length; i++) {
        navItems[i].classList.remove('active');
        if (navItems[i].dataset.page === page) {
            navItems[i].classList.add('active');
        }
    }
}

// Загрузка данных пользователя
function loadUserData() {
    fetch('/api/user/?user_id=' + userId)
        .then(function(response) {
            return response.json();
        })
        .then(function(data) {
            userData = data;
        })
        .catch(function(error) {
            console.log('Ошибка загрузки пользователя:', error);
        });
}

// Главная страница
function loadHomePage() {
    var content = document.getElementById('content');
    var userName = 'Гость';
    if (userData && userData.first_name) {
        userName = userData.first_name;
    }
    
    content.innerHTML = `
        <div class="content">
            <div class="card">
                <div style="display: flex; align-items: center; gap: 16px;">
                    <div style="width: 60px; height: 60px; background: var(--primary); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
                        <i class="fas fa-spa" style="font-size: 32px; color: white;"></i>
                    </div>
                    <div>
                        <h2>Добро пожаловать, ` + userName + `!</h2>
                        <p style="color: var(--text-secondary);">Выберите действие в меню ниже</p>
                    </div>
                </div>
            </div>
            
            <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 20px;">
                <div class="card" onclick="navigateTo('appointments')" style="cursor: pointer; text-align: center;">
                    <i class="fas fa-calendar-plus" style="font-size: 32px; color: var(--primary); margin-bottom: 8px;"></i>
                    <h3>Записаться</h3>
                </div>
                <div class="card" onclick="navigateTo('shop')" style="cursor: pointer; text-align: center;">
                    <i class="fas fa-shopping-bag" style="font-size: 32px; color: var(--success); margin-bottom: 8px;"></i>
                    <h3>Магазин</h3>
                </div>
            </div>
        </div>
    `;
}

// Страница записи
function loadAppointmentsPage() {
    var content = document.getElementById('content');
    content.innerHTML = `
        <div class="content">
            <h2 style="margin-bottom: 20px;">📅 Запись на прием</h2>
            
            <div style="display: flex; gap: 12px; margin-bottom: 20px; overflow-x: auto;">
                <button class="btn btn-primary" onclick="selectCategory('massage')">
                    <i class="fas fa-spa"></i> Массаж
                </button>
                <button class="btn btn-outline" onclick="selectCategory('injections')">
                    <i class="fas fa-syringe"></i> Уколы
                </button>
                <button class="btn btn-outline" onclick="selectCategory('hirudo')">
                    <i class="fas fa-stethoscope"></i> Гирудотерапия
                </button>
            </div>
            
            <div id="calendarContainer" class="calendar">
                <div class="calendar-header">
                    <button class="icon-btn" onclick="changeMonth(-1)">←</button>
                    <span class="calendar-month">Февраль 2026</span>
                    <button class="icon-btn" onclick="changeMonth(1)">→</button>
                </div>
                <div class="calendar-grid">
                    <div class="calendar-day-header">Пн</div>
                    <div class="calendar-day-header">Вт</div>
                    <div class="calendar-day-header">Ср</div>
                    <div class="calendar-day-header">Чт</div>
                    <div class="calendar-day-header">Пт</div>
                    <div class="calendar-day-header">Сб</div>
                    <div class="calendar-day-header">Вс</div>
    `;
    
    // Добавляем дни календаря
    for (var i = 1; i <= 28; i++) {
        var isAvailable = false;
        if (i === 5 || i === 6 || i === 7 || i === 12 || i === 13 || i === 14 || i === 19 || i === 20 || i === 21) {
            isAvailable = true;
        }
        
        var dayClass = 'calendar-day';
        if (isAvailable) {
            dayClass = dayClass + ' available';
        }
        
        var clickHandler = '';
        if (isAvailable) {
            clickHandler = 'onclick="selectDate(' + i + ')"';
        }
        
        content.innerHTML = content.innerHTML + '<div class="' + dayClass + '" ' + clickHandler + '>' + i + '</div>';
    }
    
    content.innerHTML = content.innerHTML + '</div></div>';
}

// Страница магазина
function loadShopPage() {
    var content = document.getElementById('content');
    content.innerHTML = `
        <div class="content">
            <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;">
                <h2>🛍️ Магазин</h2>
                <button class="icon-btn" onclick="openCart()">
                    <i class="fas fa-shopping-cart"></i>
                    <span id="cartCounter" style="background: var(--primary); color: white; padding: 2px 6px; border-radius: 10px; font-size: 12px;">0</span>
                </button>
            </div>
            
            <div style="margin-bottom: 20px;">
                <input type="text" placeholder="🔍 Поиск товаров..." 
                       style="width: 100%; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg-primary); color: var(--text-primary);">
            </div>
            
            <div style="display: flex; gap: 16px;">
                <div style="width: 100px;">
                    <button class="btn btn-primary" style="width:100%; margin-bottom:8px;" onclick="loadProducts('all')">Все</button>
                    <button class="btn btn-outline" style="width:100%; margin-bottom:8px;" onclick="loadProducts('body')">Тело</button>
                    <button class="btn btn-outline" style="width:100%; margin-bottom:8px;" onclick="loadProducts('face')">Лицо</button>
                    <button class="btn btn-outline" style="width:100%; margin-bottom:8px;" onclick="loadProducts('hair')">Волосы</button>
                    <button class="btn btn-outline" style="width:100%; margin-bottom:8px;" onclick="loadProducts('hands')">Руки</button>
                    <button class="btn btn-outline" style="width:100%; margin-bottom:8px;" onclick="loadProducts('legs')">Ноги</button>
                </div>
                
                <div style="flex:1;">
                    <div id="productsContainer" class="products-grid">
    `;
    
    // Добавляем тестовые товары
    var products = [
        {name: 'Крем для тела', price: 1500, discounted: 1200},
        {name: 'Маска для лица', price: 800, discounted: 0},
        {name: 'Масло для волос', price: 1200, discounted: 900},
        {name: 'Скраб для тела', price: 600, discounted: 0}
    ];
    
    for (var i = 0; i < products.length; i++) {
        var p = products[i];
        var priceHtml = '<span class="product-price">' + p.price + ' ₽</span>';
        if (p.discounted > 0) {
            priceHtml = '<span class="product-price">' + p.discounted + ' ₽</span> <span style="text-decoration: line-through; color: var(--text-secondary); font-size: 12px;">' + p.price + ' ₽</span>';
        }
        
        content.innerHTML = content.innerHTML + `
            <div class="product-card" onclick="openProduct(` + i + `)">
                <div class="product-image"><i class="fas fa-image"></i></div>
                <div class="product-title">` + p.name + `</div>
                <div style="display: flex; justify-content: space-between; align-items: center;">
                    <div>` + priceHtml + `</div>
                    <button class="icon-btn" onclick="event.stopPropagation(); addToCart(` + i + `)">
                        <i class="fas fa-cart-plus"></i>
                    </button>
                </div>
            </div>
        `;
    }
    
    content.innerHTML = content.innerHTML + '</div></div></div></div>';
}

function loadMyPage() {
    var content = document.getElementById('content');
    content.innerHTML = `
        <div class="content">
            <h2 style="margin-bottom: 20px;">📋 Мои записи</h2>
            <div class="card">
                <p style="color: var(--text-secondary); text-align: center;">У вас пока нет записей</p>
                <button class="btn btn-primary" style="width: 100%; margin-top: 16px;" onclick="navigateTo('appointments')">
                    Записаться на прием
                </button>
            </div>
        </div>
    `;
}

function loadMorePage() {
    var content = document.getElementById('content');
    content.innerHTML = `
        <div class="content">
            <h2 style="margin-bottom: 20px;">⚙️ Еще</h2>
            <div class="card" onclick="openAbout()" style="cursor: pointer; margin-bottom: 12px;">
                <i class="fas fa-info-circle"></i> О нас
            </div>
            <div class="card" onclick="openSupport()" style="cursor: pointer; margin-bottom: 12px;">
                <i class="fas fa-headset"></i> Поддержка
            </div>
            <div class="card" onclick="openSettings()" style="cursor: pointer;">
                <i class="fas fa-cog"></i> Настройки
            </div>
        </div>
    `;
}

// Функции для действий
function addToCart(productId) {
    showToast('✅ Товар добавлен в корзину');
}

function showToast(message) {
    var toast = document.getElementById('toast');
    var toastMessage = document.getElementById('toastMessage');
    toastMessage.textContent = message;
    toast.classList.add('show');
    setTimeout(function() {
        toast.classList.remove('show');
    }, 3000);
}

// Функции для модальных окон
function openProfile() {
    var modal = document.getElementById('profileModal');
    var content = document.getElementById('profileContent');
    
    var userName = 'Гость';
    var userStatus = 'regular';
    if (userData) {
        userName = userData.first_name || 'Гость';
        userStatus = userData.status || 'regular';
    }
    
    content.innerHTML = `
        <div style="text-align: center;">
            <div style="width: 80px; height: 80px; background: var(--primary); border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;">
                <span style="font-size: 32px; color: white;">` + userName.charAt(0) + `</span>
            </div>
            <h3>` + userName + `</h3>
            <p style="color: var(--text-secondary);">ID: ` + userId + `</p>
            <span class="status-badge status-` + userStatus + `">` + userStatus + `</span>
        </div>
    `;
    
    modal.classList.add('active');
}

function openCart() {
    var modal = document.getElementById('cartModal');
    var content = document.getElementById('cartContent');
    
    content.innerHTML = `
        <div style="text-align: center; padding: 40px 0;">
            <div style="font-size: 48px; color: var(--gray-300); margin-bottom: 16px;">
                <i class="fas fa-shopping-cart"></i>
            </div>
            <h3>Корзина пуста</h3>
            <p style="color: var(--text-secondary);">Добавьте товары из магазина</p>
        </div>
    `;
    
    modal.classList.add('active');
}

function openAbout() {
    alert('О нас - информация о салоне');
}

function openSupport() {
    alert('Техническая поддержка');
}

function openSettings() {
    alert('Настройки');
}

function closeModal(modalId) {
    document.getElementById(modalId).classList.remove('active');
}

function selectCategory(category) {
    alert('Выбрана категория: ' + category);
}

function selectDate(day) {
    alert('Выбрана дата: ' + day + ' февраля 2026');
}

function changeMonth(delta) {
    alert('Смена месяца');
}

function openProduct(productId) {
    alert('Товар ' + productId);
}

function loadProducts(category) {
    alert('Загрузка товаров категории: ' + category);
}

// Делаем функции доступными глобально
window.navigateTo = navigateTo;
window.openProfile = openProfile;
window.openCart = openCart;
window.closeModal = closeModal;
window.selectCategory = selectCategory;
window.selectDate = selectDate;
window.changeMonth = changeMonth;
window.addToCart = addToCart;
window.openProduct = openProduct;
window.loadProducts = loadProducts;
window.openAbout = openAbout;
window.openSupport = openSupport;
window.openSettings = openSettings;