Module:Wikipedia fork
Jump to navigation
Jump to search
Documentation for this module may be created at Module:Wikipedia fork/doc
local mHatnote = require('Module:Hatnote')
local mArguments = require('Module:Arguments')
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
function p.wikipedia_fork(frame)
-- Get arguments from the frame
local args = mArguments.getArgs(frame)
return p._wikipedia_fork(args)
end
function p._wikipedia_fork(args)
-- Check that args is a table
checkType('_wikipedia_fork', 1, args, 'table', true)
args = args or {}
-- Retrieve the article name and import date
local articleName = args.article_name or mw.title.getCurrentTitle().text
local importDate = args.import_date or "an unknown date"
-- Create the forked article message
local message = string.format(
"This article was forked from the [https://en.wikipedia.org/wiki/%s Wikipedia article] on %s.",
mw.uri.encode(articleName, "PATH"), -- Encode the article name for URL
importDate
)
-- Define the hatnote options to enforce `<div>` and add classes
local hnOptions = {
selfref = args.selfref or false,
inline = 0, -- Force `<div>` structure
extraclasses = 'hatnote navigation-not-searchable'
}
-- Return the message wrapped in a hatnote
return mHatnote._hatnote(message, hnOptions)
end
return p