Bu modulun sənədləşdirmə səhifəsi səhifəsində yaradıla bilər
local p = {} -- p stands for package
function p.main (frame)
local arg1 = mw.ustring.gsub(frame:getParent().args[1] or '', '\226\128\142', '') -- invisible ‎ mark
local arg2 = mw.ustring.gsub(frame:getParent().args[2] or '', '\226\128\142', '') -- invisible ‎ mark
local agent, moment
if arg2 == nil or arg2 == '' then
agent = arg1
else
if mw.ustring.match(arg1, '[0-9]+ [a-z]+ 20[0-9]+') then
agent = arg2
moment = arg1
else
agent = arg1
moment = arg2
end
moment = mw.text.trim(moment) -- два пробела L-39 ломают «Инструменты обсуждения»
end
agent = mw.text.trim(agent) -- пробел в начале ломает ip: Special:Contributions/_ip
if agent == nil or agent == '' then
return '<span class="error">İmzasız: səhv parametrlər daxil edilib</span>'
end
local res = '<small class="autosigned"> — \'\'Bu imzasız yazı'
if mw.ustring.match(agent, '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$')
or mw.ustring.match(agent, '^[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+$')
or mw.ustring.match(agent, '^[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+:[0-9a-fA-F]+$') then
res = res .. ' [[Special:Contributions/' .. agent .. '|' .. agent .. ']] ({{fitts|User talk:' .. agent .. '|m}}) tərəfindən əlavə edilib;'
else
res = res .. ' [[User:' .. agent .. '|' .. agent .. ']] ({{fitts|User talk:'
.. agent .. '|m}} • {{fitts|Special:Contributions/' .. agent .. '|t}}) adlı istifadəçi tərəfindən əlavə edilib;'
end
if moment ~= nil and moment ~= '' then
if not mw.ustring.match(moment, '(UTC)') then
moment = moment .. ' (UTC)' -- L-39
end
res = res .. ' ' .. moment
end
res = res .. '\'\'</small>'
return frame:preprocess(res)
end
return p