myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
 
Ответить в данную темуНачать новую тему

> Разрешения для профилей, помогите прикрутить

Теги
Нет тегов для показа
AVANGARD
сообщение 1.11.2009, 8:53
Сообщение #1


Начинающий
*

Группа: Пользователи
Сообщений: 15
Регистрация: 26.10.2008
Из: Россия, Омск
Пользователь №: 892
Спасибо сказали: 0 раз




Собственно скрипт запрещающий множественный вход с одного IP
Код
if frmHub then
  function ValidateNickArrival(tUser)
    for _,v in pairs(frmHub:GetOnlineUsers()) do
      if v.sIP==tUser.sIP then
        tUser:SendData"*** На хабе введено ограничение: один ip - один ник"
        tUser:Disconnect()
      end
    end
  end
  NewUserConnected=ValidateNickArrival
  OpConnected=ValidateNickArrival
else
function ValidateNickArrival(tUser)
    for _,v in pairs(Core.GetOnlineUsers()) do
      if v.sIP==tUser.sIP then
        Core.SendToUser(tUser,"*** На хабе введено ограничение: один ip - один ник")
        Core.Disconnect(tUser)
      end
    end
  end
  UserConnected=ValidateNickArrival
  RegConnected=ValidateNickArrival
  OpConnected=ValidateNickArrival
end

И собственно надо что бы разрешить множественный вход мастеру, операторам и випам! Заранее спасибо
Go to the top of the page
+Quote Post
Wariner
сообщение 1.11.2009, 10:16
Сообщение #2


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




Код
local tProfiles = {  -- 1 - вход без ограничений
    [0] = 1, -- Мастер
    [1] = 1, -- ОПератор
    [2] = 0, -- VIP
    [3] = 0, -- Зарегистрированный пользователь
    [-1] = 0, -- Незарегистрированный юзер
}

if frmHub then
  function ValidateNickArrival(tUser)
        if tProfiles[tUser.iProfile] ~= 1 then
    for _,v in pairs(frmHub:GetOnlineUsers()) do
      if v.sIP==tUser.sIP then
        tUser:SendData"*** На хабе введено ограничение: один ip - один ник"
        tUser:Disconnect()
              end
      end
    end
  end
  NewUserConnected=ValidateNickArrival
  OpConnected=ValidateNickArrival
else
function ValidateNickArrival(tUser)
       if tProfiles[tUser.iProfile] ~= 1 then
    for _,v in pairs(Core.GetOnlineUsers()) do
      if v.sIP==tUser.sIP then
        Core.SendToUser(tUser,"*** На хабе введено ограничение: один ip - один ник")
        Core.Disconnect(tUser)
                end
      end
    end
  end
  UserConnected=ValidateNickArrival
  RegConnected=ValidateNickArrival
  OpConnected=ValidateNickArrival
end


PS: добавил в частозадаваемые вопросы! http://mydc.ru/index.html?showtopic=1164&a...ost&p=22528
Go to the top of the page
+Quote Post
Ksan
сообщение 1.11.2009, 10:18
Сообщение #3


Белый Волк
*********

Группа: Пользователи
Сообщений: 1 723
Регистрация: 11.9.2008
Из: г.Томск
Пользователь №: 516
Спасибо сказали: 657 раз




Тут надо в функцию внести проверку профиля и наличие прав на что-то минимальное и обязательное для всех перечисленных профилей, например, на дроп: bDrop (это добавить к проверке наличия в хабе юзера с таким же айпи)
Перед этим, естественно, нужно взять профиль юзера.
Почему я сам просто не исправил скрипт, как ему надо - не хочу лишать человека удовольствия попытаться самому что-то сделать. big_smile.gif

Добавлено через минуту:
Хмм, пока я отправлял сообщение, уже сделали то, чего я боялся big_smile.gif
Только мой способ намного короче - добавляется всего одна строка под названием функции и добавляется в строке проверки еще один элемент.
Go to the top of the page
+Quote Post
AVANGARD
сообщение 1.11.2009, 14:15
Сообщение #4


Начинающий
*

Группа: Пользователи
Сообщений: 15
Регистрация: 26.10.2008
Из: Россия, Омск
Пользователь №: 892
Спасибо сказали: 0 раз




Wariner, спасибо огромное!

Trans, так и ты напиши свойю версию big_smile.gif может она красивее будет
Go to the top of the page
+Quote Post
Ksan
сообщение 1.11.2009, 14:30
Сообщение #5


Белый Волк
*********

Группа: Пользователи
Сообщений: 1 723
Регистрация: 11.9.2008
Из: г.Томск
Пользователь №: 516
Спасибо сказали: 657 раз




Я же объяснил, как можно сделать. А про "почему не написал":
Цитата
Почему я сам просто не исправил скрипт, как ему надо - не хочу лишать человека удовольствия попытаться самому что-то сделать.
Go to the top of the page
+Quote Post

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts Topic has attachmentsСкрипт правил хаба с разделением профилей.
Очень нужен скрипт правил хаба с разделением профилей.
12 Wan 11 924 30.6.2010, 18:53 Посл. сообщение: Артём
Closed Topic has attachmentsТаблица Профилей
7 MEXAHuK 10 639 11.12.2008, 18:03 Посл. сообщение: Wariner

 



RSS Сейчас: 27.4.2024, 13:12