Здравствуйте, гость ( Вход | Регистрация )
Отправлено: 1.2.2011, 20:09 | |
Абсолютный новичок Группа: Пользователи Сообщений: 3 Регистрация: 29.1.2011 Пользователь №: 8 664 |
ну а мне кто подскажет куда тот кусок скрипта впихнуть? |
Форум: Сетевые скрипты [PtokaX] · Просмотр сообщения: #37151 · Ответов: 140 · Просмотров: 141 201 |
Отправлено: 31.1.2011, 12:38 | |
Абсолютный новичок Группа: Пользователи Сообщений: 3 Регистрация: 29.1.2011 Пользователь №: 8 664 |
|
Форум: Сетевые скрипты [PtokaX] · Просмотр сообщения: #37104 · Ответов: 140 · Просмотров: 141 201 |
Отправлено: 30.1.2011, 20:19 | |
Абсолютный новичок Группа: Пользователи Сообщений: 3 Регистрация: 29.1.2011 Пользователь №: 8 664 |
Вопрос: Как заставить работать пункт "Последний зарегистрировавшийся юзер" на главной странице? Ответ: Для этого необходимо добавить в скрипт регистрации код, записывающий ник зарегистрировавшегося юзера в файл lastreg.txt, находящийся в папке StatPX_Lite. Код должен выглядеть примерно так: Код local lastreg = io.open(Core.GetPtokaXPath().."scripts/StatPX_Lite/lastreg.txt","w") К примеру, в скрипт Registrator этот код нужно добавить сразу после строк:if lastreg then lastreg:write(user.sNick) lastreg:close() end Код if tCfg.ShowToAll then ToAll("Поприветствуем нового зарегистрировавшегося участника - "..user.sNick.."!") end извините куда в этом вот скрипте это вставить? Прячем большой код под спойлер или в codebox! Код --[[ RegMe 1.0f LUA 5.11 [Strict][API 2] By Mutor 04/07/07 Саморегистрация\Смена пароля RegMe Command Help Команды Описание !rmhelp Помощь !regme Регистрация !passwd смена пароля перевел и добавил функцию сообщения о новою юзере Mariner. Enjoy... ]] --//-- -- Запретить поиск и передачу файлов для нерегистрированных юзеров? true = да/false = нет local RegOnly = false -- Запретить общий чат нерегистрированным юзерам? true = да/false = нет local RegChat = false -- Запретить приватные сообщения нерегистрированным юзерам? true = да/false = нет [приватные месэйджи операторам не блокируются] local RegPms = false -- Сообщать о входе нерегистрированных юзеров оператору? true = да/false = нет local Report = false -- Кто получает сообщения о нерегистрированных логинах и ошибках [только если report = true] local OpNick = "evoll" --//-- local Bot,Scp,Pfx = SetMan.GetString(21),"RegMe",SetMan.GetString(29):sub(1,1) local Menu,SubMenu = SetMan.GetString(0),"Регистрация" local BlockMsg = "\r\n\r\n\tUnregistered users may not chat, pm, search or transfer files in this hub.\r\n".. "\tYou may pm operators for assistance. You may also self-register by typing.\r\n".. "\t!regme <password> or use context menu commands [right click].\r\n\r\n" UserConnected = function(user) SendCmds(user) if user.iProfile == -1 then if Report then OnError("Незарегестрированный юзер: "..user.sNick.." зашел на "..SetMan.GetString(0)) end if RegOnly then return Core.SendToUser(user,"<"..Bot.."> "..BlockMsg..RegCmds["rmhelp"](user,data,cmd)) end end end OpConnected,RegConnected = UserConnected,UserConnected ChatArrival = function(user,data) local _,_,cmd = data:find("%b<> %p(%w+)") if cmd then cmd = cmd:lower() if cmd and RegCmds[cmd] then return Core.SendPmToUser(user,Bot,RegCmds[cmd](user,data,cmd)), true end else local _,_,to,from = string.find(data,"^$To: (%S+) From: (%S+)") if to and from then if RegPms and user.iProfile == -1 then local prof = Core.GetUser(to) if prof then if not Core.GetUserValue(prof,11) then return Core.SendPmToUser(user,to,"<"..Bot.."> "..BlockMsg),true end else return true end end else if RegChat and user.iProfile == -1 then return Core.SendToUser(user,"<"..Bot.."> "..BlockMsg),true end end end end ToArrival = ChatArrival ConnectToMeArrival = function(user, data) if RegOnly and user.iProfile == -1 then local CtmMsg = "\t*Пожалуйста, удалите этот файл из очереди.*" return Core.SendToNick(user.sNick,"<"..Bot.."> "..BlockMsg.. CtmMsg:gsub(" ",string.char(160)).."\r\n\r\n|"),true end end RevConnectToMeArrival = ConnectToMeArrival SearchArrival = function (user, data) if RegOnly and user.iProfile == -1 then local SrMsg = "\t*Пожалуйста, закроте окно поиска.*" local _,_,search = string.find(data,"([^%?]+)|$") search = search or "" local res = "Незарегистрированный юзер"..string.char(92)..user.sNick..", поиск ".. "отключен для тебя."..string.rep("\t",75)..search return Core.SendToUser(user,"$SR "..SetMan.GetString(21).." "..res.." 0 0/0".. SetMan.GetString(0).." ("..Core.GetHubIP()..":"..SetMan.GetString(4)..")"), Core.SendToUser(user,"<"..Bot.."> "..BlockMsg.. SrMsg:gsub(" ",string.char(160)).."\r\n\r\n|"),true end end OnError = function(msg) local user = Core.GetUser(OpNick) if user then Core.SendToUser(user,"<"..Bot.."> "..msg) end end SendCmds = function(user) local Prof = "Unregistered User" if user.iProfile > -1 then Prof = ProfMan.GetProfile(user.iProfile).sProfileName end for i,v in pairs(RegCmds) do local desc,arg1,arg2 = RegCmds[i]() Core.SendToNick(user.sNick,"$UserCommand 1 1 "..SubMenu.."\\".. desc.."$<%[mynick]> "..Pfx..i..arg1.."|") Core.SendToNick(user.sNick,"$UserCommand 1 2 "..SubMenu.."\\".. desc.."$<%[mynick]> "..Pfx..i..arg2.."|") end Core.SendToUser(user,"<"..Bot.."> "..Prof.."'s "..Scp.." команды ".. "включены. Для регистрации воспользуйтесь меню.") end FormatSize = function(int) local i,u,x = tonumber(int) or 0,{"","K","M","G","T","P"},1 while i > 1024 do i,x = i/1024,x+1 end return string.format("%.2f %sB.",i,u[x]) end RegCmds = { regme = function(user,data,cmd) if user then local nick = user.sNick if user.iProfile ~= -1 then return "Твой ник, "..nick..", уже зарегестрирован." elseif Core.GetUserAllData(user) then local _,_,pwd = data:find("%b<> %p%w+ (%S+)|$") if pwd then if nick:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Ник содержит запрещенные символы. ".. "Пожалуйсто, введите другой." end if pwd:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Пароль содержит запрещенные символы. ".. "Пожалуйсто, введите другой." end local hub = SetMan.GetString(0) local addy = SetMan.GetString(2)..":"..SetMan.GetString(3) local share,ip = FormatSize(user.iShareSize),user.sIP local slots = user.iSlots or 0 local mode = "Пассив" if user.bActive then mode = "Актив" end if user.sMode and user.sMode == "5" then mode = "Socks5" end local opmsg = "\r\n\r\n\tЗарегистрировался новый юзер\r\n".. "\tвот детали регистрации:\r\n".. "\t"..string.rep("=",22).."\r\n".. "\tНик:\t"..nick.."\r\n".. "\tПароль:\t"..pwd:gsub(".","x").."\r\n".. "\tШара:\t"..share.."\r\n".. "\tIP:\t"..ip.."\r\n".. "\tРежим работы:\t"..mode.."\r\n".. "\tОткрыто слотов:\t"..slots.."\r\n" RegMan.AddReg(nick, pwd, 3) Core.SendToOps("<"..Bot.."> "..opmsg) Core.SendToAll("<"..Bot.."> Поприветствуем нового зарегестрировавшегося пользователя "..nick.."!;)") return "\r\n\r\n\tПриветствую. Вы удачно ".. "зарегистрировались.\r\n\t"..string.rep("=",40).."\r\n".. "\tНазвание хаба:\t"..hub.."\r\n".. "\tАдрес хаба:\t"..addy.."\r\n".. "\tНик:\t"..nick.."\r\n".. "\tПароль:\t"..pwd.."\r\n\r\n".. "\t"..string.rep("=",40).."\r\n".. "\tПожалуйста обратите внимание на эту информацию.\r\n".. "\tПожалуйста перезайдите на хаб, чтобы активизировать ваш статус.\r\n" else return "Ошибка! Использовать: "..Pfx..cmd.." <пароль>" end end else return "Зарегистрироваться"," %[line:Пароль]"," %[line:Пароль]"," <password>>" end end, passwd = function(user,data,cmd) if user then if user.iProfile == -1 then return "Твой ник, "..user.sNick..", не зарегестрирован." elseif Core.GetUserAllData(user) then local _,_,oldpass,newpass = data:find("%b<> %p%w+ (%S+) (.+)|$") if oldpass and newpass then local pwd,prof = RegMan.GetReg(user.sNick).sPassword,user.iProfile if pwd and prof then if oldpass:lower() ~= pwd:lower() then return "Неверный пароль. ".. "Попробуйте снова. [case insensitive]" end if newpass:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Пароль содержит запрещенные символы. ".. "Пожалуйста, введите другой." end if newpass:lower() == oldpass:lower() then return "Вы не можете поменять пароль на такой же! ".. "Пожалуйста, введите другой." end RegMan.ChangeReg(user.sNick, newpass, prof) return "Вы успешно сменили пароль с ".. oldpass.." на "..newpass end else return "Ошибка! Использовать: ."..Pfx..cmd.." <старый пароль> <новый пароль>" end end else return "Сменить пароль"," %[line:Текущий пароль] %[line:Новый пароль]", " %[line:Текущий пароль] %[line:Новый пароль]"," <old password> <new password>" end end, rmhelp = function(user,data,cmd) if user then local reply = "\r\n\r\n\t"..Scp.." Help\r\n\r\n\tКоманды\t\tОписание\r\n".. "\t"..string.rep("=",40).."\r\n" for i,v in pairs(RegCmds) do local desc = RegCmds[i]() reply = reply.."\t"..Pfx..string.format("%-15s",i).."\t"..desc.."\r\n" end return reply.."\n\t"..string.rep("=",40).."\r\n\r\n" else return "Справка","","" end end, } |
Форум: Сетевые скрипты [PtokaX] · Просмотр сообщения: #37086 · Ответов: 140 · Просмотров: 141 201 |
Открытая тема (есть новые ответы) Открытая тема (нет новых ответов) Горячая тема (есть новые ответы) Горячая тема (нет новых ответов) |
Опрос (есть новые голоса) Опрос (нет новых голосов) Закрытая тема Тема перемещена |
|
Сейчас: 8.5.2024, 7:29 |