<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://emergency-response-liberty-county.wiki/Module:Documentation?action=history&amp;feed=atom</id>
	<title>Module:Documentation - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://emergency-response-liberty-county.wiki/Module:Documentation?action=history&amp;feed=atom"/>
	<link rel="alternate" type="text/html" href="https://emergency-response-liberty-county.wiki/Module:Documentation?action=history"/>
	<updated>2026-04-17T20:31:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://emergency-response-liberty-county.wiki/index.php?title=Module:Documentation&amp;diff=98&amp;oldid=prev</id>
		<title>Lucah1337: Imported from SC Wiki</title>
		<link rel="alternate" type="text/html" href="https://emergency-response-liberty-county.wiki/index.php?title=Module:Documentation&amp;diff=98&amp;oldid=prev"/>
		<updated>2026-02-18T13:09:55Z</updated>

		<summary type="html">&lt;p&gt;Imported from SC Wiki&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- &amp;lt;nowiki&amp;gt;&lt;br /&gt;
local dependencyList = require( &amp;#039;Module:DependencyList&amp;#039; )&lt;br /&gt;
local hatnote = require( &amp;#039;Module:Hatnote&amp;#039; )._hatnote&lt;br /&gt;
local mbox = require( &amp;#039;Module:Mbox&amp;#039; )._mbox&lt;br /&gt;
local i18n = require( &amp;#039;Module:i18n&amp;#039; ):new()&lt;br /&gt;
local TNT = require( &amp;#039;Module:Translate&amp;#039; ):new()&lt;br /&gt;
local lang = mw.getContentLanguage()&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- Wrapper function for Module:i18n.translate&lt;br /&gt;
---&lt;br /&gt;
--- @param key string The translation key&lt;br /&gt;
--- @return string If the key was not found, the key is returned&lt;br /&gt;
local function t( key )&lt;br /&gt;
	return i18n:translate( key )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--- FIXME: This should go to somewhere else, like Module:Common&lt;br /&gt;
--- Calls TNT with the given key&lt;br /&gt;
---&lt;br /&gt;
--- @param key string The translation key&lt;br /&gt;
--- @return string If the key was not found in the .tab page, the key is returned&lt;br /&gt;
local function translate( key, ... )&lt;br /&gt;
	local success, translation = pcall( TNT.format, &amp;#039;Module:Documentation/i18n.json&amp;#039;, key or &amp;#039;&amp;#039;, ... )&lt;br /&gt;
&lt;br /&gt;
	if not success or translation == nil then&lt;br /&gt;
		return key&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return translation&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function p.doc( frame )&lt;br /&gt;
    local title = mw.title.getCurrentTitle()&lt;br /&gt;
    local args = frame:getParent().args&lt;br /&gt;
    local page = args[1] or string.gsub( title.fullText, &amp;#039;/[Dd]o[ck]u?$&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
    local ret, cats, ret1, ret2, ret3&lt;br /&gt;
    local pageType = title.namespace == 828 and &amp;#039;module&amp;#039; or &amp;#039;template&amp;#039;&lt;br /&gt;
&lt;br /&gt;
    -- subpage header&lt;br /&gt;
    if title.subpageText == &amp;#039;doc&amp;#039; then&lt;br /&gt;
		ret = mbox(&lt;br /&gt;
			translate( &amp;#039;message_subpage_title&amp;#039;, page ),&lt;br /&gt;
			translate( &amp;#039;message_subpage_desc&amp;#039;, page, translate( pageType ) ),&lt;br /&gt;
			{ icon = &amp;#039;WikimediaUI-Notice.svg&amp;#039; }&lt;br /&gt;
    	)&lt;br /&gt;
&lt;br /&gt;
        if title.namespace == 10 then -- Template namespace&lt;br /&gt;
            cats = &amp;#039;[[Category:&amp;#039; .. string.format( t( &amp;#039;category_documentation&amp;#039; ), t( &amp;#039;category_&amp;#039; .. pageType ) ) .. &amp;#039;|&amp;#039; .. title.baseText .. &amp;#039;]]&amp;#039;&lt;br /&gt;
            ret2 = dependencyList._main()&lt;br /&gt;
        elseif title.namespace == 828 then -- Module namespace&lt;br /&gt;
            cats = &amp;#039;[[Category:&amp;#039; .. string.format( t( &amp;#039;category_documentation&amp;#039; ), t( &amp;#039;category_&amp;#039; .. pageType ) ) .. &amp;#039;|&amp;#039; .. title.baseText .. &amp;#039;]]&amp;#039;&lt;br /&gt;
            ret2 = dependencyList._main()&lt;br /&gt;
            ret2 = ret2 .. require(&amp;#039;Module:Module toc&amp;#039;).main()&lt;br /&gt;
        else&lt;br /&gt;
            cats = &amp;#039;&amp;#039;&lt;br /&gt;
            ret2 = &amp;#039;&amp;#039;&lt;br /&gt;
        end&lt;br /&gt;
&lt;br /&gt;
        return tostring( ret ) .. ret2 .. cats&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    -- template header&lt;br /&gt;
    -- don&amp;#039;t use mw.html as we aren&amp;#039;t closing the main div tag&lt;br /&gt;
    ret1 = &amp;#039;&amp;lt;div class=&amp;quot;documentation&amp;quot;&amp;gt;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
    ret2 = mw.html.create( nil )&lt;br /&gt;
        :tag( &amp;#039;div&amp;#039; )&lt;br /&gt;
            :addClass( &amp;#039;documentation-header&amp;#039; )&lt;br /&gt;
            :tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
                :addClass( &amp;#039;documentation-title&amp;#039; )&lt;br /&gt;
                :wikitext( lang:ucfirst( translate(&amp;#039;message_documentation_title&amp;#039;, pageType ) ) )&lt;br /&gt;
                :done()&lt;br /&gt;
            :tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
                :addClass( &amp;#039;documentation-links plainlinks&amp;#039; )&lt;br /&gt;
                :wikitext(&lt;br /&gt;
                    &amp;#039;[[&amp;#039; .. tostring( mw.uri.fullUrl( page .. &amp;#039;/doc&amp;#039;, {action=&amp;#039;view&amp;#039;} ) ) .. &amp;#039; view]]&amp;#039; ..&lt;br /&gt;
                    &amp;#039;[[&amp;#039; .. tostring( mw.uri.fullUrl( page .. &amp;#039;/doc&amp;#039;, {action=&amp;#039;edit&amp;#039;} ) ) .. &amp;#039; edit]]&amp;#039; ..&lt;br /&gt;
                    &amp;#039;[[&amp;#039; .. tostring( mw.uri.fullUrl( page .. &amp;#039;/doc&amp;#039;, {action=&amp;#039;history&amp;#039;} ) ) .. &amp;#039; history]]&amp;#039; ..&lt;br /&gt;
                    &amp;#039;[&amp;lt;span class=&amp;quot;jsPurgeLink&amp;quot;&amp;gt;[&amp;#039; .. tostring( mw.uri.fullUrl( title.fullText, { action = &amp;#039;purge&amp;#039; } ) ) .. &amp;#039; purge]&amp;lt;/span&amp;gt;]&amp;#039;&lt;br /&gt;
                )&lt;br /&gt;
                :done()&lt;br /&gt;
            :done()&lt;br /&gt;
        :tag( &amp;#039;div&amp;#039; )&lt;br /&gt;
            :addClass( &amp;#039;documentation-subheader&amp;#039; )&lt;br /&gt;
            :tag( &amp;#039;span&amp;#039; )&lt;br /&gt;
                :addClass( &amp;#039;documentation-documentation&amp;#039; )&lt;br /&gt;
                :wikitext( translate( &amp;#039;message_transclude_desc&amp;#039;, page ) )&lt;br /&gt;
                :done()&lt;br /&gt;
            :wikitext( frame:extensionTag{ name = &amp;#039;templatestyles&amp;#039;, args = { src = &amp;#039;Module:Documentation/styles.css&amp;#039;} } )&lt;br /&gt;
            :done()&lt;br /&gt;
&lt;br /&gt;
    ret3 = {}&lt;br /&gt;
&lt;br /&gt;
    if args.scwShared then&lt;br /&gt;
    	--- Message box&lt;br /&gt;
    	table.insert( ret3,&lt;br /&gt;
    		mbox(&lt;br /&gt;
	    		translate(&lt;br /&gt;
					&amp;#039;message_shared_across&amp;#039;,&lt;br /&gt;
					title.fullText,&lt;br /&gt;
					mw.uri.encode( title.text, &amp;#039;PATH&amp;#039; )&lt;br /&gt;
				),&lt;br /&gt;
				translate(&lt;br /&gt;
					&amp;#039;message_shared_across_subtext&amp;#039;,&lt;br /&gt;
					pageType&lt;br /&gt;
				),&lt;br /&gt;
				{ icon = &amp;#039;WikimediaUI-ArticleDisambiguation-ltr.svg&amp;#039; }&lt;br /&gt;
			)&lt;br /&gt;
	   )&lt;br /&gt;
	   --- Set category&lt;br /&gt;
	   table.insert( ret3, &amp;#039;[[Category:&amp;#039; .. string.format( t( &amp;#039;category_shared_by_the_star_citizen_wikis&amp;#039; ), lang:ucfirst( pageType ) ) .. &amp;#039;]]&amp;#039; )&lt;br /&gt;
		--- Interlanguage link&lt;br /&gt;
		--- TODO: Make this into a for loop when there are more wikis&lt;br /&gt;
		for _, code in pairs{ &amp;#039;de&amp;#039;, &amp;#039;en&amp;#039; } do&lt;br /&gt;
			if lang:getCode() ~= code then&lt;br /&gt;
	    		table.insert( ret3, string.format( &amp;#039;[[%s:%s]]&amp;#039;, code, title.fullText ) )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if args.fromWikipedia then&lt;br /&gt;
    	table.insert( ret3,&lt;br /&gt;
    		mbox(&lt;br /&gt;
	    		translate(&lt;br /&gt;
					&amp;#039;message_from_wikipedia&amp;#039;,&lt;br /&gt;
					title.fullText,&lt;br /&gt;
					mw.uri.encode( page, &amp;#039;WIKI&amp;#039; ),&lt;br /&gt;
					page&lt;br /&gt;
				),&lt;br /&gt;
				translate(&lt;br /&gt;
					&amp;#039;message_from_wikipedia_subtext&amp;#039;,&lt;br /&gt;
					pageType&lt;br /&gt;
				),&lt;br /&gt;
				{ icon = &amp;#039;WikimediaUI-Logo-Wikipedia.svg&amp;#039; }&lt;br /&gt;
			)&lt;br /&gt;
	   )&lt;br /&gt;
	   --- Set category&lt;br /&gt;
	   table.insert( ret3, &amp;#039;[[Category:&amp;#039; .. string.format( t( &amp;#039;category_imported_from_wikipedia&amp;#039; ), lang:ucfirst( pageType ) ) .. &amp;#039;]]&amp;#039; )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if title.namespace == 828 then&lt;br /&gt;
    	-- Has config&lt;br /&gt;
    	if mw.title.new( title.fullText .. &amp;#039;/config.json&amp;#039;, &amp;#039;Module&amp;#039; ).exists then&lt;br /&gt;
			table.insert( ret3,&lt;br /&gt;
				mbox(&lt;br /&gt;
		    		translate(&lt;br /&gt;
		    			&amp;#039;message_module_configuration&amp;#039;,&lt;br /&gt;
		    			title.fullText,&lt;br /&gt;
		    			title.fullText&lt;br /&gt;
		    		),&lt;br /&gt;
		    		translate( &amp;#039;message_module_configuration_subtext&amp;#039; ),&lt;br /&gt;
		    		{ icon = &amp;#039;WikimediaUI-Settings.svg&amp;#039; }&lt;br /&gt;
		    	)&lt;br /&gt;
			)&lt;br /&gt;
    	end&lt;br /&gt;
&lt;br /&gt;
    	-- Has localization&lt;br /&gt;
    	if mw.title.new( title.fullText .. &amp;#039;/i18n.json&amp;#039;, &amp;#039;Module&amp;#039; ).exists then&lt;br /&gt;
			table.insert( ret3,&lt;br /&gt;
				mbox(&lt;br /&gt;
		    		translate(&lt;br /&gt;
		    			&amp;#039;message_module_i18n&amp;#039;,&lt;br /&gt;
		    			title.fullText,&lt;br /&gt;
		    			title.fullText&lt;br /&gt;
		    		),&lt;br /&gt;
		    		translate( &amp;#039;message_module_i18n_subtext&amp;#039; ),&lt;br /&gt;
		    		{ icon = &amp;#039;WikimediaUI-Language.svg&amp;#039; }&lt;br /&gt;
		    	)&lt;br /&gt;
			)&lt;br /&gt;
    	end&lt;br /&gt;
&lt;br /&gt;
    	-- Testcase page&lt;br /&gt;
    	if title.subpageText == &amp;#039;testcases&amp;#039; then&lt;br /&gt;
    		table.insert( ret3,&lt;br /&gt;
		    	hatnote(&lt;br /&gt;
		    		translate( &amp;#039;message_module_tests&amp;#039;, title.baseText ),&lt;br /&gt;
		    		{ icon = &amp;#039;WikimediaUI-LabFlask.svg&amp;#039; }&lt;br /&gt;
		    	)&lt;br /&gt;
		    )&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		table.insert( ret3, string.format( &amp;#039;[[Category:%s]]&amp;#039;, t( &amp;#039;category_module&amp;#039; ) ) )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    --- Dependency list&lt;br /&gt;
    table.insert( ret3, dependencyList._main( nil, args.category, args.isUsed ) )&lt;br /&gt;
&lt;br /&gt;
    -- Has templatestyles&lt;br /&gt;
	if mw.title.new( title.fullText .. &amp;#039;/styles.css&amp;#039; ).exists then&lt;br /&gt;
		table.insert( ret3,&lt;br /&gt;
			hatnote(&lt;br /&gt;
	    		translate( &amp;#039;message_styles&amp;#039;, title.fullText, title.fullText ),&lt;br /&gt;
	    		{ icon = &amp;#039;WikimediaUI-Palette.svg&amp;#039; }&lt;br /&gt;
	    	)&lt;br /&gt;
		)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
    --- Module stats bar&lt;br /&gt;
    if title.namespace == 828 then&lt;br /&gt;
		table.insert( ret3, &amp;#039;&amp;lt;div class=&amp;quot;documentation-modulestats&amp;quot;&amp;gt;&amp;#039; )&lt;br /&gt;
&lt;br /&gt;
		-- Function list&lt;br /&gt;
		table.insert( ret3, require( &amp;#039;Module:Module toc&amp;#039; ).main() )&lt;br /&gt;
&lt;br /&gt;
		-- Unit tests&lt;br /&gt;
		local testcaseTitle = title.baseText .. &amp;#039;/testcases&amp;#039;&lt;br /&gt;
		if mw.title.new( testcaseTitle, &amp;#039;Module&amp;#039; ).exists then&lt;br /&gt;
			-- There is probably a better way :P&lt;br /&gt;
			table.insert( ret3, frame:preprocess( &amp;#039;{{#invoke:&amp;#039; .. testcaseTitle .. &amp;#039;|run}}&amp;#039; ) )&lt;br /&gt;
    	end&lt;br /&gt;
&lt;br /&gt;
    	table.insert( ret3, &amp;#039;&amp;lt;/div&amp;gt;&amp;#039; )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return ret1 .. tostring( ret2 ) .. &amp;#039;&amp;lt;div class=&amp;quot;documentation-content&amp;quot;&amp;gt;&amp;#039; .. table.concat( ret3 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&lt;br /&gt;
-- &amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lucah1337</name></author>
	</entry>
</feed>