יחידה:פרמטרים: הבדלים בין גרסאות בדף
מראה
אין תקציר עריכה |
אין תקציר עריכה |
||
| שורה 20: | שורה 20: | ||
ans = out (ans, "צריך מקסימום " .. mustnum .. " פרמטרים, ישנם " .. numbered) | ans = out (ans, "צריך מקסימום " .. mustnum .. " פרמטרים, ישנם " .. numbered) | ||
end | end | ||
if (ans == "") | if (ans ~= "") then | ||
ans = "<includeonly><div class=error> '''שגיאת פרמטרים ב[[" .. pframe:getTitle() .. "]]:<br/>" | |||
.. ans .. "''' </div>[[קטגוריה:שגיאות פרמטריות]]</includeonly>" | |||
end | end | ||
return | return ans .. "<noinclude>[[קטגוריה:תבניות עם ניהול פרמטרים]]</noinclude>" | ||
end | end | ||
גרסה מ־11:28, 8 במאי 2015
function foo(frame)
local ans = ""
local pframe = frame:getParent()
local empty = false
local start = true
local numbered = 0
local mustnum = tonumber(frame.args[1])
for k, v in pairs( pframe.args ) do
if type( k ) == 'string' then
ans = checknamed(k, ans, frame)
else
numbered = k
if (k == 1 and mw.text.trim(v) == "" and start) then
empty = true
end
end
start = false
end
if (mustnum < numbered and not (empty and mustnum == 0 and numbered == 1)) then
ans = out (ans, "צריך מקסימום " .. mustnum .. " פרמטרים, ישנם " .. numbered)
end
if (ans ~= "") then
ans = "<includeonly><div class=error> '''שגיאת פרמטרים ב[[" .. pframe:getTitle() .. "]]:<br/>"
.. ans .. "''' </div>[[קטגוריה:שגיאות פרמטריות]]</includeonly>"
end
return ans .. "<noinclude>[[קטגוריה:תבניות עם ניהול פרמטרים]]</noinclude>"
end
function checknamed(k, ans, frame)
local i = 2
while (frame.args[i] ~= nil) do
if (frame.args[i] == k) then
return ans
end
i = i + 1
end
return out(ans, "פרמטר לא ידוע: ''" .. k .. "''")
end
function out(ans, new)
return ans .. new .. "</br>"
end
return {
['main'] = foo
}