-- Добавление колонки lang в таблицу users
-- Эта миграция добавляет поддержку мультиязычности

-- Добавляем колонку lang с дефолтным значением 'ru'
ALTER TABLE users 
ADD COLUMN IF NOT EXISTS lang VARCHAR(5) DEFAULT 'ru' NOT NULL;

-- Создаем индекс для быстрого поиска по языку
CREATE INDEX IF NOT EXISTS idx_users_lang ON users(lang);

-- Обновляем всех существующих пользователей, устанавливая русский язык
UPDATE users SET lang = 'ru' WHERE lang IS NULL OR lang = '';

-- Добавляем комментарий к колонке
COMMENT ON COLUMN users.lang IS 'User interface language (ISO 639-1 code)';

-- Проверка результата
SELECT 
    COUNT(*) as total_users,
    lang,
    COUNT(*) * 100.0 / SUM(COUNT(*)) OVER() as percentage
FROM users
GROUP BY lang
ORDER BY total_users DESC;
