Anonymous

Module:Documentation: Difference between revisions

From Savez
m
1 revision imported
m (1 revision imported)
m (1 revision imported)
 
(3 intermediate revisions by 3 users not shown)
Line 11: Line 11:
-- Often-used functions.
-- Often-used functions.
local ugsub = mw.ustring.gsub
local ugsub = mw.ustring.gsub
local format = mw.ustring.format


----------------------------------------------------------------------------
----------------------------------------------------------------------------
Line 50: Line 51:
local function makeWikilink(page, display)
local function makeWikilink(page, display)
if display then
if display then
return mw.ustring.format('[[%s|%s]]', page, display)
return format('[[%s|%s]]', page, display)
else
else
return mw.ustring.format('[[%s]]', page)
return format('[[%s]]', page)
end
end
end
end
Line 66: Line 67:


local function makeUrlLink(url, display)
local function makeUrlLink(url, display)
return mw.ustring.format('[%s %s]', url, display)
return format('[%s %s]', url, display)
end
end


Line 81: Line 82:
end
end
-- 'documentation-toolbar'
-- 'documentation-toolbar'
return '<span class="' .. message('toolbar-class') .. '">('
return format(
.. table.concat(ret, ' &#124; ') .. ')</span>'
'<span class="%s">(%s)</span>',
message('toolbar-class'),
table.concat(ret, ' &#124; ')
)
end
end


Line 359: Line 363:
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
-- 'sandbox-category' --> 'Template sandboxes'
-- 'module-sandbox-category' --> 'Module sandboxes'
-- 'other-sandbox-category' --> 'Sandboxes outside of template or module namespace'
--]=]
--]=]
local title = env.title
local title = env.title
Line 374: Line 380:
-- "This is the template sandbox for [[Template:Foo]] (diff)."
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = ''
local text = ''
local pagetype
local pagetype, sandboxCat
if subjectSpace == 10 then
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
pagetype = message('sandbox-notice-pagetype-template')
sandboxCat = message('sandbox-category')
elseif subjectSpace == 828 then
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
pagetype = message('sandbox-notice-pagetype-module')
sandboxCat = message('module-sandbox-category')
else
else
pagetype = message('sandbox-notice-pagetype-other')
pagetype = message('sandbox-notice-pagetype-other')
sandboxCat = message('other-sandbox-category')
end
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local templateLink = makeWikilink(templateTitle.prefixedText)
Line 407: Line 416:
end
end
end
end
-- Add the sandbox to the sandbox category.
-- Add the sandbox to the sandbox category.
omargs.text = text .. makeCategoryLink(message('sandbox-category'))
omargs.text = text .. makeCategoryLink(sandboxCat)


-- 'documentation-clear'
-- 'documentation-clear'
Line 505: Line 515:
end
end


local data = {}
data.title = title
data.docTitle = docTitle
-- View, display, edit, and purge links if /doc exists.
data.viewLinkDisplay = message('view-link-display')
data.editLinkDisplay = message('edit-link-display')
data.historyLinkDisplay = message('history-link-display')
data.purgeLinkDisplay = message('purge-link-display')
-- Create link if /doc doesn't exist.
-- Create link if /doc doesn't exist.
local preload = args.preload
local preload = args.preload
Line 522: Line 524:
end
end
end
end
data.preload = preload
data.createLinkDisplay = message('create-link-display')
return {
return data
title = title,
docTitle = docTitle,
-- View, display, edit, and purge links if /doc exists.
viewLinkDisplay = message('view-link-display'),
editLinkDisplay = message('edit-link-display'),
historyLinkDisplay = message('history-link-display'),
purgeLinkDisplay = message('purge-link-display'),
preload = preload,
createLinkDisplay = message('create-link-display')
}
end
end


Line 532: Line 543:
-- @data - a table of data generated by p.makeStartBoxLinksData
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
--]]
local docTitle = data.docTitle
local docTitle = data.docTitle
local purgeLink = makeWikilink("Special:Purge/" .. docTitle.prefixedText, data.purgeLinkDisplay)
-- yes, we do intend to purge the template page on which the documentation appears
local purgeLink = makeWikilink("Special:Purge/" .. data.title.prefixedText, data.purgeLinkDisplay)
if docTitle.exists then
if docTitle.exists then
Line 755: Line 766:
return nil
return nil
end
end
local ret
if docTitle.exists then
if docTitle.exists then
-- /doc exists; link to it.
-- /doc exists; link to it.
Line 763: Line 773:
local historyDisplay = message('history-link-display')
local historyDisplay = message('history-link-display')
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, historyDisplay)
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, historyDisplay)
ret = message('transcluded-from-blurb', {docLink})
return message('transcluded-from-blurb', {docLink})
.. ' '
.. ' '
.. makeToolbar(editLink, historyLink)
.. makeToolbar(editLink, historyLink)
Line 772: Line 782:
local createDisplay = message('create-link-display')
local createDisplay = message('create-link-display')
local createLink = makeUrlLink(createUrl, createDisplay)
local createLink = makeUrlLink(createUrl, createDisplay)
ret = message('create-module-doc-blurb', {createLink})
return message('create-module-doc-blurb', {createLink})
.. '<br />'
.. '<br />'
end
end
return ret
end
end


Line 958: Line 967:
end
end
local subpage = title.subpageText
local subpage = title.subpageText
local ret = ''
if message('display-strange-usage-category', nil, 'boolean')
if message('display-strange-usage-category', nil, 'boolean')
and (
and (
Line 965: Line 973:
)
)
then
then
ret = ret .. makeCategoryLink(message('strange-usage-category'))
return makeCategoryLink(message('strange-usage-category'))
end
end
return ret
return ''
end
end


return p
return p