Скрипт для зга+

Скрипт для рук-во

// ==UserScript==
// @name     Скрипт для зга+
// @namespace    https://forum.blackrussia.online
// @version      1.4
// @description  Скрипт для рук-во 
// @author       Rasul (ЗГА-56)
// @match        *://*.forum.blackrussia.online/*
// @grant        GM_addStyle
// @license      MIT
// @icon        https://i.postimg.cc/C1bfs7gB/2.jpg
// ==/UserScript==

(async function () {
    'use strict';


    GM_addStyle(`
        @keyframes bg-pan {
            from { background-position: 0% center; }
            to { background-position: -200% center; }
        }
        .persona-btn {
            border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 6px; color: white;
            padding: 6px 12px; margin: 3px 5px !important; font-weight: 600; font-size: 13px; text-shadow: none;
            background-size: 200% 200%; background-image: linear-gradient(90deg, #374151, #4b5563, #374151);
            transition: all 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275); cursor: pointer; outline: none;
        }
        .persona-btn:hover {
            transform: translateY(-2px); color: #fff; border-color: #60a5fa;
            background-image: linear-gradient(90deg, #1d4ed8, #2563eb, #3b82f6, #1d4ed8);
            box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4); animation: bg-pan 4s linear infinite;
        }
        .persona-btn:active { transform: translateY(0px) scale(0.98); box-shadow: none; }
        .select_answer_container .overlay-content {
            background-color: #1f2937; border: 1px solid #4b5563; border-radius: 8px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
        }
        .select_answer_container .overlay-title { color: #d1d5db; text-shadow: none; font-weight: 600; }
        .select_answer { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; padding: 20px; }
        .persona-answer-btn {
            background-color: #374151; border: 1px solid #4b5563; border-radius: 5px; color: #d1d5db;
            padding: 8px 10px; font-weight: 500; font-size: 13px; transition: all 0.2s ease-in-out; cursor: pointer;
        }
        .persona-answer-btn:hover { background-color: #4b5563; border-color: #60a5fa; color: #ffffff; transform: scale(1.03); }
        .persona-answer-divider {
            width: 100%; text-align: center; color: #6b7280; font-weight: 600; font-size: 1em;
            text-transform: uppercase; letter-spacing: 1px; margin: 12px 0 8px 0;
            border-bottom: 1px solid #374151; padding-bottom: 8px; cursor: default;
        }
    `);



    const PREFIXES = {
        UNACCEPT: 4, ACCEPT: 8, PIN: 2, COMMAND: 10, WATCHED: 9, CLOSE: 7, GA: 12,
        SPECADM: 11, DECIDED: 6, MAINADM: 12, TECHADM: 13, CHECKED: 9
    };

    const topImage = `[CENTER][IMG]https://i.postimg.cc/tg2f3qFM/1.png[/IMG][/CENTER]`;
    const bottomImage = `[CENTER][IMG]https://i.postimg.cc/tg2f3qFM/1.png[/IMG][/CENTER]`;

    const buttons = [
        { title: `Выше +`, content: `[B][FONT=georgia]Выше +,под фрапс, после р/д[/FONT][/B]\n[IMG]https://i.postimg.cc/8PghxPdW/standard-17.gif[/IMG]`},
       {
  "title": "Роспись",
  "content": "[CENTER]\n[IMG]https://i.postimg.cc/5tctzDgF/022-EB1-E9-5-C30-402-A-81-D4-08-C349-A08-FFF.gif[/IMG]<br>\n[ICODE]Здесь был Тот самый Расул. Кто знает — поймёт. Кто не знает — узнает.[/ICODE]\n[/CENTER]"
},

        { title: 'Отказы по форме и правилам', isDivider: true },
        { title: `Не отправил ВК`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br>Ваше обжалование [COLOR=rgb(255, 0, 0)]отказано[/COLOR], поскольку не был указан аккаунт VK.<br><br>[COLOR=rgb(255, 0, 0)][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status:false },
        { title: `ЖБ НА АДМ`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Если вы не согласны с выданным наказанием, обратитесь в раздел "Жалобы на Администрацию"<br><br>[COLOR=rgb(255, 0, 0)][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status:false },
        { title: `Дубликат`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ответ на свое обжалование вы получили в предыдущей теме.<br>Напоминаем, при 3 дублированиях – форумный аккаунт будет заблокирован.<br><br>[COLOR=rgb(255, 0, 0)][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status: false },
        { title: `Тех раздел ЖБ`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Обратитесь в раздел «Жалобы на Технических Специалистов» — [URL='https://forum.blackrussia.online/forums/%D0%A1%D0%B5%D1%80%D0%B2%D0%B5%D1%80-%E2%84%9656-arkhangelsk.2471/']*Кликабельно*[/URL]<br><br>[COLOR=rgb(255, 0, 0)][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status: false },
        { title: `Ошб сервера`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Обратитесь в раздел «Обжалование наказаний» своего сервера.<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false },
        { title: `3 Лицо`, content:`${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение составлено от третьего лица. Рассмотрению данное обжалование не подлежит.<br>Советую ознакомиться с данной темой [URL='https://forum.blackrussia.online/index.php?threads/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D0%BF%D0%BE%D0%B4%D0%B0%D1%87%D0%B8-%D0%B7%D0%B0%D1%8F%D0%B2%D0%BA%D0%B8-%D0%BD%D0%B0-%D0%BE%D0%B1%D0%B6%D0%B0%D0%BB%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BD%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0%D0%BD%D0%B8%D1%8F.1884562/']*Кликабельно*[/URL].<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false },
        { title: `окно бана`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Зайдите на сервер и прикрепите скриншот окна блокировки.<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status: false },
        { title: `Форма`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение составлено не по форме.<br>Создайте новую тему и придерживайтесь форме подачи обжалования.<br>[QUOTE]1. Ваш Nick_Name:<br>2. Nick_Name администратора:<br>3. Дата выдачи/получения наказания:<br>4. Суть заявки:<br>5. Доказательство:[/QUOTE]<br>[COLOR=rgb(255, 0, 0)][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false },
        { title: `Соц сети`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Доказательства с социальных сетей не принимаются. Вам необходимо загрузить доказательства на imgur.com, далее создать новую тему.<br><br>Советую ознакомиться с данной темой [URL='https://forum.blackrussia.online/index.php?threads/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D0%BF%D0%BE%D0%B4%D0%B0%D1%87%D0%B8-%D0%B7%D0%B0%D1%8F%D0%B2%D0%B8%D0%B3%D0%B0-%D0%BD%D0%B0-%D0%BE%D0%B1%D0%B6%D0%B0%D0%BB%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BD%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0%D0%BD%D0%B8%D1%8F.1884562/']*Кликабельно*[/URL].<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false },
        { title: `нет док-вы`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Вы не предоставили скриншот выдачи наказания, от администратора. Обращение не подлежит рассмотрению.<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false },
        { title: `Док-ва не робят`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Предоставленная вами ссылка не работает/открывается или вовсе не действительна. Создайте новую тему и убедитесь что ссылка работает корректно.<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix:PREFIXES.UNACCEPT, status: false },
        { title: `Ошибка разделом`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение никаким образом не относится к предназначению данного раздела.<br><br>Полезные ссылки (все кликабельны):<br>[URL='https://forum.blackrussia.online/forums/%D0%96%D0%B0%D0%BB%D0%BE%D0%B1%D1%8B-%D0%BD%D0%B0-%D0%BB%D0%B8%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.1401/']Жалобы на лидеров.[/URL]<br>[URL='https://forum.blackrussia.online/forums/%D0%96%D0%B0%D0%BB%D0%BE%D0%B1%D1%8B-%D0%BD%D0%B0-%D0%BB%D0%B8%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.1402/']Жалобы на игроков.[/URL]<br>[URL='https://forum.blackrussia.online/forums/%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-anapa.1416/']Технический раздел сервера.[/URL]<br>[URL='https://forum.blackrussia.online/forums/%D0%96%D0%B0%D0%BB%D0%BE%D0%B1%D1%8B-%D0%BD%D0%B0-%D0%BB%D0%B8%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.1400/']Жалобы на Администрацию.[/URL]<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },

        { title: 'Отказы по сути', isDivider: true },
        { title: `Не подлежит`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>К сожалению, данное наказание не подлежит обжалованию.<br>[COLOR=rgb(255, 0, 0)]Нарушения, по которым заявка на обжалование не рассматривается:[/COLOR]<br>[QUOTE]4.1. различные формы "слива";<br>4.2. продажа игровой валюты;<br>4.3. махинации;<br>4.4. целенаправленный багоюз;<br>4.5. продажа, передача аккаунта;<br>4.6. сокрытие ошибок, багов системы;<br>4.7. использование стороннего программного обеспечения;<br>4.8. распространение конфиденциальной информации;<br>4.9. обман администрации.[/QUOTE]Советую ознакомиться с данной темой [URL='https://forum.blackrussia.online/index.php?threads/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D0%BF%D0%BE%D0%B4%D0%B0%D1%87%D0%B8-%D0%B7%D0%B0%D1%8F%D0%B2%D0%BA%D0%B8-%D0%BD%D0%B0-%D0%BE%D0%B1%D0%B6%D0%B0%D0%BB%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BD%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0%D0%BD%D0%B8%D1%8F.1884562/']*Кликабельно*[/URL].<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },
        { title: `Отказ`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>В обжаловании вашего наказания — [COLOR=red]отказано.[/COLOR] Мы не готовы пойти к вам на встречу.<br>Пожалуйста, помните:<br>[QUOTE]• Каждая заявка на обжалование рассматривается индивидуально.<br>• Оформленная заявка на обжалование не означает гарантированного одобрения со стороны руководства сервера.[/QUOTE]<br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },
        { title:`Обж ранее`, content:`${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Вы уже получили шанс на обжалование вашего наказания, срок наказания был снижен ранее.<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },
        { title:`Верно`, content:`${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Наказание было выдано верно.<br>В обжаловании вашего наказания — [COLOR=red]отказано.[/COLOR] Мы не готовы пойти к вам на встречу.<br>Пожалуйста, помните:<br>[QUOTE]• Каждая заявка на обжалование рассматривается индивидуально.<br>• Оформленная заявка на обжалование не означает гарантированного одобрения со стороны руководства сервера.[/QUOTE]<br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },
        { title: `Мин уже есть`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Вам и так выдано минимальное наказание за совершенное вами нарушение.<br>В обжаловании вашего наказания — [COLOR=red][ICODE]отказано.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.UNACCEPT, status: false, },
        { title: `Обман`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Данное наказание можно обжаловать только при условии выдачи компенсации пострадавшей стороне. Для этого вы должны связаться с обманутой стороной, обсудить условия.<br>[U]Примечание:[/U] обманутый игрок должен подтвердить ваши слова в игре.<br>[COLOR=red]Любые попытки обмана администрации, караются блокировкой форумного аккаунта.[/COLOR]<br><br>[COLOR=red][ICODE]Закрыто.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.CLOSE, status:false, },

        { title: 'Одобрения', isDivider: true },
        { title: `Обж мин`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обжалование — [color=lightgreen]одобрено.[/color] Наказание будет снижено до минимальных мер.<br>Рекомендую прочитать [URL='https://forum.blackrussia.online/index.php?threads/%D0%9E%D0%B1%D1%89%D0%B8%D0%B5-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2.312571/']регламент проекта *Кликабельно*[/URL], дабы не повторять ошибки в будущем.[/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },
        { title: `обж фулл`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Администрация сервера готова пойти к вам на встречу. Ваше наказание будет полностью снято.<br>Рекомендую прочитать [URL='https://forum.blackrussia.online/index.php?threads/%D0%9E%D0%B1%D1%89%D0%B8%D0%B5-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2.312571/']регламент проекта *Кликабельно*[/URL], дабы не повторять ошибки в будущем.<br><br>[COLOR=lightgreen][ICODE]Одобрено.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },
        { title: `обж 7 дней`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Администрация сервера готова пойти к вам на встречу. Ваше наказание будет снижено до 7 дней блокировки аккаунта.<br>Рекомендую прочитать [URL='https://forum.blackrussia.online/index.php?threads/%D0%9E%D0%B1%D1%89%D0%B8%D0%B5-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2.312571/']регламент проекта *Кликабельно*[/URL], дабы не повторять ошибки в будущем.<br><br>[COLOR=lightgreen][ICODE]Одобрено.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },
        { title: `обж 15`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Администрация сервера готова пойти к вам на встречу. Ваше наказание будет снижено до 15 дней блокировки аккаунта.<br>Рекомендую прочитать [URL='https://forum.blackrussia.online/index.php?threads/%D0%9E%D0%B1%D1%89%D0%B8%D0%B5-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2.312571/']регламент проекта *Кликабельно*[/URL], дабы не повторять ошибки в будущем.<br><br>[COLOR=lightgreen][ICODE]Одобрено.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },
        { title: `обж 30`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Администрация сервера готова пойти к вам на встречу. Ваше наказание будет снижено до 30 дней блокировки аккаунта.<br>Рекомендую прочитать [URL='https://forum.blackrussia.online/index.php?threads/%D0%9E%D0%B1%D1%89%D0%B8%D0%B5-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%BE%D0%B2.312571/']регламент проекта *Кликабельно*[/URL], дабы не повторять ошибки в будущем.<br><br>[COLOR=lightgreen][ICODE]Одобрено.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },
        { title: `Ошибка`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше наказание было выдано по ошибке администратора, оно будет снято.<br>С администратором будет проведена профилактическая беседа. Приношу извинения за доставленные неудобства.<br><br>[COLOR=lightgreen][ICODE]Одобрено.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.ACCEPT, status: false, },

        { title: 'На рассмотрении / Передача', isDivider: true },
        { title: `Обман PIN`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваш аккаунт будет разблокирован для выдачи компенсации пострадавшей стороне. Весь процесс нужно фиксировать на запись экрана с (/time), у вас есть 24 часа на ответ после совершения сделки с пострадавшим.<br>Напомню, попытки перекинуть имущество на другие аккаунты будет наказываться и вы можете лишиться права обжалования.<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.PIN, status: true, },
        { title: `Pin`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение находится на рассмотрении администрации сервера.<br>Просим вас не создавать обжалования с подобным содержанием, ответ будет дан в этой теме как только это будет возможно. Благодарим вас за ожидание.<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.PIN, status: true, },
        { title: `Pin ВК`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение находится на рассмотрении администрации сервера.<br>Предоставьте ссылку на вашу страницу ВКонтакте.<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.PIN, status: true, },
        { title: `Спец адм`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обращение было передано [color=red]Cпециальной администрации проекта.[/color]<br>Иногда решение/рассмотрение подобных обращений требует больше времени чем 3 дня. Настоятельно рекомендуем вам не создавать темы с подобным содержанием. Ответ будет дан в данной теме, как только это будет возможно.<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.SPECADM, status:true, },
        { title: `КП`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обжалование было передано [color=yellow]Руководству модерации.[/color]<br>Иногда решение/рассмотрение подобных обжалований требует больше времени чем 3 дня. Настоятельно рекомендуем вам не создавать темы с подобным содержанием. Ответ будет дан в данной теме, как только это будет возможно.<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.COMMAND, status: true, },
        { title: `GA`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваше обжалование было передано [color=red]главному администратору.[/color]<br><br>[COLOR=yellow][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.GA, status: true, },
        { title: `Ник`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Ваш аккаунт будет разблокирован на 24 часа, за это время вы должны сменить ник-нейм. Если вы не выполните данные условия, то ваш аккаунт будет заблокирован без права на амнистию.<br><br>[COLOR=red][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.PIN, status: true, },
        { title: `ППВ`, content: `${topImage}<br><br>[CENTER][FONT=georgia][SIZE=4]Здравствуйте, [COLOR=#FFD700]{{ user.name }}[/COLOR].<br><br>Отпишитесь в данной теме, и предоставьте данную информацию:<br>— Город регистрации аккаунта:<br>— Дата регистрации аккаунта:<br>— Сколько донатили на свой аккаунт?<br>— Провайдер интернета при регистрации аккаунта:<br>— Город в котором проживаете на текущий момент:<br><br>[COLOR=orange][ICODE]На рассмотрении.[/ICODE][/COLOR][/SIZE][/FONT][/CENTER]<br><br>${bottomImage}`, prefix: PREFIXES.PIN, status: true, },
    ];



    $(document).ready(() => {

        $(`body`).append(`<script src="https://cdn.jsdelivr.net/npm/handlebars@latest/dist/handlebars.js"></script>`);

        addButton(`Ответы`, `selectAnswer`);
        addButton(`Закрепить`, `pin`);
        addButton(`Одобрить`, `accepted`);
        addButton(`Отказать`, `unaccept`);
        addButton(`КП`, `teamProject`);
        addButton(`Закрыть`, `closed`);
        addButton(`Спец.А`, `specialAdmin`);
        addButton(`Проверено`, `checked`);

        const threadData = getThreadData();

        $(`button#unaccept`).click(() => editThreadData(PREFIXES.UNACCEPT, false));
        $(`button#pin`).click(() => editThreadData(PREFIXES.PIN, true));
        $(`button#accepted`).click(() => editThreadData(PREFIXES.ACCEPT, false));
        $(`button#teamProject`).click(() => editThreadData(PREFIXES.COMMAND, true));
        $(`button#specialAdmin`).click(() => editThreadData(PREFIXES.SPECADM, true));
        $(`button#checked`).click(() => editThreadData(PREFIXES.CHECKED, false));
        $(`button#closed`).click(() => editThreadData(PREFIXES.CLOSE, false));

        $(`button#selectAnswer`).click(async () => {
            const data = await threadData;
            XF.alert(buttonsMarkup(buttons), null, `Выберите готовый ответ:`, `select_answer_container`);
            buttons.forEach((btn, id) => {
                if (btn.isDivider) return;
                $(`button#answers-${id}`).click(() => pasteContent(id, data, true));
            });
        });
    });

    function addButton(name, id) {
        $(`.button--icon--reply`).before(`<button type="button" class="button rippleButton persona-btn" id="${id}">${name}</button>`);
    }

    function buttonsMarkup(buttons) {
        const content = buttons.map((btn, i) => {
            if (btn.isDivider) {
                return `<div class="persona-answer-divider">${btn.title}</div>`;
            } else {
                return `<button id="answers-${i}" class="persona-answer-btn"><span class="button-text">${btn.title}</span></button>`;
            }
        }).join('');
        return `<div class="select_answer">${content}</div>`;
    }

    function pasteContent(id, data = {}, send = false) {
        if (!buttons[id].content) return;

        if (typeof Handlebars === 'undefined') {
            setTimeout(() => pasteContent(id, data, send), 100);
            return;
        }

        const template = Handlebars.compile(buttons[id].content);
        if ($(`.fr-element.fr-view p`).text() === ``) $(`.fr-element.fr-view p`).empty();

        $(`span.fr-placeholder`).empty();
        $(`div.fr-element.fr-view`).html(template(data));
        $(`a.overlay-titleCloser`).trigger(`click`);

        if (send && buttons[id].prefix) {
            editThreadData(buttons[id].prefix, buttons[id].status);
            setTimeout(() => {
                $(`.button--icon.button--icon--reply.rippleButton`).trigger(`click`);
            }, 250);
        } else if (send) {
            setTimeout(() => {
                $(`.button--icon.button--icon--reply.rippleButton`).trigger(`click`);
            }, 250);
        }
    }

    async function getThreadData() {
        const authorLink = $(`a.username`).first();
        const authorID = authorLink.attr(`data-user-id`);
        const authorName = authorLink.text();
        const hours = new Date().getHours();
        const greeting = hours > 4 && hours <= 11 ? `Доброе утро`
                       : hours > 11 && hours <= 15 ? `Добрый день`
                       : hours > 15 && hours <= 21 ? `Добрый вечер`
                       : `Доброй ночи`;
        return { user: { id: authorID, name: authorName, mention: `[USER=${authorID}]${authorName}[/USER]` }, greeting };
    }

    function editThreadData(prefix, pin = false) {
        const threadTitle = $(`.p-title-value`)[0].lastChild.textContent;
        const bodyData = {
            prefix_id: prefix, title: threadTitle, _xfToken: XF.config.csrf,
            _xfRequestUri: document.URL.split(XF.config.url.fullBase)[1],
            _xfWithData: 1, _xfResponseType: `json`,
        };
        if (pin) { bodyData.sticky = 1; }

        fetch(`${document.URL}edit`, { method: `POST`, body: getFormData(bodyData) })
            .then(response => response.json())
            .then(data => {
                if (data.status === 'ok') {
                    showNotification('Статус темы успешно изменен!', 'success');
                    setTimeout(() => location.reload(), 1500);
                } else {
                    showNotification('Произошла ошибка при изменении темы.', 'error');
                }
            })
            .catch(() => showNotification('Сетевая ошибка.', 'error'));
    }

    function getFormData(data) {
        const formData = new FormData();
        for (const key in data) { formData.append(key, data[key]); }
        return formData;
    }

    function showNotification(message, type = 'success') {
        const notification = document.createElement('div');
        notification.textContent = message;
        Object.assign(notification.style, {
            position: 'fixed', top: '20px', right: '20px',
            padding: '12px 20px', borderRadius: '6px', color: 'white',
            backgroundColor: type === 'success' ? '#22c55e' : '#ef4444',
            boxShadow: '0 4px 12px rgba(0,0,0,0.2)', zIndex: '99999',
            opacity: '0', transform: 'translateX(100%)',
            transition: 'opacity 0.3s ease, transform 0.3s ease',
            fontSize: '14px', fontWeight: '500'
        });
        document.body.appendChild(notification);
        setTimeout(() => {
            notification.style.opacity = '1';
            notification.style.transform = 'translateX(0)';
        }, 10);
        setTimeout(() => {
            notification.style.opacity = '0';
            notification.style.transform = 'translateX(100%)';
            setTimeout(() => notification.remove(), 300);
        }, 3000);
    }

})();