Модуль:UserInfo: различия между версиями
Материал из Space Station 14 Вики
AsnDen (обсуждение | вклад) м (hmmm) |
CatBG (обсуждение | вклад) Нет описания правки |
||
(не показаны 52 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
local p = {} | local p = {} | ||
function p. | function p.getServersInfo(frame) | ||
local | local servers = frame.args[1] | ||
local categories = servers | |||
if servers == "none" or servers == "None" or servers == "" then return end | |||
--Дублируется специально, на случай, если кто-то поставит или не поставит побелы | |||
servers = servers:gsub(', ', '}}\n:*{{abb|') | |||
servers = servers:gsub(',', '}}\n:*{{abb|') | |||
categories = categories:gsub(', ', '|short}}]] [[Категория:Редакторы {{abb|') | |||
categories = categories:gsub(',', '|short}}]] [[Категория:Редакторы {{abb|') | |||
return frame:preprocess(':*{{abb|'.. servers.. '}} '.. '[[Категория:Редакторы {{abb|'.. categories.. '|short}}]]') --нужно сделать проверку, что сервер существует | |||
end | |||
function p.getRolesInfo(frame) | |||
local roles = frame.args[1] | |||
--Делим строку на составляющие. Разделитель: ", " | |||
t = {} | |||
for str in string.gmatch(roles, "([^, ]+)") do | |||
table.insert(t, str) | |||
end | |||
--Убирает ", ", если они были для последующем проверки (чтобы она не нашла запятых) | |||
roles = roles:gsub(', ', 'Cool meme here') | |||
--вторая проверка, на случай, если пробелы не ставились | |||
for str in string.gmatch(roles, "([^,]+)") do | |||
table.insert(t, str) | |||
end | |||
local categories = "" | |||
for i in pairs(t) do | |||
if t[i] == "Викидел" or t[i] == "викидел" or t[i] == "Кивикед" or t[i] == "кивикед" or t[i] == "Редактор вики" or t[i] == "редактор вики" then categories = categories.. "[[Категория:Викиделы]]" end | |||
if t[i] == "лоровед" or t[i] == "Лоровед" or t[i] == "Лороед" or t[i] == "лороед" then categories = categories.. "[[Категория:Лороведы]]" end | |||
if t[i] == "Куратор вики" or t[i] == "куратор вики" then categories = categories.. "[[Категория:Кураторы разделов]]" end --Потом доделаю | |||
end | |||
if categories == "" then categories = categories.. "[[Категория:Доступ к вики]]" end | |||
if roles == "none" or roles == "None" then return "" | |||
else return frame:preprocess(categories) end | |||
end | end | ||
return p | return p |
Текущая версия от 20:38, 13 сентября 2024
Для документации этого модуля может быть создана страница Модуль:UserInfo/doc
local p = {} function p.getServersInfo(frame) local servers = frame.args[1] local categories = servers if servers == "none" or servers == "None" or servers == "" then return end --Дублируется специально, на случай, если кто-то поставит или не поставит побелы servers = servers:gsub(', ', '}}\n:*{{abb|') servers = servers:gsub(',', '}}\n:*{{abb|') categories = categories:gsub(', ', '|short}}]] [[Категория:Редакторы {{abb|') categories = categories:gsub(',', '|short}}]] [[Категория:Редакторы {{abb|') return frame:preprocess(':*{{abb|'.. servers.. '}} '.. '[[Категория:Редакторы {{abb|'.. categories.. '|short}}]]') --нужно сделать проверку, что сервер существует end function p.getRolesInfo(frame) local roles = frame.args[1] --Делим строку на составляющие. Разделитель: ", " t = {} for str in string.gmatch(roles, "([^, ]+)") do table.insert(t, str) end --Убирает ", ", если они были для последующем проверки (чтобы она не нашла запятых) roles = roles:gsub(', ', 'Cool meme here') --вторая проверка, на случай, если пробелы не ставились for str in string.gmatch(roles, "([^,]+)") do table.insert(t, str) end local categories = "" for i in pairs(t) do if t[i] == "Викидел" or t[i] == "викидел" or t[i] == "Кивикед" or t[i] == "кивикед" or t[i] == "Редактор вики" or t[i] == "редактор вики" then categories = categories.. "[[Категория:Викиделы]]" end if t[i] == "лоровед" or t[i] == "Лоровед" or t[i] == "Лороед" or t[i] == "лороед" then categories = categories.. "[[Категория:Лороведы]]" end if t[i] == "Куратор вики" or t[i] == "куратор вики" then categories = categories.. "[[Категория:Кураторы разделов]]" end --Потом доделаю end if categories == "" then categories = categories.. "[[Категория:Доступ к вики]]" end if roles == "none" or roles == "None" then return "" else return frame:preprocess(categories) end end return p