1. Добро Пожаловать к нам на Форум Гость! Если вы еще не зарегистрировались просим вас зарегистрироваться!

    Скрыть объявление
  2. Для того что бы скачивать с нашего форума, нужно зарегистрироватся!

    Скрыть объявление
  3. Цены на серверах: Админка 35грн/мес Випка 20грн/мес.

    Скрыть объявление
  4. Девушкам играющим на сервере Випка Бесплатно!

    Скрыть объявление
Скрыть объявление

Привет! Администрация проекта рада видеть тебя у нас на сайте! Все вопросы по поводу прав администратора на сервере, VIP привелегий, снятия бана и так далее решаются на форуме в специально отведенных темах для этого. В чате подобные посты будут игнорироваться. Для удобства рекомендуем войти на сайт, как пользователь.

Скрыть объявление

Для получения бонусов на сервере (Випка, антифлеш от своих, денежные), посещайте форум!

[Плагин] Управление админами

Тема в разделе "Плагины для AMXModX", создана пользователем qpi3ik, 27 июл 2015.

  1. TopicStarter Overlay
    qpi3ik

    qpi3ik Создатель Команда форума Гл.Администратор

    Регистрация:
    28 дек 2014
    Сообщения:
    459
    Симпатии:
    221
    Баллы:
    162
    Плагин управления Админами

    Это переделка стандартного плагина amxbans_core

    Отличительные особенности:
    - совместная работа с базой данных и файлом users.ini (квар amxbans_use_admins_file "3")
    1. amxbans_use_admins_file 0 - работает с БД стандарт
    2. amxbans_use_admins_file 1 - работа с файлом стандарт
    3. amxbans_use_admins_file 2 - админы отключены стандарт
    4. amxbans_use_admins_file 3 работа с БД и файлом одновременно добавлен
    Ранее, для работы с БД устанавливался квар "0". Теперь, можно ставить "3", если есть смысл (если есть админы в файле)

    - добавление админов командой amx_addadmin. Место хранения- в зависимости от квара amxbans_use_admins_file
    Формат команды (консоль, флаг ADMIN_RCON): amx_addadmin "ник или steamid" "пароль" "флаги доступа" "тип авторизации (name или steam)" "кол-во дней".
    Плагин сам определит тип авторизации в зависимости от формата ника. т.е. не получится случайно установить ник вместо steamID и наоборот, а также, установит время истечения админки, если кол-во дней больше "0".

    - создание дампа админов в файл (квар amxbans_dump_sql 0/1). При недоступности БД, админы будут загружены из дампа (если он есть). Если Вы не добавляете админов по несколько штук в день, то квар можно не включать (даже, желательно). В этом случае создайте дамп: включить amxbans_dump_sql 1 и перезагрузить (сменить) карту и вернуть amxbans_dump_sql в "0"

    - переключение на users.ini, если БД недоступна и нет админов в дампе и др.. Другими словами: если админы где-то прописаны, то они обязательно будут загружены при возникновении проблем с их хранилищами (если указаны соответствующие настройки)

    - при изменении количества дней в users.ini вручную, дата истечения пересчитывается

    - распознает 2 типа паролей: простой пароль и md5 (как в БД, так и в users.ini)

    - добавлен натив для отображения срока действия админки
    Для успешной компиляции сторонних плагинов с использованием натива, необходимо добавить строку native days_left_info(id); в инклюд (например, в amxmodx.inc)

    - автоматическое удаление истекших аккаунтов из Базы Данных и users.ini.
    Управление функцией: квар amxbans_expadmins_delete
    Через сколько дней после истечения админки удалить запись из БД. "0" - не удалять
    Если к базе привязаны несколько серверов:
    достаточно включить квар на любом из серверов (включение квара на всех серверах- не имеет смысла), т.к истекшие аккаунты удаляются для всех серверов одновременно
    Удаление из users.ini физически не происходит. Выполняется комментирование строки.

    Вариант 1- срок действия- бессрочно
    Ник (steamID) / пароль / флаги / тип авторизации
    "nickname" "pass" "abc" "ab"

    Вариант 2 - с указанием времени действия
    Ник (steamID) / пароль / флаги / тип авторизации / время (дней)
    "nickname" "pass" "abc" "ab" "0"

    Если время = 0, срок действия- бессрочно. При указании времени >0 появляется колонка "дата истечения"- ее трогать не нужно.
    Результат после указания времени больше 0:(добавилась колонка №5, время установилось =0)
    Ник (steamID) / пароль / флаги / тип авторизации / время (дней) / дата истечения
    "nickname" "pass" "abc" "ab" "0" "1438510885"

    Для изменения даты истечения- укажите новый срок в колонке "Время" (отсчет- с текущего дня). Новая дата истечения изменится сама.

    Если время и дата истечения = 0, срок действия- бессрочно
    Если время = 0, а дата истечения > 0, срок действия- до даты истечения
    После наступления даты истечения, админ будет отключен автоматически:
    ;"nickname" "pass" "abc" "ab" "0" "1438510885"
    Дата истечения в формате Unix

    Можете воспользоваться командой amx_addadmin
    Компилировать локально. Для успешной компиляции необходимо добавить строку
    native days_left_info(id);
    в инклюд (например, в amxmodx.inc)
    PHP:
    displayMenu(idpos)
    {
       if (
    pos 0)
          return
       new 
    menuBody[512]
       new 
    0
       
    new start pos MENUITEMSPERPAGE
    //добавляем блок
       
    new exp days_left_info(id)
       new 
    left[32]
       if (
    exp == 0)
       
    format(left31"Бессрочная")
       else 
    num_to_str(expleft31)
    ////
       
    if (start >= g_menusNumber)      // MENUS_NUMBER
          
    start pos g_menuPosition[id] = 0
       
    new len format(menuBody511,
    //заменяем строку
       //g_coloredMenus ? "\yAMX Mod X Menu\R%d/%d^n\w^n" : "AMX Mod X Menu %d/%d^n^n" , pos + 1, (g_menusNumber / MENUITEMSPERPAGE) + (((g_menusNumber % MENUITEMSPERPAGE) > 0) ? 1 : 0))
    //на
       
    g_coloredMenus "\yAMX Mod X Menu\R%d/%d^nАдминка истекает через, дн.: %s^n^n" "AMX Mod X Menu %d/%d^nАдминка истекает через,  дн: %s.^n^n" pos 1, (g_menusNumber MENUITEMSPERPAGE) + (((g_menusNumber MENUITEMSPERPAGE) > 0) ? 0), left)
    [​IMG]
    [​IMG]
    --- Добавлено сообщение, 22 июл 2015, дата сообщения: 22 июл 2015 ---
    Удалять истекшие Админки через месяц.

    Строка 659
    PHP:
    AND ((`PREFIX_amxadmins`.`expired` < UNIX_TIMESTAMP(NOW())) AND (`PREFIX_amxadmins`.`days` > '0')));")
    замените на
    PHP:
    AND (((`PREFIX_amxadmins`.`expired` + '2629743')< UNIX_TIMESTAMP(NOW())) AND (`PREFIX_amxadmins`.`days` > '0')));"
    --- Добавлено сообщение, 27 июл 2015 ---
    Исправление
    Устранено падение некоторых серверов.
     

    Вложения:

    :

Поделиться этой страницей

download cs by zombr

Покупка Админки/VIP

Купить прямо сейчас

download cs by zombr

ВАС ЗАБАНИЛИ?

ПОДАЙТЕ ЗАЯВКУ НА РОЗБАН!

download cs by zombr

АДМИН ОКАЗАЛСЯ НЕ ПРАВ?

ПОДАЙТЕ ЖАЛОБУ ПРЯМО СЕЙЧАС!