Module: Ref/ssm: Difference between revisions

From A Wiki of Ice and Fire
Jump to: navigation, search
Abjiklam (talk | contribs)
mNo edit summary
Abjiklam (talk | contribs)
add tracking category
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
local data = require('Module:Ref/ssm/data')
local getArgs = require('Module:Arguments').getArgs
local getArgs = require('Module:Arguments').getArgs
local lang = mw.language.getContentLanguage()
local data = mw.loadData('Module:Ref/ssm/data')


local p = {}
local p = {}
Line 6: Line 7:
function p.main(frame)
function p.main(frame)
     local args = getArgs(frame)
     local args = getArgs(frame)
     return p._main(args)
     return p._main(tonumber(args[1]))
end
end


function p._main(args)
function p._main(number)
    local number = tonumber(args[1])
     local article = data[number] or error(mw.ustring.format("SSM #%d cannot be found, please add it to [[Module:Ref/ssm/data]]", number))
     local article = data[number]
    local title = article.title
    local date = article.date
    local lang = mw.language.getContentLanguage()
    local date_text = lang:formatDate("F j, Y", date)
     return mw.ustring.format(
     return mw.ustring.format(
         "[[So Spake Martin]]: ''[https://www.westeros.org/Citadel/SSM/Entry/%d %s]'' (%s)",
         "[[So Spake Martin]]: ''[https://www.westeros.org/Citadel/SSM/Entry/%d %s]'' (%s)[[Category:Pages referencing So Spake Martin]]",
         number,
         number,
         title,
         article.title,
         date_text
         lang:formatDate("F j, Y", article.date)
     )
     )
end
end


return p
return p

Latest revision as of 14:41, 24 August 2026

Documentation for this module may be created at Module:Ref/ssm/doc

local getArgs = require('Module:Arguments').getArgs
local lang = mw.language.getContentLanguage()
local data = mw.loadData('Module:Ref/ssm/data')

local p = {}

function p.main(frame)
    local args = getArgs(frame)
    return p._main(tonumber(args[1]))
end

function p._main(number)
    local article = data[number] or error(mw.ustring.format("SSM #%d cannot be found, please add it to [[Module:Ref/ssm/data]]", number))
    return mw.ustring.format(
        "[[So Spake Martin]]: ''[https://www.westeros.org/Citadel/SSM/Entry/%d %s]'' (%s)[[Category:Pages referencing So Spake Martin]]",
        number,
        article.title,
        lang:formatDate("F j, Y", article.date)
    )
end

return p