Редактировать SourceBans

Тема в разделе "Программирование / Скриптинг", создана пользователем spore, 18 мар 2012.

  1. spore

    spore SubPlay.ru

    Сообщения:
    640
    Симпатии:
    148
    Помогите пожалуйста, как нужно изменить часть кода плагина Sourcebans
    Код:
    	if(CheckCommandAccess(client, "sm_unban", ADMFLAG_UNBAN|ADMFLAG_ROOT))
    		AddMenuItem(menu, "0", "Permanent");
    	AddMenuItem(menu, "10", "10 Minutes");
    	AddMenuItem(menu, "30", "30 Minutes");
    	AddMenuItem(menu, "60", "1 Hour");
    	AddMenuItem(menu, "240", "4 Hours");
    	AddMenuItem(menu, "1440", "1 Day");
    	AddMenuItem(menu, "10080", "1 Week");
    Нужно чтобы админам с флагом KICK был доступен бан только на 10 минут, а у админов с флагом BAN была возможность банить от 10 минут до недели. И у админов с флагом UNBAN должна быть возможность банить на любой срок.
     
    Последнее редактирование: 18 мар 2012
  2. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    PHP:
    if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN))
    {
        
    AddMenuItem(menu"""");
    }
    Сделать проверку для каждого пункта на админ флаг, и если есть, то добавить итем.
     
    CTe6eJIeK_vRn и spore нравится это.
  3. spore

    spore SubPlay.ru

    Сообщения:
    640
    Симпатии:
    148
    PHP:
    if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK)) 

        
    AddMenuItem(menu"10""10 Минут"); 


    if(
    GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN)) 

        
    AddMenuItem(menu"30""30 Mинут");
        
    AddMenuItem(menu"60""1 Час");
        
    AddMenuItem(menu"240""4 Часа");
        
    AddMenuItem(menu"1440""1 День");
        
    AddMenuItem(menu"10080""1 Неделя");


    if(
    GetAdminFlag(GetUserAdmin(client), ADMFLAG_UNBAN)) 

        
    AddMenuItem(menu"0""Навсегда"); 

    Получается так?
     
    Последнее редактирование: 18 мар 2012
  4. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    Да, должно работать)
     
    spore нравится это.
  5. spore

    spore SubPlay.ru

    Сообщения:
    640
    Симпатии:
    148
    Таким образом не получается. Итемы на соответствуют нужным флагам.
     
  6. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    Да почитайте вы основы програмирования. Вобщем, существует оператор || - логический ИЛИ. Если одно из выражений истина, то выполняется код.

    PHP:
    if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN
    {  
        
    AddMenuItem(menu"10""10 Минут");  
    Выражений можно указать и больше.

    PHP:
    if(GetAdminFlag(GetUserAdmin(client), ADMFLAG_KICK) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_BAN) || GetAdminFlag(GetUserAdmin(client), ADMFLAG_UNBAN)) 
    {  
        
    AddMenuItem(menu"10""10 Минут");  
     
    Последнее редактирование: 19 мар 2012
  7. zom676

    zom676

    Сообщения:
    8
    Симпатии:
    0
    скажите а можно ли отключить функцию sm_unban без правки плагина,чтоб не все подряд админы могли разбанивать,а только я
     
  8. KapaT

    KapaT Эгоист

    Сообщения:
    1.983
    Симпатии:
    408
    zom676,убери у админа флаг Е
     
  9. zom676

    zom676

    Сообщения:
    8
    Симпатии:
    0
    а как это сделать? у меня у всех админов стоит полный доступ,если я ставлю какие-то определенные флаги,то админка вообще перестает работать
     
    Последнее редактирование: 6 апр 2012
  10. KapaT

    KapaT Эгоист

    Сообщения:
    1.983
    Симпатии:
    408
    zom676,сделай полный доступ но без флага Е тоесть(ABCDFGJIKLVN)
     
  11. semjef

    semjef semjef.ru

    Сообщения:
    1.031
    Симпатии:
    473
    Флаг b обязателен просто, видимо ты его не давал:)
     
  12. zom676

    zom676

    Сообщения:
    8
    Симпатии:
    0
    я так делаю,и админка пропадает вообще,флаг Б давал,и толку никакого,всё равно не работает,а по другому никак нельзя оключить? может команду какую-нить прописать?
     
    Последнее редактирование: 6 апр 2012