myDC.ru

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

 
История благодарностей участнику evg. Спасибо сказали: 13
Дата поста: В теме: За сообщение: Спасибо сказали:
10.2.2010, 14:35 Gagme
API2 | Заглушка для юзеров
причина не записывалась только если глушить выделенного юзера по ипу
ищем:
Код
    [tCmd.GagUserIP] = function(user,data)
        local _,_,nick = data:find("^(%S+)")
        local _,_,num,w = data:find("^%S+%s+(%d+)([mhdwMY])")
        if nick then
            local usr = Core.GetUser(nick)
            if usr then
                local IP = usr.sIP
                if num and w then
                    local iGagTime = GetGagTime(num,w)
                    if tIPs[IP] and (tIPs[IP][1] == 0 or tIPs[IP][1]+tIPs[IP][2]-os.time(os.date("*t")) > iGagTime) then
                        ToUser(user,"Ошибка: IP "..IP.." ("..nick..") уже заглушен на срок, превышающий тот, что указан Вами.")
                    else
                        local _,_,reason = data:find("^%d+%.%d+%.%d+%.%d+%s+%d+%w%s+(.+)$")
                        tIPs[IP] = {iGagTime,os.time(os.date("*t")),user.sNick,reason}
                        Save()
                        local sReason = ""
                        if reason then sReason = " Причина: "..reason.."." end
                        ToOps(user.sNick.." заткнул IP "..IP.." ("..nick..") на"..Ling:TimeToString(iGagTime).."."..sReason)
                    end
                else
                    if tIPs[IP] and tIPs[IP][1] == 0 then
                        ToUser(user,"Ошибка: IP "..IP.." ("..nick..") уже заглушен.")
                    else
                        local _,_,reason = data:find("^%d+%.%d+%.%d+%.%d+%s+(.+)$")
                        tIPs[IP] = {0,os.time(os.date("*t")),user.sNick,reason}
                        Save()
                        local sReason = ""
                        if reason then sReason = " Причина: "..reason.."." end
                        ToOps(user.sNick.." заткнул IP "..IP.." ("..nick..")."..sReason)
                    end
                end
            else
                ToUser(user,"Ошибка: юзер "..nick.." не найден.")
            end
        else
            ToUser(user,"Ошибка: не указан ник.")
        end
    end,


меняем(у меня это 281 строка):
Код
                        local _,_,reason = data:find("^%d+%.%d+%.%d+%.%d+%s+%d+%w%s+(.+)$")

на
Код
                        local _,_,reason = data:find("^%S+%s+%d+%w%s+(.+)$")

тут видимо alex82 просто опечатался.

Что бы писало всем о заглушке, я добавил, сразу после
Код
                        ToOps(user.sNick.." заткнул IP "..IP.." ("..nick..") на"..Ling:TimeToString(iGagTime).."."..sReason)

это:
Код
                        Core.SendToAll("<ИМЯ_БОТА> "..user.sNick.." заткнул юзера "..nick.." на"..Ling:TimeToString(iGagTime).."."..sReason)

в остальных местах по аналогии, НО для гага ипа (так как ник не известен) это:
Код
                    Core.SendToAll("<HAPPY> "..user.sNick.." заглушил IP ("..IP..") на"..Ling:TimeToString(iGagTime).."."..sReason)

MIKHAIL
8.2.2010, 6:56 меню
поидее при нажатии на "Прислать меню" выполняется команда
Цитата
Core.SendToNick(user.sNick, "$UserCommand 1 3 Меню хаба\\Информация для "..user.sNick.."\\Партнёры"||"))
и так далее.
За правильность не отвечаю, не проверял
Saymon21
21.1.2010, 3:27 Rss. Отображение новинок движка Magneto при подключении юзера
не знаю, что у тебя под жанром идет, но попробуй в коде:
Код
local Fields = {
    ["<title>"] = true,
    ["<pubDate>"] = false,
    ["<category>"] = false,
    ["<description>"] = false,
    ["<link>"] = true,
    ["<author>"] = false,
    ["<dc:creator>"] = false,
    ["<comments>"] = false,
    ["<guid>"] = false,
    }

поставить ["<category>"] = true,
получится:
Код
local Fields = {
    ["<title>"] = true,
    ["<pubDate>"] = false,
    ["<category>"] = true,
    ["<description>"] = false,
    ["<link>"] = true,
    ["<author>"] = false,
    ["<dc:creator>"] = false,
    ["<comments>"] = false,
    ["<guid>"] = false,
    }
Saymon21
19.1.2010, 2:51 Rss. Отображение новинок движка Magneto при подключении юзера
на вскидку, строки 201 и 202:
Код
for i,v in ipairs(val) do reply = reply..v end--.."\n" end
reply=reply.."\n------------------------------------------------------------------------------------------------------------------------------------\n"

заменить на:
Код
for i,v in ipairs(val) do reply = reply..v.."\n" end
reply=reply.."------------------------------------------------------------------------------------------------------------------------------------\n"


под рукой ничего нет, что бы проверить.
Saymon21, SAG
18.1.2010, 14:42 Rss. Отображение новинок движка Magneto при подключении юзера
в скрипте уже предусмотрен вывод вместе с MOTD, зачем что то переделывать?
Код
-- Append new feeds to MOTD? [Motd restored at script exit]
local DoMotd = true

-----------------------------------------------------------------------------------------------

updated:
по просьбе Хабыч`а, вот в замен MOTD реализовал вывод на UserConnected
все на скорую руку, но, по идее, работать должно без проблем.


[attachment=3931:FeedLogon.7z]

если у вас сайт не в UTF8 а в ANSI (cp1251) то идем на 210 строку и в конце строки заменяем:
Код
Utf8ToAnsi(reply)
на
Код
reply


все остальное в скрптие не работает big_smile.gif
Saymon21
9.1.2010, 18:04 ChatGuard v0.2
API2 | Продвинутый скрипт блокировки чата и ПМ до ввода кода
Название скрипта: ChatGuard v0.2
Версия API: 2
Автор: evg
Дата релиза: 10.01.2010

Описание скрипта: продвинутый скрипт блокировки чата и ПМ до ввода разблокировочного код

Функционал:
+ выбор блокировки (чат и\или приват)
+ исключения по IP (весь скрипт затевался ради этого, что бы внешние юзеры без реги не могли писать(а по факту - спамить))
+ исключения по нику
+ исключения по профилю
+ уведомления опам о попытках авторизации и посылаемом тексте

За основу взят скрипт:
[F12P-scripts]
*LUA 5.1.3 PX 0.4.1.1 hub fix 05.12.2008
от Foreteller12ChatGuard

[attachment=3855:ChatGuard_v0.2.lua]

ЗЫ: Я не прогер, смотрел готовые скрипты и писал по аналогии big_smile.gif
ЗЗЫ: Тестировал на PtokaX 0.4.1.1
Invisible, rival, Saymon21, FreeNas, stone
14.2.2009, 12:53 Say_script 1.03 - 1.031
API1 | Скрипт, позволяющий писать от любого имени
Название скрипта: Bot Say
Версия скрипта 1.0
Версия API: API2

Описание скрипта:
Скрипт, позволяющий писать от имени бота и без ника.
За основу взят say_script.
    Особенности:
  1. убрал возможность писать от чужого ника, т.к. считаю это не приличным;
  2. сделал возможность писать от имени Бота;
  3. информация опам о сказанном посылается в чат, а не в приват;


ЗЫ: Если скрипт никому не нужен, аналогичный уже есть(я не видел) или сочтете плагиатом - удаляйте, переделывал исключительно под свои потребности, решил поделиться.



жаль, что перенесли, лучше все же отдельно big_smile.gif
но хозяин - барин, как говорится big_smile.gif
truth

RSS Сейчас: 27.4.2024, 9:25