Content deleted Content added
cleanup/fix displayAll and imageDupes to remove stored image args |
Reapply fixed version |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 108:
end
s = mw.ustring.lower(s)
image = mw.ustring.gsub(image,'^File:','') --- strip mistaken leading File: or Image:
image = mw.ustring.gsub(image,'^Image:','')
return image
end
local function exists(title)
local success, exists = pcall(function() return title.exists end)
-- If success = false, then we're out of expensive parser function calls and can't check whether it exists
-- in that case, don't throw a Lua error
return not success or exists
end
Line 154 ⟶ 164:
local portalTitle = mw.title.new(portal,"Portal")
-- if portal exists, put it into list
if portalTitle and
table.insert(existingPortals,portal)
-- otherwise set tracking cat
Line 195 ⟶ 205:
end
return root
end
local function noviewer(portalImage)
-- Function to add noviewer class to filespec for portalImage
local portalImage, hasClass = mw.ustring.gsub(portalImage, "class%s*=[^%|]+", "%0 noviewer")
if hasClass == 0 then
portalImage = portalImage.."|class=noviewer"
end
return portalImage
end
Line 237 ⟶ 256:
local contents = {}
-- Display the portals specified in the positional arguments.
local defaultUsed =
for _, portal in ipairs(portals) do
local portalImage = getImageName(portal)
if portalImage == defaultImage then
defaultUsed =
else
portalImage = noviewer(portalImage)
end
local image = string.format('[[File:%s|32x28px
portalImage)
local link = string.format('[[Portal:%s|%s%sportal]]',
Line 249 ⟶ 270:
table.insert(contents, {image, link})
end
if defaultUsed and args.tracking and checkTracking() then
defaultUsed)
root:wikitext(cat)
end
return tostring(fillBox(root, contents))
Line 266 ⟶ 289:
-- Display the portals specified in the positional arguments.
for _, fn in ipairs(imageList) do
local image = string.format('[[File:%s|32x28px
local link = string.format('[[:File:%s|%s]]',fn,fn)
table.insert(contents,{image,link})
Line 282 ⟶ 305:
local name = getImageName(portal)
-- If keep is yes (or equivalent), then allow all metadata (like image borders) to be returned
-- also, add "noviewer" class to metadata
local keepargs = yesno(keep)
if keepargs then
return noviewer(name)
end
-- otherwise, just keep filename, plus optional category
local args = mw.text.split(name, "|", true)
local result = {args[1]} -- the filename always comes first
Line 289 ⟶ 317:
for i = 2,#args do
local m = mw.ustring.match(args[i], "^%s*category%s*=")
if
table.insert(result, args[i])
end
|