<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.atlaws.eu/index.php?action=history&amp;feed=atom&amp;title=Modul%3AVorlage%3AStandardfarbe</id>
	<title>Modul:Vorlage:Standardfarbe - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.atlaws.eu/index.php?action=history&amp;feed=atom&amp;title=Modul%3AVorlage%3AStandardfarbe"/>
	<link rel="alternate" type="text/html" href="https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;action=history"/>
	<updated>2026-05-01T18:07:31Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in RI Wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=449&amp;oldid=prev</id>
		<title>Andreas.Czak: 1 Version importiert</title>
		<link rel="alternate" type="text/html" href="https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=449&amp;oldid=prev"/>
		<updated>2024-08-28T14:01:01Z</updated>

		<summary type="html">&lt;p&gt;1 Version importiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 28. August 2024, 14:01 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Andreas.Czak</name></author>
	</entry>
	<entry>
		<id>https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=372&amp;oldid=prev</id>
		<title>Andreas.Czak: Die Seite wurde neu angelegt: „-- module table local Standardfarbe = { 	config = { 		colorJSON = &quot;Vorlage:Standardfarbe/colors.json&quot;, 		errorOutput = &quot;&lt;span class=\&quot;error\&quot;&gt;Fehler in Vorlage:Standardfarbe: %s&lt;/span&gt;&quot; 	}, 	colors = { }, 	serial = &quot;&quot; }  Standardfarbe.formatError = function ( message ) 	-- format error message 	-- parameters: 	--   message: (string) raw error message 	-- returns: 	--   (string) formatted error message 	return string.format( Standardfarbe.config.errorO…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=372&amp;oldid=prev"/>
		<updated>2024-08-28T13:59:07Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „-- module table local Standardfarbe = { 	config = { 		colorJSON = &amp;quot;Vorlage:Standardfarbe/colors.json&amp;quot;, 		errorOutput = &amp;quot;&amp;lt;span class=\&amp;quot;error\&amp;quot;&amp;gt;Fehler in &lt;a href=&quot;/index.php/Vorlage:Standardfarbe&quot; title=&quot;Vorlage:Standardfarbe&quot;&gt;Vorlage:Standardfarbe&lt;/a&gt;: %s&amp;lt;/span&amp;gt;&amp;quot; 	}, 	colors = { }, 	serial = &amp;quot;&amp;quot; }  Standardfarbe.formatError = function ( message ) 	-- format error message 	-- parameters: 	--   message: (string) raw error message 	-- returns: 	--   (string) formatted error message 	return string.format( Standardfarbe.config.errorO…“&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 28. August 2024, 13:59 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Andreas.Czak</name></author>
	</entry>
	<entry>
		<id>https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=590&amp;oldid=prev</id>
		<title>w:c:wiki&gt;Hgzh: Schützte „Modul:Vorlage:Standardfarbe“: Häufig eingebundenes Modul ([Bearbeiten=Nur Sichter] (unbeschränkt) [Verschieben=Nur Sichter] (unbeschränkt))</title>
		<link rel="alternate" type="text/html" href="https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=590&amp;oldid=prev"/>
		<updated>2024-07-11T12:27:23Z</updated>

		<summary type="html">&lt;p&gt;Schützte „&lt;a href=&quot;/index.php/Modul:Vorlage:Standardfarbe&quot; title=&quot;Modul:Vorlage:Standardfarbe&quot;&gt;Modul:Vorlage:Standardfarbe&lt;/a&gt;“: Häufig eingebundenes Modul ([Bearbeiten=Nur Sichter] (unbeschränkt) [Verschieben=Nur Sichter] (unbeschränkt))&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 11. Juli 2024, 12:27 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>w:c:wiki&gt;Hgzh</name></author>
	</entry>
	<entry>
		<id>https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=448&amp;oldid=prev</id>
		<title>w&gt;Hgzh: Schützte „Modul:Vorlage:Standardfarbe“: Häufig eingebundenes Modul ([Bearbeiten=Nur Sichter] (unbeschränkt) [Verschieben=Nur Sichter] (unbeschränkt))</title>
		<link rel="alternate" type="text/html" href="https://wiki.atlaws.eu/index.php?title=Modul:Vorlage:Standardfarbe&amp;diff=448&amp;oldid=prev"/>
		<updated>2024-07-11T12:27:23Z</updated>

		<summary type="html">&lt;p&gt;Schützte „&lt;a href=&quot;/index.php/Modul:Vorlage:Standardfarbe&quot; title=&quot;Modul:Vorlage:Standardfarbe&quot;&gt;Modul:Vorlage:Standardfarbe&lt;/a&gt;“: Häufig eingebundenes Modul ([Bearbeiten=Nur Sichter] (unbeschränkt) [Verschieben=Nur Sichter] (unbeschränkt))&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- module table&lt;br /&gt;
local Standardfarbe = {&lt;br /&gt;
	config = {&lt;br /&gt;
		colorJSON = &amp;quot;Vorlage:Standardfarbe/colors.json&amp;quot;,&lt;br /&gt;
		errorOutput = &amp;quot;&amp;lt;span class=\&amp;quot;error\&amp;quot;&amp;gt;Fehler in [[Vorlage:Standardfarbe]]: %s&amp;lt;/span&amp;gt;&amp;quot;&lt;br /&gt;
	},&lt;br /&gt;
	colors = { },&lt;br /&gt;
	serial = &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Standardfarbe.formatError = function ( message )&lt;br /&gt;
	-- format error message&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   message: (string) raw error message&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (string) formatted error message&lt;br /&gt;
	return string.format( Standardfarbe.config.errorOutput, message )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
Standardfarbe.iterateColorGroup = function ( group, key )&lt;br /&gt;
	-- return color value&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   group: (table) color group&lt;br /&gt;
	--   key:   (string) key to find&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (bool, table) color block found, color block table&lt;br /&gt;
	&lt;br /&gt;
	for _, block in ipairs( group ) do&lt;br /&gt;
		for _, k in ipairs( block.keys ) do&lt;br /&gt;
			if k == key then&lt;br /&gt;
				return true, block.colors&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return false, {}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
Standardfarbe.loadColorsJson = function ( page )&lt;br /&gt;
	-- load colors from json page&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   page: (string) path to color json page&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (bool) true or false by success/fault&lt;br /&gt;
	&lt;br /&gt;
	local success, c = pcall( mw.loadJsonData, page )&lt;br /&gt;
	if type( c ) == &amp;quot;table&amp;quot; then&lt;br /&gt;
		Standardfarbe.colors = c&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return success&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
Standardfarbe.getColor = function ( group, key, mode, ucase )&lt;br /&gt;
	-- return color value&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   group:  (string) color group&lt;br /&gt;
	--   key:    (string) color key&lt;br /&gt;
	--   mode:   (string) display mode&lt;br /&gt;
	--   ucase:  (bool)   uppercase color codes&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (string) hex color code&lt;br /&gt;
	&lt;br /&gt;
	local blockColors -- colors in block&lt;br /&gt;
	local groupColors -- colors in group&lt;br /&gt;
	local found       -- color block found&lt;br /&gt;
	local color       -- color value&lt;br /&gt;
&lt;br /&gt;
	-- load defined colors&lt;br /&gt;
	if Standardfarbe.loadColorsJson( Standardfarbe.config.colorJSON ) == false then&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- find color group&lt;br /&gt;
	groupColors = Standardfarbe.colors[group]&lt;br /&gt;
	if type( groupColors ) ~= &amp;quot;table&amp;quot; then&lt;br /&gt;
		return Standardfarbe.formatError( &amp;quot;color group not found&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- find color block with key&lt;br /&gt;
	found, blockColors = Standardfarbe.iterateColorGroup( groupColors, key )&lt;br /&gt;
	if found == false then&lt;br /&gt;
		return Standardfarbe.formatError( &amp;quot;color key not found&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- find color in block&lt;br /&gt;
	if mode == &amp;quot;&amp;quot; then&lt;br /&gt;
		mode = &amp;quot;light&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	color = blockColors[mode]&lt;br /&gt;
	if color == nil then&lt;br /&gt;
		color = blockColors[&amp;quot;light&amp;quot;]&lt;br /&gt;
		if color == nil then&lt;br /&gt;
			return Standardfarbe.formatError( &amp;quot;no matching color mode&amp;quot; )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- uppercase, if wanted&lt;br /&gt;
	if ucase then&lt;br /&gt;
		color = string.upper( color )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- return color value&lt;br /&gt;
	return color&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- export table&lt;br /&gt;
local p = { }&lt;br /&gt;
&lt;br /&gt;
p.outputDefinedColors = function ( frame )&lt;br /&gt;
	-- return wikitable with defined colors&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   frame: (table) wiki environment frame&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (string) wikitable code&lt;br /&gt;
	&lt;br /&gt;
	local wtbmain -- main wikitable&lt;br /&gt;
	local wtbhead -- wikitable head&lt;br /&gt;
	local wtbrow  -- color row&lt;br /&gt;
	local wtbcol  -- color cell&lt;br /&gt;
	local keys    -- color keys&lt;br /&gt;
	local count   -- color count&lt;br /&gt;
&lt;br /&gt;
	-- load defined colors&lt;br /&gt;
	if Standardfarbe.loadColorsJson( Standardfarbe.config.colorJSON ) == false then&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- create wikitable&lt;br /&gt;
	wtbmain = mw.html.create( &amp;quot;table&amp;quot; ):addClass( &amp;quot;wikitable&amp;quot; )&lt;br /&gt;
	&lt;br /&gt;
	-- create headline&lt;br /&gt;
	wtbhead = mw.html.create( &amp;quot;tr&amp;quot; )&lt;br /&gt;
		:node( mw.html.create( &amp;quot;th&amp;quot; ):wikitext( &amp;quot;Gruppe&amp;quot; ):attr( &amp;quot;rowspan&amp;quot;, 2 ) )&lt;br /&gt;
		:node( mw.html.create( &amp;quot;th&amp;quot; ):wikitext( &amp;quot;Schlüssel&amp;quot; ):attr( &amp;quot;rowspan&amp;quot;, 2 ) )&lt;br /&gt;
		:node( mw.html.create( &amp;quot;th&amp;quot; ):wikitext( &amp;quot;Farbe/Modus&amp;quot; ):attr( &amp;quot;colspan&amp;quot;, 4 ) )&lt;br /&gt;
	wtbmain:node( wtbhead )&lt;br /&gt;
	wtbhead = mw.html.create( &amp;quot;tr&amp;quot; )&lt;br /&gt;
		:node( mw.html.create( &amp;quot;th&amp;quot; ):wikitext( &amp;quot;Hell&amp;quot; ):attr( &amp;quot;colspan&amp;quot;, 2 ) )&lt;br /&gt;
		:node( mw.html.create( &amp;quot;th&amp;quot; ):wikitext( &amp;quot;Dunkel&amp;quot; ):attr( &amp;quot;colspan&amp;quot;, 2 ) )&lt;br /&gt;
	wtbmain:node( wtbhead )&lt;br /&gt;
	&lt;br /&gt;
	-- create lines for colors in groups&lt;br /&gt;
	for group, groupColors in pairs( Standardfarbe.colors ) do&lt;br /&gt;
		count = 0&lt;br /&gt;
		for _, _ in ipairs( groupColors ) do&lt;br /&gt;
			count = count + 1	&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		for i, color in ipairs( groupColors ) do&lt;br /&gt;
			wtbrow = mw.html.create( &amp;quot;tr&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
			-- create first cell that has the group name&lt;br /&gt;
			if i == 1 then&lt;br /&gt;
				wtbrow:node( mw.html.create( &amp;quot;td&amp;quot; ):attr( &amp;quot;rowspan&amp;quot;, count ):wikitext( group ) )&lt;br /&gt;
			end&lt;br /&gt;
			&lt;br /&gt;
			-- color keys&lt;br /&gt;
			keys = &amp;quot;&amp;quot;&lt;br /&gt;
			for _, key in ipairs( color.keys ) do&lt;br /&gt;
				code = mw.html.create( &amp;quot;code&amp;quot; ):wikitext( key )&lt;br /&gt;
				keys = keys .. tostring( code ) .. &amp;quot; &amp;quot;&lt;br /&gt;
			end&lt;br /&gt;
			wtbrow:node( mw.html.create( &amp;quot;td&amp;quot; ):wikitext( keys ) )&lt;br /&gt;
			&lt;br /&gt;
			-- colors&lt;br /&gt;
			wtbcol = mw.html.create( &amp;quot;td&amp;quot; ):wikitext( &amp;quot;#&amp;quot; .. color.colors[&amp;quot;light&amp;quot;] )&lt;br /&gt;
			if color.colors[&amp;quot;dark&amp;quot;] == nil then&lt;br /&gt;
				wtbcol:attr( &amp;quot;colspan&amp;quot;, 3 )&lt;br /&gt;
				wtbcol:css( &amp;quot;text-align&amp;quot;, &amp;quot;center&amp;quot; )&lt;br /&gt;
			end&lt;br /&gt;
			wtbrow:node( wtbcol )&lt;br /&gt;
			wtbrow:node( mw.html.create( &amp;quot;td&amp;quot; ):css( &amp;quot;background-color&amp;quot;, &amp;quot;#&amp;quot; .. color.colors[&amp;quot;light&amp;quot;] ):wikitext(&amp;quot;&amp;amp;nbsp;&amp;quot;) )&lt;br /&gt;
			&lt;br /&gt;
			if color.colors[&amp;quot;dark&amp;quot;] ~= nil then&lt;br /&gt;
				wtbrow:node( mw.html.create( &amp;quot;td&amp;quot; ):wikitext( &amp;quot;#&amp;quot; .. color.colors[&amp;quot;dark&amp;quot;] ) )&lt;br /&gt;
				wtbrow:node( mw.html.create( &amp;quot;td&amp;quot; ):css( &amp;quot;background-color&amp;quot;, &amp;quot;#&amp;quot; .. color.colors[&amp;quot;dark&amp;quot;] ):wikitext(&amp;quot;&amp;amp;nbsp;&amp;quot;) )&lt;br /&gt;
			end&lt;br /&gt;
			&lt;br /&gt;
			-- add current row to table&lt;br /&gt;
			wtbmain:node( wtbrow )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- return wikitable&lt;br /&gt;
	return tostring( wtbmain )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
p.f = function ( frame )&lt;br /&gt;
	-- return color value, access from templates&lt;br /&gt;
	-- parameters:&lt;br /&gt;
	--   frame: (table) wiki environment frame&lt;br /&gt;
	-- returns:&lt;br /&gt;
	--   (string) hex color code&lt;br /&gt;
	&lt;br /&gt;
	local args	 -- arguments of template call&lt;br /&gt;
	local group  -- color group&lt;br /&gt;
	local key    -- color key&lt;br /&gt;
	local mode   -- display mode&lt;br /&gt;
	local ucase  -- uppercase color values&lt;br /&gt;
	local nowiki -- enclose in nowiki tags&lt;br /&gt;
	&lt;br /&gt;
	-- get template parameters&lt;br /&gt;
	args   = frame:getParent().args&lt;br /&gt;
	group  = args[1] or &amp;quot;&amp;quot;&lt;br /&gt;
	key    = args[2] or &amp;quot;&amp;quot;&lt;br /&gt;
	mode   = args[&amp;quot;mode&amp;quot;] or &amp;quot;light&amp;quot;&lt;br /&gt;
	ucase  = ( args[&amp;quot;ucase&amp;quot;] == &amp;quot;1&amp;quot; )&lt;br /&gt;
	nowiki = ( args[&amp;quot;nowiki&amp;quot;] == &amp;quot;1&amp;quot; )&lt;br /&gt;
	&lt;br /&gt;
	-- call main and return&lt;br /&gt;
	local success, r = pcall( Standardfarbe.getColor, group, key, mode, ucase )&lt;br /&gt;
	if not success then&lt;br /&gt;
		return Standardfarbe.formatError( &amp;quot;color call failed&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- apply nowiki&lt;br /&gt;
	if nowiki then&lt;br /&gt;
		r = frame:extensionTag( &amp;quot;nowiki&amp;quot;, r )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- return&lt;br /&gt;
	return r&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
setmetatable( p,  { __call = function ( func, ... )&lt;br /&gt;
                                 setmetatable( p, nil )&lt;br /&gt;
                                 return Failsafe&lt;br /&gt;
                             end } )&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>w&gt;Hgzh</name></author>
	</entry>
</feed>