Module:Infobox sort: Difference between revisions
Appearance
Content deleted Content added
No edit summary |
No edit summary |
||
Line 32: | Line 32: | ||
indexB = b:find("%%") |
indexB = b:find("%%") |
||
mw.log("Comparison") |
mw.log("Comparison") |
||
mw.log(a:sub(1, indexA)) |
mw.log(a:sub(1, indexA - 1)) |
||
mw.log(b:sub(1, indexB)) |
mw.log(b:sub(1, indexB - 1)) |
||
numberA = tonumber(a:sub(1, indexA)) |
numberA = tonumber(a:sub(1, indexA - 1)) |
||
numberB = tonumber(b:sub(1, indexB)) |
numberB = tonumber(b:sub(1, indexB - 1)) |
||
return numberA > numberB |
return numberA > numberB |
||
end ) |
end ) |
Revision as of 11:56, 9 June 2020
local p = {}
function p.asc(frame)
list = {}
for key,value in pairs(frame.args) do
-- Remove newlines
stripped = string.gsub(value, "\n", "")
stripped = string.gsub(value, "\r", "")
if stripped ~= nil and stripped ~= "" and stripped ~= "\n" and stripped ~= " " and stripped ~= "\r" then
table.insert(list, stripped)
end
end
table.sort( list )
return table.concat( list, "<br>" )
end
function p.desc(frame)
list = {}
for key,value in pairs(frame.args) do
-- Remove newlines
stripped = string.gsub(value, "\n", "")
if stripped:match("%S") ~= nil then
mw.log("Stripped value")
mw.log(stripped)
table.insert(list, stripped)
end
end
table.sort( list, function (a, b)
indexA = a:find("%%")
indexB = b:find("%%")
mw.log("Comparison")
mw.log(a:sub(1, indexA - 1))
mw.log(b:sub(1, indexB - 1))
numberA = tonumber(a:sub(1, indexA - 1))
numberB = tonumber(b:sub(1, indexB - 1))
return numberA > numberB
end )
return table.concat( list, "<br>" )
end
return p