![]() |
مسابقه سال اسلامیکال |
همزمان با آغاز ماه رمضان، مسابقه سال اسلامیکال با هدف معرفی اسلامیکال و توسعه مقالات در زمینه اسلامی آغاز شدهاست. علاقهمندان به شرکت در این مسابقه میتوانند تا پایان ماه رمضان ۱۴۴۶ قمری برای آن نامنویسی کنند. فهرستی از مقالات پیشنهادی جهت ایجاد در اینجا وجود دارد |
پودمان:Reply to
پرش به ناوبری
پرش به جستجو
توضیحات این پودمان میتواند در پودمان:Reply to/توضیحات قرار گیرد.
local p = {}
function p.replyto(frame)
local origArgs = frame:getParent().args
local args = {}
local maxArg = 1
local usernames = 0
for k, v in pairs(origArgs) do
if type(k) == 'number' then
if mw.ustring.match(v,'%S') then
if k > maxArg then maxArg = k end
usernames = usernames + 1
local title = mw.title.new(v)
if not title then return '<strong class="error">خطا در [[الگو:پاسخ به]]: ورودی دارای نویسههای ممنوعه است.</strong>' end
args[k] = title.rootText
end
elseif v == '' and k:sub(0,5) == 'label' then
args[k] = '​'
else
args[k] = v
end
end
if usernames > (tonumber(frame.args.max) or 50) then
return string.format(
'<strong class="error">خطا در [[الگو:پاسخ به]]: بیش از %s نام تعریف شدهاست.</strong>',
tostring(frame.args.max or 50)
)
else
if usernames < 1 then
if frame.args.example then args[1] = frame.args.example else return '<strong class="error">خطا در [[الگو:پاسخ به]]: نام کاربری داده نشدهاست.</strong>' end
end
local isfirst = true
local outStr = ''
for i = 1, maxArg do
if args[i] then
if isfirst then
outStr = string.format(
'<span class="template-ping">%s[[کاربر:%s|%s]]',
args['prefix'] or '@',
args[i],
(args['label1'] or args['label']) or args[i]
)
isfirst = false
else
if ( i < usernames and (usernames > 2) or ((usernames == 2) and (args['c'] == '')) ) then outStr = outStr..'،‏' end
if i == maxArg then outStr = outStr..' '..(args['c'] or 'و') end
outStr = string.format(
'%s [[کاربر:%s|%s]]',
outStr,
args[i],
args['label'..tostring(i)] or args[i]
)
end
end
end
outStr = outStr..(args['p'] or ': ')..'</span>'
return outStr
end
end
return p