Module:Italic title: Difference between revisions

From Wikipedia of the Dark Brotherhood, an online Star Wars Club
(Created page with "-- This module implements {{italic title}}. local p = {} function p._main(args, frame, title) args = args or {} frame = frame or mw.getCurrentFrame() title = title or mw....")
 
m (Add classes for CSS selection)
Line 4: Line 4:


function p._main(args, frame, title)
function p._main(args, frame, title)
args = args or {}
    args = args or {}
frame = frame or mw.getCurrentFrame()
    frame = frame or mw.getCurrentFrame()
title = title or mw.title.getCurrentTitle()
    title = title or mw.title.getCurrentTitle()
local prefix, parentheses = mw.ustring.match(title.text, '^(.+) (%([^%(%)]+%))$')
    local prefix, parentheses = mw.ustring.match(title.text, '^(.+) %(([^%(%)]+)%)$')
local result
    local result
if prefix and parentheses and args.all ~= 'yes' then
    if prefix and parentheses and args.all ~= 'yes' then
result = string.format("<i>%s</i> %s", prefix, parentheses)
        result = string.format("<i class='italic-title'>%s</i> (<span class='parenthetical-title'>%s</span>)", prefix, parentheses)
else
    else
result = string.format("<i>%s</i>", title.text)
        result = string.format("<i>%s</i>", title.text)
end
    end
if title.namespace ~= 0 then
    if title.namespace ~= 0 then
result = title.nsText:gsub('_', ' ') .. ':' .. result
        result = title.nsText:gsub('_', ' ') .. ':' .. result
end
    end
return frame:callParserFunction('DISPLAYTITLE', result, args[1])
    return frame:callParserFunction('DISPLAYTITLE', result, args[1])
end
end


function p.main(frame)
function p.main(frame)
local args = require('Module:Arguments').getArgs(frame, {
    local args = require('Module:Arguments').getArgs(frame, {
wrappers = 'Template:Italic title'
        wrappers = 'Template:Italic title'
})
    })
return p._main(args, frame)
    return p._main(args, frame)
end
end


return p
return p

Revision as of 04:54, 26 June 2016

-- This module implements .

local p = {}

function p._main(args, frame, title)

   args = args or {}
   frame = frame or mw.getCurrentFrame()
   title = title or mw.title.getCurrentTitle()
   local prefix, parentheses = mw.ustring.match(title.text, '^(.+) %(([^%(%)]+)%)$')
   local result
   if prefix and parentheses and args.all ~= 'yes' then
       result = string.format("%s (%s)", prefix, parentheses)
   else
       result = string.format("%s", title.text)
   end
   if title.namespace ~= 0 then
       result = title.nsText:gsub('_', ' ') .. ':' .. result
   end
   return frame:callParserFunction('DISPLAYTITLE', result, args[1])

end

function p.main(frame)

   local args = require('Module:Arguments').getArgs(frame, {
       wrappers = 'Template:Italic title'
   })
   return p._main(args, frame)

end

return p