Module:Gutenberg: Difference between revisions
From Zoophilia Wiki
Jump to navigationJump to search
meta>Mr. Stradivarius m (Protected "Module:Gutenberg": High-risk Lua module ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))) |
meta>Mr. Stradivarius (fix bad gsub syntax) |
||
Line 29: | Line 29: | ||
name = trimArg(args[2]) or trimArg(args.name) | name = trimArg(args[2]) or trimArg(args.name) | ||
if not name then | if not name then | ||
name = mw.title.getCurrentTitle().text | name = mw.title.getCurrentTitle().text:gsub('%s+%([^%(]-%)$', '') -- Current page name without the final parentheses | ||
end | end | ||
Revision as of 06:24, 5 October 2015
Documentation for this module may be created at Module:Gutenberg/doc
local p = {} function p.author(frame) local pframe = frame:getParent() local args = pframe.args local tname = "Gutenberg author" -- name of calling template. Change if template is renamed. local id = nil -- author name, or author number. The later will go direct to the author page, the former to a search results page. local name = nil -- display name on Wikipedia (default: article title) local url = nil local tagline = "at [[Project Gutenberg]]" local urlheadname = "//www.gutenberg.org/author/" local urlheadnumb = "//www.gutenberg.org/ebooks/author/" local urlhead = nil id = trimArg(args[1]) or trimArg(args.id) if not id then error("Parameter id is missing. See [[Template:" .. tname .. "]] documentation") else if tonumber(id) then -- it's a number urlhead = urlheadnumb else urlhead = urlheadname end end name = trimArg(args[2]) or trimArg(args.name) if not name then name = mw.title.getCurrentTitle().text:gsub('%s+%([^%(]-%)$', '') -- Current page name without the final parentheses end url = "[" .. urlhead .. id .. " Works by " .. name .. "] " .. tagline return url end function trimArg(arg) if arg == "" or arg == nil then return nil else return mw.text.trim(arg) end end return p