Module:Template translation: Difference between revisions
Jump to navigation
Jump to search
m (warning) |
m (fix) |
||
Line 3: | Line 3: | ||
local p = {} | local p = {} | ||
function p.renderTranslatedTemplate(frame | function p.renderTranslatedTemplate(frame) | ||
--[[ If on a translation subpage (like Foobar/de), this function renders | --[[ If on a translation subpage (like Foobar/de), this function renders | ||
a given template in the same language, if the translation is available. | a given template in the same language, if the translation is available. | ||
Otherwise, the template is rendered in its default language, without | Otherwise, the template is rendered in its default language, without | ||
modification.]] | modification. | ||
This is aimed at replacing Template:TNT. | |||
]] | |||
local langcode = '' | local langcode = '' | ||
Line 19: | Line 21: | ||
if ( mw.language.isValidCode( subpage ) ) | if ( mw.language.isValidCode( subpage ) ) | ||
then | then | ||
local translation = mw.title.new( template..'/'..subpage, 'Template' ) | local translation = mw.title.new( frame[template]..'/'..subpage, 'Template' ) | ||
if ( translation.id ~= 0) | if ( translation.id ~= 0) | ||
then | then |
Revision as of 17:40, 24 May 2013
Documentation for this module may be created at Module:Template translation/doc
-- THIS IS A WORK IN PROGRESS. DO NOT USE. local p = {} function p.renderTranslatedTemplate(frame) --[[ If on a translation subpage (like Foobar/de), this function renders a given template in the same language, if the translation is available. Otherwise, the template is rendered in its default language, without modification. This is aimed at replacing Template:TNT. ]] local langcode = '' -- Get the last subpage local subpage = mw.title.getCurrentTitle().subpageText --[[ If the subpage is a valid language code, check if a translation of the template exists in that language; if so, put it in langcode ]] if ( mw.language.isValidCode( subpage ) ) then local translation = mw.title.new( frame[template]..'/'..subpage, 'Template' ) if ( translation.id ~= 0) then langcode='/'..subpage end end -- Render the template frame:expandTemplate{ title = template..langcode, args = frame.args } end return p