Module:Documentation: Difference between revisions

finish i18n for the startBox function
(internationalise the protection template code)
(finish i18n for the startBox function)
Line 33:
cfg.protectionTemplate = 'pp-template' -- The name of the template that displays the protection icon (a padlock on enwiki).
cfg.protectionTemplateArgs = {docusage = 'yes'} -- Any arguments to send to the protection template.
cfg.docSubpage = 'doc' -- The name of the subpage typically used for documentation pages.
cfg.startBoxLinkclasses = 'mw-editsection plainlinks' -- The CSS classes used for the [view][edit][history] or [create] links in the start box.
cfg.startBoxLinkId = 'doc_editlinks' -- The HTML "id" attribute for the links in the start box.
cfg.fileDocpagePreload = 'Template:Documentation/preload-filespace' -- A preload file for documentation page in the file namespace.
cfg.docpagePreload = 'Template:Documentation/preload-filespace' -- A preload file for template documentation pages in all namespaces.
 
-- Display settings
-- The following settings configure the values displayed by the module.
 
cfg.viewLinkDisplay = 'view' -- The text to display for "view" links.
cfg.sandboxLinkDisplay = 'sandbox'
cfg.editLinkDisplay = 'edit' -- The text to display for "edit" links.
cfg.historyLinkDisplay = 'history' -- The text to display for "history" links.
cfg.purgeLinkDisplay = 'purge' -- The text to display for "purge" links.
cfg.createLinkDisplay = 'create' -- The text to display for "create" links.
cfg.sandboxLinkDisplay = 'sandbox' -- The text to display for "sandbox" links.
cfg.documentationIconWikitext = '[[File:Template-info.png|50px|link=|alt=Documentation icon]]' -- The wikitext for the icon shown at the top of the template.
cfg.templateNamespaceHeading = 'Template documentation' -- The heading shown in the template namespace.
cfg.moduleNamespaceHeading = 'Module documentation' -- The heading shown in the module namespace.
cfg.fileNamespaceHeading = 'Summary' -- The heading shown in the file namespace.
cfg.otherNamespacesHeading = 'Documentation' -- The heading shown in other namespaces.
 
----------------------------------------------------------------------------
Line 191 ⟶ 206:
local namespace = docspace or currentTitle.nsText
local pagename = templatePage or currentTitle.text
docpage = namespace .. ':' .. pagename .. '/doc' .. cfg.docSubpage
end
local docTitle = mw.title.new(docpage)
Line 227 ⟶ 242:
hspan.wikitext(heading)
elseif subjectSpace == 10 then -- Template namespace
hspan.wikitext(cfg.documentationIconWikitext .. ' ' .. cfg.templateNamespaceHeading)
hspan.wikitext('[[File:Template-info.png|50px|link=|alt=Documentation icon]] Template documentation')
elseif subjectSpace == 828 then -- Module namespace
hspan.wikitext(cfg.documentationIconWikitext .. ' ' .. cfg.moduleNamespaceHeading)
hspan.wikitext('[[File:Template-info.png|50px|link=|alt=Documentation icon]] Module documentation')
elseif subjectSpace == 6 then -- File namespace
hspan.wikitext('Summary'cfg.fileNamespaceHeading)
else
hspan.wikitext('Documentation'cfg.otherNamespaceHeading)
end
 
Line 242 ⟶ 257:
local lspan = sbox.tag('span') -- lspan is short for "link span".
lspan
.addClass('mw-editsection plainlinks'cfg.startBoxLinkclasses)
.attr('id', 'doc_editlinks'cfg.startBoxLinkId)
if docExist then
local viewLink = makeWikilink(docpage, 'view'cfg.viewLinkDisplay)
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, 'edit'cfg.editLinkDisplay)
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, 'history'cfg.historyLinkDisplay)
local purgeLink = makeUrlLink(docTitle:fullUrl{action = 'purge'}, 'purge'cfg.purgeLinkDisplay)
local text = '[%s] [%s] [%s] [%s]'
text = text:gsub('%[', '[') -- Replace square brackets with HTML entities.
Line 256 ⟶ 271:
if not preload then
if subjectSpace == 6 then -- File namespace
preload = 'Template:Documentation/preload-filespace'cfg.fileDocpagePreload
else
preload = 'Template:Documentation/preload'cfg.docpagePreload
end
end
lspan.wikitext(makeUrlLink(docTitle:fullUrl{action = 'edit', preload = preload}, 'create'cfg.createLinkDisplay))
end
end
Line 278 ⟶ 293:
content = frame:preprocess('{{ ' .. docpage .. ' }}')
else
docpage = p.docspace() .. ':' .. p.templatePage() .. '/doc' .. cfg.docSubpage
if mw.title.new(docpage).exists then
local frame = mw.getCurrentFrame()
Line 306 ⟶ 321:
docpage = docname
else
docpage = docpageRoot .. '/doc' .. cfg.docSubpage
end
local docTitle = mw.title.new(docpage)
Line 380 ⟶ 395:
-- Show the categories text, but not if "content" fed or "docname fed" since then it is unclear where to add the categories.
if not content and not docnameFed then
text = text .. 'Please add categories to the ' .. makeWikilink(docpage, '/doc' .. cfg.docSubpage) .. ' subpage.'
end
-- Show the "subpages" link.
Line 414 ⟶ 429:
local ret = ''
local subpage = currentTitle.subpageText
if subpage == 'doc'cfg.docSubpage or subpage == 'testcases' then
local sort = (currentTitle.namespace == 0 and 'Main:' or '') .. currentTitle.prefixedText -- Sort on namespace.
ret = ret .. makeWikilink('Category:Wikipedia pages with strange ((documentation)) usage', sort)