local PLUGIN = PLUGIN

PLUGIN.donateCatalog = PLUGIN.donateCatalog or {
    {
        id = "currency",
        name = "Рубли",
        tagline = "Пополнение игрового баланса",
        accent = { r = 1, g = 104, b = 44 },
        items = {
            {
                id = "money_1000",
                title = "1.000 ₽",
                price = 50,
                currency = "IGS",
                perks = {
                    "Пополнение игрового баланса",
                    "Мгновенное зачисление",
                    "Использование в магазинах"
                },
                reward = {
                    type = "money",
                    amount = 1000
                }
            },
            {
                id = "money_5000",
                title = "5.000 ₽",
                price = 225,
                currency = "IGS",
                perks = {
                    "Пополнение игрового баланса",
                    "Мгновенное зачисление",
                    "Использование в магазинах",
                    "Выгодно: +10% бонус"
                },
                tag = "ВЫГОДНО",
                reward = {
                    type = "money",
                    amount = 5000
                }
            },
            {
                id = "money_10000",
                title = "10.000 ₽",
                price = 400,
                currency = "IGS",
                perks = {
                    "Пополнение игрового баланса",
                    "Мгновенное зачисление",
                    "Использование в магазинах",
                    "Выгодно: +20% бонус"
                },
                tag = "ХИТ",
                reward = {
                    type = "money",
                    amount = 10000
                }
            },
            {
                id = "money_25000",
                title = "25.000 ₽",
                price = 900,
                currency = "IGS",
                perks = {
                    "Пополнение игрового баланса",
                    "Мгновенное зачисление",
                    "Использование в магазинах",
                    "Максимально выгодно: +28% бонус"
                },
                tag = "ЛУЧШЕЕ",
                reward = {
                    type = "money",
                    amount = 25000
                }
            }
        }
    },
    {
        id = "weapons",
        name = "Оружие",
        tagline = "Донатное оружие в ваш арсенал",
        accent = { r = 1, g = 104, b = 44 },
        items = {
            { id = "ak12", title = "AK-12", price1Month = 1200, price3Month = 3200, currency = "IGS", perks = { "Доступен в арсенале", "Кулдаун 10 минут", "Любая фракция" }, reward = { type = "weapon", weaponClass = "tacrp_ak_ak12", name = "AK-12" } },
            { id = "mdr", title = "Desert Tech MDR", price1Month = 1500, price3Month = 4000, currency = "IGS", perks = { "Доступен в арсенале", "Кулдаун 10 минут", "Любая фракция" }, reward = { type = "weapon", weaponClass = "arc9_eft_mdr", name = "MDR" } },
            { id = "mp7a1", title = "MP7A1", price1Month = 1300, price3Month = 3500, currency = "IGS", perks = { "Доступен в арсенале", "Кулдаун 10 минут", "Любая фракция" }, reward = { type = "weapon", weaponClass = "arc9_eft_mp7a1", name = "MP7A1" } },
            { id = "ai_axmc", title = "AI AXMC", price1Month = 2000, price3Month = 5500, currency = "IGS", perks = { "Снайперская винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_ai_axmc", name = "AI AXMC" } },
            { id = "t5000", title = "T-5000", price1Month = 1900, price3Month = 5200, currency = "IGS", perks = { "Снайперская винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_t5000", name = "T-5000" } },
            { id = "saiga12k", title = "Сайга-12К", price1Month = 1400, price3Month = 3800, currency = "IGS", perks = { "Автоматический дробовик", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_saiga12k", name = "Сайга-12К" } },
            { id = "deagle", title = "Desert Eagle XIX", price1Month = 800, price3Month = 2200, currency = "IGS", perks = { "Мощный пистолет", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_deagle_xix", name = "Desert Eagle" } },
            { id = "apb", title = "АПБ", price1Month = 700, price3Month = 1900, currency = "IGS", perks = { "Бесшумный пистолет", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_apb", name = "АПБ" } },
            { id = "spear", title = "SPEAR", price1Month = 1600, price3Month = 4400, currency = "IGS", perks = { "Доступен в арсенале", "Кулдаун 10 минут", "Любая фракция" }, reward = { type = "weapon", weaponClass = "arc9_eft_spear", name = "SPEAR" } },
            { id = "sr25", title = "SR-25", price1Month = 1800, price3Month = 4900, currency = "IGS", perks = { "Снайперская винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_sr25", name = "SR-25" } },
            { id = "dvl10", title = "ДВЛ-10", price1Month = 1900, price3Month = 5200, currency = "IGS", perks = { "Снайперская винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_dvl10", name = "ДВЛ-10" } },
            { id = "hultafors", title = "Dead Blow Hammer", price1Month = 300, price3Month = 800, currency = "IGS", perks = { "Холодное оружие", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_melee_hultafors", name = "Hammer" } },
            { id = "cultist", title = "Cultist Knife", price1Month = 400, price3Month = 1100, currency = "IGS", perks = { "Холодное оружие", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_melee_cultist", name = "Cultist Knife" } },
            { id = "akula", title = "Akula", price1Month = 350, price3Month = 950, currency = "IGS", perks = { "Холодное оружие", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_melee_akula", name = "Akula" } },
            { id = "crash", title = "Crash Axe", price1Month = 350, price3Month = 950, currency = "IGS", perks = { "Холодное оружие", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_melee_crash", name = "Crash Axe" } },
            { id = "kukri", title = "Kukri", price1Month = 400, price3Month = 1100, currency = "IGS", perks = { "Холодное оружие", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_melee_kukri", name = "Kukri" } },
            { id = "ak50", title = "AK-50", price1Month = 2200, price3Month = 6000, currency = "IGS", perks = { "Мощная штурмовая винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, tag = "ХИТ", reward = { type = "weapon", weaponClass = "arc9_eft_ak50", name = "AK-50" } },
            { id = "vss", title = "ВСС Винторез", price1Month = 1500, price3Month = 4100, currency = "IGS", perks = { "Бесшумная винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_vss", name = "ВСС" } },
            { id = "mr43", title = "МР-43", price1Month = 1000, price3Month = 2700, currency = "IGS", perks = { "Дробовик", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_mr43", name = "МР-43" } },
            { id = "rpk16", title = "РПК-16", price1Month = 1700, price3Month = 4600, currency = "IGS", perks = { "Ручной пулемёт", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_rpk16", name = "РПК-16" } },
            { id = "rshg2", title = "РШГ-2", price1Month = 2500, price3Month = 6800, currency = "IGS", perks = { "Гранатомёт", "Доступен в арсенале", "Кулдаун 10 минут" }, tag = "РЕДКОЕ", reward = { type = "weapon", weaponClass = "arc9_eft_rshg2", name = "РШГ-2" } },
            { id = "ash12", title = "АШ-12", price1Month = 1800, price3Month = 4900, currency = "IGS", perks = { "Штурмовая винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_ash12", name = "АШ-12" } },
            { id = "rd704", title = "RD-704", price1Month = 1400, price3Month = 3800, currency = "IGS", perks = { "Штурмовая винтовка", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_rd704", name = "RD-704" } },
            { id = "ppsh41", title = "ППШ-41", price1Month = 900, price3Month = 2400, currency = "IGS", perks = { "Легендарный ПП", "Доступен в арсенале", "Кулдаун 10 минут" }, reward = { type = "weapon", weaponClass = "arc9_eft_ppsh41", name = "ППШ-41" } }
        }
    },
    {
        id = "other",
        name = "Другое",
        tagline = "Дополнительные возможности",
        accent = { r = 1, g = 104, b = 44 },
        items = {
            {
                id = "voice_chat",
                title = "Говорилка",
                price = 500,
                currency = "IGS",
                perks = {
                    "Разблокировка голосового чата",
                    "Радиус слышимости 200м",
                    "Без ограничений по времени",
                    "Мгновенная активация"
                },
                reward = {
                    type = "voice_chat",
                    successMessage = "Голосовой чат разблокирован!"
                }
            }
        }
    },
    {
        id = "privileges",
        name = "Привелегии",
        tagline = "VIP статусы и возможности",
        accent = { r = 1, g = 104, b = 44 },
        items = {
            {
                id = "vip",
                title = "VIP",
                price1Month = 300,
                price3Month = 800,
                currency = "IGS",
                perks = {
                    "Цветной ник и иконка VIP в чате",
                    "Приоритет при входе на сервер",
                    "Скидка 10% в арсенале",
                    "Доступ к VIP-командам"
                },
                reward = {
                    type = "privilege",
                    tier = "vip"
                }
            },
            {
                id = "vip_plus",
                title = "VIP+",
                price1Month = 500,
                price3Month = 1400,
                currency = "IGS",
                perks = {
                    "Все преимущества VIP",
                    "Увеличенная зарплата (+15%)",
                    "Скидка 15% в арсенале",
                    "Доступ к уникальным моделям",
                    "Еженедельный бонус валюты"
                },
                reward = {
                    type = "privilege",
                    tier = "vip_plus"
                }
            },
            {
                id = "premium",
                title = "Premium",
                price1Month = 800,
                price3Month = 2200,
                currency = "IGS",
                perks = {
                    "Все преимущества VIP+",
                    "Увеличенная зарплата (+25%)",
                    "Скидка 20% в арсенале",
                    "Приоритетный спавн техники",
                    "Доступ к Premium-командам",
                    "Уникальные анимации и эффекты"
                },
                tag = "ХИТ",
                reward = {
                    type = "privilege",
                    tier = "premium"
                }
            },
            {
                id = "sponsor",
                title = "Спонсор",
                price1Month = 1300,
                price3Month = 3600,
                currency = "IGS",
                perks = {
                    "Доступ к личному Discord-серверу разработчиков проекта с различной информацией, включая оповещения о свежих обновлениях",
                    "Увеличенный доход за убийство противника на сервере",
                    "Быстрый захват точки противника (в 1,5 раза быстрее)",
                    "Уменьшенное ограничение (по времени) на выкат техники",
                    "Постоянно действующие скидки в 20% на покупку доната (НЕ ЧЕРЕЗ АВТО-ДОНАТ)",
                    "Уникальные возможности на сервере",
                    "Участие в закрытых бета-тестированиях и голосованиях"
                },
                tag = "ЭКСКЛЮЗИВ",
                reward = {
                    type = "privilege",
                    tier = "sponsor"
                }
            }
        }
    }
}

local function BuildDonateLookup()
    PLUGIN.donateItemsByID = {}
    for _, category in ipairs(PLUGIN.donateCatalog or {}) do
        for _, item in ipairs(category.items or {}) do
            PLUGIN.donateItemsByID[item.id] = item
        end
    end
end

BuildDonateLookup()

function PLUGIN:GetDonateCatalog()
    return self.donateCatalog or {}
end

function PLUGIN:GetDonateCategory(identifier)
    if not identifier then return end

    for _, category in ipairs(self:GetDonateCatalog()) do
        if category.id == identifier then
            return category
        end
    end
end

function PLUGIN:GetDonateProduct(identifier)
    if not identifier then return end

    if not self.donateItemsByID then
        BuildDonateLookup()
    end

    return self.donateItemsByID[identifier]
end
