<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.cev-eris.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SahQO+YOLOS</id>
	<title>Discordia - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cev-eris.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SahQO+YOLOS"/>
	<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/Special:Contributions/SahQO_YOLOS"/>
	<updated>2026-04-30T01:27:39Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Module:Navbox&amp;diff=223</id>
		<title>Module:Navbox</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Module:Navbox&amp;diff=223"/>
		<updated>2019-03-06T14:13:34Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;-- -- This module implements {{Navbox}} --  local p = {}  local navbar = require('Module:Navbar')._navbar local getArgs -- lazily initialized  local args local tableRowAdded =...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;--&lt;br /&gt;
-- This module implements {{Navbox}}&lt;br /&gt;
--&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local navbar = require('Module:Navbar')._navbar&lt;br /&gt;
local getArgs -- lazily initialized&lt;br /&gt;
&lt;br /&gt;
local args&lt;br /&gt;
local tableRowAdded = false&lt;br /&gt;
local border&lt;br /&gt;
local listnums = {}&lt;br /&gt;
&lt;br /&gt;
local function trim(s)&lt;br /&gt;
    return (mw.ustring.gsub(s, &amp;quot;^%s*(.-)%s*$&amp;quot;, &amp;quot;%1&amp;quot;))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function addNewline(s)&lt;br /&gt;
    if s:match('^[*:;#]') or s:match('^{|') then&lt;br /&gt;
        return '\n' .. s ..'\n'&lt;br /&gt;
    else&lt;br /&gt;
        return s&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function addTableRow(tbl)&lt;br /&gt;
    -- If any other rows have already been added, then we add a 2px gutter row.&lt;br /&gt;
    if tableRowAdded then&lt;br /&gt;
        tbl&lt;br /&gt;
            :tag('tr')&lt;br /&gt;
                :css('height', '2px')&lt;br /&gt;
                :tag('td')&lt;br /&gt;
                    :attr('colspan',2)&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    tableRowAdded = true&lt;br /&gt;
&lt;br /&gt;
    return tbl:tag('tr')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderNavBar(titleCell)&lt;br /&gt;
    -- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left&lt;br /&gt;
    -- or right to keep the title centered.&lt;br /&gt;
    local spacerSide = nil&lt;br /&gt;
&lt;br /&gt;
    if args.navbar == 'off' then&lt;br /&gt;
        -- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's&lt;br /&gt;
        -- also no show/hide link, then we need a spacer on the right to achieve the left shift.&lt;br /&gt;
        if args.state == 'plain' then spacerSide = 'right' end&lt;br /&gt;
    elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then&lt;br /&gt;
        -- No navbar. Need a spacer on the left to balance out the width of the show/hide link.&lt;br /&gt;
        if args.state ~= 'plain' then spacerSide = 'left' end&lt;br /&gt;
    else&lt;br /&gt;
        -- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right&lt;br /&gt;
        -- to balance out the width of the navbar.&lt;br /&gt;
        if args.state == 'plain' then spacerSide = 'right' end&lt;br /&gt;
&lt;br /&gt;
        titleCell:wikitext(navbar{&lt;br /&gt;
            args.name,&lt;br /&gt;
            mini = 1,&lt;br /&gt;
            fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') ..  ';background:none transparent;border:none;'&lt;br /&gt;
        })&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    -- Render the spacer div.&lt;br /&gt;
    if spacerSide then&lt;br /&gt;
        titleCell&lt;br /&gt;
            :tag('span')&lt;br /&gt;
                :css('float', spacerSide)&lt;br /&gt;
                :css('width', '6em')&lt;br /&gt;
                :wikitext('&amp;amp;nbsp;')&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--&lt;br /&gt;
--   Title row&lt;br /&gt;
--&lt;br /&gt;
local function renderTitleRow(tbl)&lt;br /&gt;
    if not args.title then return end&lt;br /&gt;
&lt;br /&gt;
    local titleRow = addTableRow(tbl)&lt;br /&gt;
&lt;br /&gt;
    if args.titlegroup then&lt;br /&gt;
        titleRow&lt;br /&gt;
            :tag('th')&lt;br /&gt;
                :attr('scope', 'row')&lt;br /&gt;
                :addClass('navbox-group')&lt;br /&gt;
                :addClass(args.titlegroupclass)&lt;br /&gt;
                :cssText(args.basestyle)&lt;br /&gt;
                :cssText(args.groupstyle)&lt;br /&gt;
                :cssText(args.titlegroupstyle)&lt;br /&gt;
                :wikitext(args.titlegroup)&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local titleCell = titleRow:tag('th'):attr('scope', 'col')&lt;br /&gt;
&lt;br /&gt;
    if args.titlegroup then&lt;br /&gt;
        titleCell&lt;br /&gt;
            :css('border-left', '2px solid #fdfdfd')&lt;br /&gt;
            :css('width', '100%')&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local titleColspan = 2&lt;br /&gt;
    if args.imageleft then titleColspan = titleColspan + 1 end&lt;br /&gt;
    if args.image then titleColspan = titleColspan + 1 end&lt;br /&gt;
    if args.titlegroup then titleColspan = titleColspan - 1 end&lt;br /&gt;
&lt;br /&gt;
    titleCell&lt;br /&gt;
        :cssText(args.basestyle)&lt;br /&gt;
        :cssText(args.titlestyle)&lt;br /&gt;
        :addClass('navbox-title')&lt;br /&gt;
        :attr('colspan', titleColspan)&lt;br /&gt;
&lt;br /&gt;
    renderNavBar(titleCell)&lt;br /&gt;
&lt;br /&gt;
    titleCell&lt;br /&gt;
        :tag('div')&lt;br /&gt;
            :attr('id', mw.uri.anchorEncode(args.title))&lt;br /&gt;
            :addClass(args.titleclass)&lt;br /&gt;
            :css('font-size', '114%')&lt;br /&gt;
            :wikitext(addNewline(args.title))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--&lt;br /&gt;
--   Above/Below rows&lt;br /&gt;
--&lt;br /&gt;
&lt;br /&gt;
local function getAboveBelowColspan()&lt;br /&gt;
    local ret = 2&lt;br /&gt;
    if args.imageleft then ret = ret + 1 end&lt;br /&gt;
    if args.image then ret = ret + 1 end&lt;br /&gt;
    return ret&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderAboveRow(tbl)&lt;br /&gt;
    if not args.above then return end&lt;br /&gt;
&lt;br /&gt;
    addTableRow(tbl)&lt;br /&gt;
        :tag('td')&lt;br /&gt;
            :addClass('navbox-abovebelow')&lt;br /&gt;
            :addClass(args.aboveclass)&lt;br /&gt;
            :cssText(args.basestyle)&lt;br /&gt;
            :cssText(args.abovestyle)&lt;br /&gt;
            :attr('colspan', getAboveBelowColspan())&lt;br /&gt;
            :tag('div')&lt;br /&gt;
                :wikitext(addNewline(args.above))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderBelowRow(tbl)&lt;br /&gt;
    if not args.below then return end&lt;br /&gt;
&lt;br /&gt;
    addTableRow(tbl)&lt;br /&gt;
        :tag('td')&lt;br /&gt;
            :addClass('navbox-abovebelow')&lt;br /&gt;
            :addClass(args.belowclass)&lt;br /&gt;
            :cssText(args.basestyle)&lt;br /&gt;
            :cssText(args.belowstyle)&lt;br /&gt;
            :attr('colspan', getAboveBelowColspan())&lt;br /&gt;
            :tag('div')&lt;br /&gt;
                :wikitext(addNewline(args.below))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--&lt;br /&gt;
--   List rows&lt;br /&gt;
--&lt;br /&gt;
local function renderListRow(tbl, listnum)&lt;br /&gt;
    local row = addTableRow(tbl)&lt;br /&gt;
&lt;br /&gt;
    if listnum == 1 and args.imageleft then&lt;br /&gt;
        row&lt;br /&gt;
            :tag('td')&lt;br /&gt;
                :addClass('navbox-image')&lt;br /&gt;
                :addClass(args.imageclass)&lt;br /&gt;
                :css('width', '0%')&lt;br /&gt;
                :css('padding', '0px 2px 0px 0px')&lt;br /&gt;
                :cssText(args.imageleftstyle)&lt;br /&gt;
                :attr('rowspan', 2 * #listnums - 1)&lt;br /&gt;
                :tag('div')&lt;br /&gt;
                    :wikitext(addNewline(args.imageleft))&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if args['group' .. listnum] then&lt;br /&gt;
        local groupCell = row:tag('th')&lt;br /&gt;
&lt;br /&gt;
        groupCell&lt;br /&gt;
            :attr('scope', 'row')&lt;br /&gt;
            :addClass('navbox-group')&lt;br /&gt;
            :addClass(args.groupclass)&lt;br /&gt;
            :cssText(args.basestyle)&lt;br /&gt;
&lt;br /&gt;
        if args.groupwidth then&lt;br /&gt;
            groupCell:css('width', args.groupwidth)&lt;br /&gt;
        end&lt;br /&gt;
&lt;br /&gt;
        groupCell&lt;br /&gt;
            :cssText(args.groupstyle)&lt;br /&gt;
            :cssText(args['group' .. listnum .. 'style'])&lt;br /&gt;
            :wikitext(args['group' .. listnum])&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local listCell = row:tag('td')&lt;br /&gt;
&lt;br /&gt;
    if args['group' .. listnum] then&lt;br /&gt;
        listCell&lt;br /&gt;
            :css('text-align', 'left')&lt;br /&gt;
            :css('border-left-width', '2px')&lt;br /&gt;
            :css('border-left-style', 'solid')&lt;br /&gt;
    else&lt;br /&gt;
        listCell:attr('colspan', 2)&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if not args.groupwidth then&lt;br /&gt;
        listCell:css('width', '100%')&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local isOdd = (listnum % 2) == 1&lt;br /&gt;
    local rowstyle = args.evenstyle&lt;br /&gt;
    if isOdd then rowstyle = args.oddstyle end&lt;br /&gt;
&lt;br /&gt;
    local evenOdd&lt;br /&gt;
    if args.evenodd == 'swap' then&lt;br /&gt;
        if isOdd then evenOdd = 'even' else evenOdd = 'odd' end&lt;br /&gt;
    else&lt;br /&gt;
        if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    listCell&lt;br /&gt;
        :css('padding', '0px')&lt;br /&gt;
        :cssText(args.liststyle)&lt;br /&gt;
        :cssText(rowstyle)&lt;br /&gt;
        :cssText(args['list' .. listnum .. 'style'])&lt;br /&gt;
        :addClass('navbox-list')&lt;br /&gt;
        :addClass('navbox-' .. evenOdd)&lt;br /&gt;
        :addClass(args.listclass)&lt;br /&gt;
        :tag('div')&lt;br /&gt;
            :css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')&lt;br /&gt;
            :wikitext(addNewline(args['list' .. listnum]))&lt;br /&gt;
&lt;br /&gt;
    if listnum == 1 and args.image then&lt;br /&gt;
        row&lt;br /&gt;
            :tag('td')&lt;br /&gt;
                :addClass('navbox-image')&lt;br /&gt;
                :addClass(args.imageclass)&lt;br /&gt;
                :css('width', '0%')&lt;br /&gt;
                :css('padding', '0px 0px 0px 2px')&lt;br /&gt;
                :cssText(args.imagestyle)&lt;br /&gt;
                :attr('rowspan', 2 * #listnums - 1)&lt;br /&gt;
                :tag('div')&lt;br /&gt;
                    :wikitext(addNewline(args.image))&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--&lt;br /&gt;
--   Tracking categories&lt;br /&gt;
--&lt;br /&gt;
&lt;br /&gt;
local function needsHorizontalLists()&lt;br /&gt;
    if border == 'child' or border == 'subgroup'  or args.tracking == 'no' then return false end&lt;br /&gt;
&lt;br /&gt;
    local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}&lt;br /&gt;
    for i, cls in ipairs(listClasses) do&lt;br /&gt;
        if args.listclass == cls or args.bodyclass == cls then&lt;br /&gt;
            return false&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function hasBackgroundColors()&lt;br /&gt;
    return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getTrackingCategories()&lt;br /&gt;
    local cats = {}&lt;br /&gt;
    if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end&lt;br /&gt;
    if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end&lt;br /&gt;
   &lt;br /&gt;
    return cats&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function renderTrackingCategories(builder)&lt;br /&gt;
    local title = mw.title.getCurrentTitle()&lt;br /&gt;
    if title.namespace ~= 10 then return end -- not in template space&lt;br /&gt;
    local subpage = title.subpageText&lt;br /&gt;
    if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end&lt;br /&gt;
&lt;br /&gt;
    for i, cat in ipairs(getTrackingCategories()) do&lt;br /&gt;
        builder:wikitext('[[Category:' .. cat .. ']]')&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--&lt;br /&gt;
--   Main navbox tables&lt;br /&gt;
--&lt;br /&gt;
local function renderMainTable()&lt;br /&gt;
    local tbl = mw.html.create('table')&lt;br /&gt;
        :addClass('nowraplinks')&lt;br /&gt;
        :addClass(args.bodyclass)&lt;br /&gt;
&lt;br /&gt;
    if args.title and (args.state ~= 'plain' and args.state ~= 'off') then&lt;br /&gt;
        tbl&lt;br /&gt;
            :addClass('mw-collapsible')&lt;br /&gt;
            :addClass(args.state or 'mw-autocollapse')&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    tbl:css('border-spacing', 0)&lt;br /&gt;
    if border == 'subgroup' or border == 'child' or border == 'none' then&lt;br /&gt;
        tbl&lt;br /&gt;
            :addClass('navbox-subgroup')&lt;br /&gt;
            :cssText(args.bodystyle)&lt;br /&gt;
            :cssText(args.style)&lt;br /&gt;
    else -- regular navobx - bodystyle and style will be applied to the wrapper table&lt;br /&gt;
        tbl&lt;br /&gt;
            :addClass('navbox-inner')&lt;br /&gt;
            :css('background', 'transparent')&lt;br /&gt;
            :css('color', 'inherit')&lt;br /&gt;
    end&lt;br /&gt;
    tbl:cssText(args.innerstyle)&lt;br /&gt;
&lt;br /&gt;
    renderTitleRow(tbl)&lt;br /&gt;
    renderAboveRow(tbl)&lt;br /&gt;
    for i, listnum in ipairs(listnums) do&lt;br /&gt;
        renderListRow(tbl, listnum)&lt;br /&gt;
    end&lt;br /&gt;
    renderBelowRow(tbl)&lt;br /&gt;
&lt;br /&gt;
    return tbl&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._navbox(navboxArgs)&lt;br /&gt;
    args = navboxArgs&lt;br /&gt;
&lt;br /&gt;
    for k, v in pairs(args) do&lt;br /&gt;
        local listnum = ('' .. k):match('^list(%d+)$')&lt;br /&gt;
        if listnum then table.insert(listnums, tonumber(listnum)) end&lt;br /&gt;
    end&lt;br /&gt;
    table.sort(listnums)&lt;br /&gt;
&lt;br /&gt;
    border = trim(args.border or args[1] or '')&lt;br /&gt;
&lt;br /&gt;
    -- render the main body of the navbox&lt;br /&gt;
    local tbl = renderMainTable()&lt;br /&gt;
&lt;br /&gt;
    -- render the appropriate wrapper around the navbox, depending on the border param&lt;br /&gt;
    local res = mw.html.create()&lt;br /&gt;
    if border == 'none' then&lt;br /&gt;
        local nav = res:tag('div')&lt;br /&gt;
            :attr('role', 'navigation')&lt;br /&gt;
            :node(tbl)&lt;br /&gt;
        if args.title then&lt;br /&gt;
            nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))&lt;br /&gt;
        else&lt;br /&gt;
            nav:attr('aria-label', 'Navbox')&lt;br /&gt;
        end&lt;br /&gt;
    elseif border == 'subgroup' or border == 'child' then&lt;br /&gt;
        -- We assume that this navbox is being rendered in a list cell of a parent navbox, and is&lt;br /&gt;
        -- therefore inside a div with padding:0em 0.25em. We start with a &amp;lt;/div&amp;gt; to avoid the&lt;br /&gt;
        -- padding being applied, and at the end add a &amp;lt;div&amp;gt; to balance out the parent's &amp;lt;/div&amp;gt;&lt;br /&gt;
        res&lt;br /&gt;
            :wikitext('&amp;lt;/div&amp;gt;') -- XXX: hack due to lack of unclosed support in mw.html.&lt;br /&gt;
            :node(tbl)&lt;br /&gt;
            :wikitext('&amp;lt;div&amp;gt;') -- XXX: hack due to lack of unclosed support in mw.html.&lt;br /&gt;
    else&lt;br /&gt;
        local nav = res:tag('div')&lt;br /&gt;
            :attr('role', 'navigation')&lt;br /&gt;
            :addClass('navbox')&lt;br /&gt;
            :cssText(args.bodystyle)&lt;br /&gt;
            :cssText(args.style)&lt;br /&gt;
            :css('padding', '3px')&lt;br /&gt;
            :node(tbl)&lt;br /&gt;
        if args.title then&lt;br /&gt;
            nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))&lt;br /&gt;
        else&lt;br /&gt;
            nav:attr('aria-label', 'Navbox')&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    renderTrackingCategories(res)&lt;br /&gt;
&lt;br /&gt;
    return tostring(res)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.navbox(frame)&lt;br /&gt;
    if not getArgs then&lt;br /&gt;
        getArgs = require('Module:Arguments').getArgs&lt;br /&gt;
    end&lt;br /&gt;
    args = getArgs(frame, {wrappers = 'Template:Navbox'})&lt;br /&gt;
&lt;br /&gt;
    -- Read the arguments in the order they'll be output in, to make references number in the right order.&lt;br /&gt;
    local _&lt;br /&gt;
    _ = args.title&lt;br /&gt;
    _ = args.above&lt;br /&gt;
    for i = 1, 20 do&lt;br /&gt;
        _ = args[&amp;quot;group&amp;quot; .. tostring(i)]&lt;br /&gt;
        _ = args[&amp;quot;list&amp;quot; .. tostring(i)]&lt;br /&gt;
    end&lt;br /&gt;
    _ = args.below&lt;br /&gt;
&lt;br /&gt;
    return p._navbox(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Module:Navbar&amp;diff=222</id>
		<title>Module:Navbar</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Module:Navbar&amp;diff=222"/>
		<updated>2019-03-06T14:13:08Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;local p = {}  local getArgs  function p._navbar(args) 	local titleArg = 1  	if args.collapsible then 		titleArg = 2 		if not args.plain then 			args.mini = 1 		end 		if args.f...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
local getArgs&lt;br /&gt;
&lt;br /&gt;
function p._navbar(args)&lt;br /&gt;
	local titleArg = 1&lt;br /&gt;
&lt;br /&gt;
	if args.collapsible then&lt;br /&gt;
		titleArg = 2&lt;br /&gt;
		if not args.plain then&lt;br /&gt;
			args.mini = 1&lt;br /&gt;
		end&lt;br /&gt;
		if args.fontcolor then&lt;br /&gt;
			args.fontstyle = 'color:' .. args.fontcolor .. ';'&lt;br /&gt;
		end&lt;br /&gt;
		args.style = 'float:left; text-align:left; width:6em;'&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())&lt;br /&gt;
	local title = mw.title.new(mw.text.trim(titleText), 'Template');&lt;br /&gt;
&lt;br /&gt;
	if not title then&lt;br /&gt;
		error('Invalid title ' .. titleText)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';&lt;br /&gt;
&lt;br /&gt;
	local div = mw.html.create():tag('div')&lt;br /&gt;
	div&lt;br /&gt;
		:addClass('plainlinks')&lt;br /&gt;
		:addClass('hlist')&lt;br /&gt;
		:addClass('navbar')&lt;br /&gt;
		:cssText(args.style)&lt;br /&gt;
&lt;br /&gt;
	if args.mini then div:addClass('mini') end&lt;br /&gt;
&lt;br /&gt;
	if not (args.mini or args.plain) then&lt;br /&gt;
		div&lt;br /&gt;
			:tag('span')&lt;br /&gt;
				:css('word-spacing', 0)&lt;br /&gt;
				:cssText(args.fontstyle)&lt;br /&gt;
				:wikitext(args.text or 'This box:')&lt;br /&gt;
				:wikitext(' ')&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if args.brackets then&lt;br /&gt;
		div&lt;br /&gt;
			:tag('span')&lt;br /&gt;
				:css('margin-right', '-0.125em')&lt;br /&gt;
				:cssText(args.fontstyle)&lt;br /&gt;
				:wikitext('&amp;amp;#91;')&lt;br /&gt;
				:newline();&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local ul = div:tag('ul');&lt;br /&gt;
&lt;br /&gt;
	ul&lt;br /&gt;
		:tag('li')&lt;br /&gt;
			:addClass('nv-view')&lt;br /&gt;
			:wikitext('[[' .. title.fullText .. '|')&lt;br /&gt;
			:tag(args.mini and 'abbr' or 'span')&lt;br /&gt;
				:attr('title', 'View this template')&lt;br /&gt;
				:cssText(args.fontstyle)&lt;br /&gt;
				:wikitext(args.mini and 'v' or 'view')&lt;br /&gt;
				:done()&lt;br /&gt;
			:wikitext(']]')&lt;br /&gt;
			:done()&lt;br /&gt;
		:tag('li')&lt;br /&gt;
			:addClass('nv-talk')&lt;br /&gt;
			:wikitext('[[' .. talkpage .. '|')&lt;br /&gt;
			:tag(args.mini and 'abbr' or 'span')&lt;br /&gt;
				:attr('title', 'Discuss this template')&lt;br /&gt;
				:cssText(args.fontstyle)&lt;br /&gt;
				:wikitext(args.mini and 't' or 'talk')&lt;br /&gt;
				:done()&lt;br /&gt;
			:wikitext(']]');&lt;br /&gt;
&lt;br /&gt;
	if not args.noedit then&lt;br /&gt;
		ul&lt;br /&gt;
			:tag('li')&lt;br /&gt;
				:addClass('nv-edit')&lt;br /&gt;
				:wikitext('[' .. title:fullUrl('action=edit') .. ' ')&lt;br /&gt;
				:tag(args.mini and 'abbr' or 'span')&lt;br /&gt;
					:attr('title', 'Edit this template')&lt;br /&gt;
					:cssText(args.fontstyle)&lt;br /&gt;
					:wikitext(args.mini and 'e' or 'edit')&lt;br /&gt;
					:done()&lt;br /&gt;
				:wikitext(']');&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if args.brackets then&lt;br /&gt;
		div&lt;br /&gt;
			:tag('span')&lt;br /&gt;
				:css('margin-left', '-0.125em')&lt;br /&gt;
				:cssText(args.fontstyle)&lt;br /&gt;
				:wikitext('&amp;amp;#93;')&lt;br /&gt;
				:newline();&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if args.collapsible then&lt;br /&gt;
		div&lt;br /&gt;
			:done()&lt;br /&gt;
		:tag('span')&lt;br /&gt;
			:css('font-size', '110%')&lt;br /&gt;
			:cssText(args.fontstyle)&lt;br /&gt;
			:wikitext(args[1])&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return tostring(div:done())&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.navbar(frame)&lt;br /&gt;
	if not getArgs then&lt;br /&gt;
		getArgs = require('Module:Arguments').getArgs&lt;br /&gt;
	end&lt;br /&gt;
	return p._navbar(getArgs(frame))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Module:Arguments&amp;diff=221</id>
		<title>Module:Arguments</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Module:Arguments&amp;diff=221"/>
		<updated>2019-03-06T14:11:38Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;-- This module provides easy processing of arguments passed to Scribunto from -- #invoke. It is intended for use by other Lua modules, and should not be -- called from #invoke...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-- This module provides easy processing of arguments passed to Scribunto from&lt;br /&gt;
-- #invoke. It is intended for use by other Lua modules, and should not be&lt;br /&gt;
-- called from #invoke directly.&lt;br /&gt;
&lt;br /&gt;
local libraryUtil = require('libraryUtil')&lt;br /&gt;
local checkType = libraryUtil.checkType&lt;br /&gt;
&lt;br /&gt;
local arguments = {}&lt;br /&gt;
&lt;br /&gt;
-- Generate four different tidyVal functions, so that we don't have to check the&lt;br /&gt;
-- options every time we call it.&lt;br /&gt;
&lt;br /&gt;
local function tidyValDefault(key, val)&lt;br /&gt;
	if type(val) == 'string' then&lt;br /&gt;
		val = val:match('^%s*(.-)%s*$')&lt;br /&gt;
		if val == '' then&lt;br /&gt;
			return nil&lt;br /&gt;
		else&lt;br /&gt;
			return val&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		return val&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function tidyValTrimOnly(key, val)&lt;br /&gt;
	if type(val) == 'string' then&lt;br /&gt;
		return val:match('^%s*(.-)%s*$')&lt;br /&gt;
	else&lt;br /&gt;
		return val&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function tidyValRemoveBlanksOnly(key, val)&lt;br /&gt;
	if type(val) == 'string' then&lt;br /&gt;
		if val:find('%S') then&lt;br /&gt;
			return val&lt;br /&gt;
		else&lt;br /&gt;
			return nil&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		return val&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function tidyValNoChange(key, val)&lt;br /&gt;
	return val&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function matchesTitle(given, title)&lt;br /&gt;
	local tp = type( given )&lt;br /&gt;
	return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local translate_mt = { __index = function(t, k) return k end }&lt;br /&gt;
&lt;br /&gt;
function arguments.getArgs(frame, options)&lt;br /&gt;
	checkType('getArgs', 1, frame, 'table', true)&lt;br /&gt;
	checkType('getArgs', 2, options, 'table', true)&lt;br /&gt;
	frame = frame or {}&lt;br /&gt;
	options = options or {}&lt;br /&gt;
&lt;br /&gt;
	--[[&lt;br /&gt;
	-- Set up argument translation.&lt;br /&gt;
	--]]&lt;br /&gt;
	options.translate = options.translate or {}&lt;br /&gt;
	if getmetatable(options.translate) == nil then&lt;br /&gt;
		setmetatable(options.translate, translate_mt)&lt;br /&gt;
	end&lt;br /&gt;
	if options.backtranslate == nil then&lt;br /&gt;
		options.backtranslate = {}&lt;br /&gt;
		for k,v in pairs(options.translate) do&lt;br /&gt;
			options.backtranslate[v] = k&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if options.backtranslate and getmetatable(options.backtranslate) == nil then&lt;br /&gt;
		setmetatable(options.backtranslate, {&lt;br /&gt;
			__index = function(t, k)&lt;br /&gt;
				if options.translate[k] ~= k then&lt;br /&gt;
					return nil&lt;br /&gt;
				else&lt;br /&gt;
					return k&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		})&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	--[[&lt;br /&gt;
	-- Get the argument tables. If we were passed a valid frame object, get the&lt;br /&gt;
	-- frame arguments (fargs) and the parent frame arguments (pargs), depending&lt;br /&gt;
	-- on the options set and on the parent frame's availability. If we weren't&lt;br /&gt;
	-- passed a valid frame object, we are being called from another Lua module&lt;br /&gt;
	-- or from the debug console, so assume that we were passed a table of args&lt;br /&gt;
	-- directly, and assign it to a new variable (luaArgs).&lt;br /&gt;
	--]]&lt;br /&gt;
	local fargs, pargs, luaArgs&lt;br /&gt;
	if type(frame.args) == 'table' and type(frame.getParent) == 'function' then&lt;br /&gt;
		if options.wrappers then&lt;br /&gt;
			--[[&lt;br /&gt;
			-- The wrappers option makes Module:Arguments look up arguments in&lt;br /&gt;
			-- either the frame argument table or the parent argument table, but&lt;br /&gt;
			-- not both. This means that users can use either the #invoke syntax&lt;br /&gt;
			-- or a wrapper template without the loss of performance associated&lt;br /&gt;
			-- with looking arguments up in both the frame and the parent frame.&lt;br /&gt;
			-- Module:Arguments will look up arguments in the parent frame&lt;br /&gt;
			-- if it finds the parent frame's title in options.wrapper;&lt;br /&gt;
			-- otherwise it will look up arguments in the frame object passed&lt;br /&gt;
			-- to getArgs.&lt;br /&gt;
			--]]&lt;br /&gt;
			local parent = frame:getParent()&lt;br /&gt;
			if not parent then&lt;br /&gt;
				fargs = frame.args&lt;br /&gt;
			else&lt;br /&gt;
				local title = parent:getTitle():gsub('/sandbox$', '')&lt;br /&gt;
				local found = false&lt;br /&gt;
				if matchesTitle(options.wrappers, title) then&lt;br /&gt;
					found = true&lt;br /&gt;
				elseif type(options.wrappers) == 'table' then&lt;br /&gt;
					for _,v in pairs(options.wrappers) do&lt;br /&gt;
						if matchesTitle(v, title) then&lt;br /&gt;
							found = true&lt;br /&gt;
							break&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				-- We test for false specifically here so that nil (the default) acts like true.&lt;br /&gt;
				if found or options.frameOnly == false then&lt;br /&gt;
					pargs = parent.args&lt;br /&gt;
				end&lt;br /&gt;
				if not found or options.parentOnly == false then&lt;br /&gt;
					fargs = frame.args&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- options.wrapper isn't set, so check the other options.&lt;br /&gt;
			if not options.parentOnly then&lt;br /&gt;
				fargs = frame.args&lt;br /&gt;
			end&lt;br /&gt;
			if not options.frameOnly then&lt;br /&gt;
				local parent = frame:getParent()&lt;br /&gt;
				pargs = parent and parent.args or nil&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if options.parentFirst then&lt;br /&gt;
			fargs, pargs = pargs, fargs&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		luaArgs = frame&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Set the order of precedence of the argument tables. If the variables are&lt;br /&gt;
	-- nil, nothing will be added to the table, which is how we avoid clashes&lt;br /&gt;
	-- between the frame/parent args and the Lua args.&lt;br /&gt;
	local argTables = {fargs}&lt;br /&gt;
	argTables[#argTables + 1] = pargs&lt;br /&gt;
	argTables[#argTables + 1] = luaArgs&lt;br /&gt;
&lt;br /&gt;
	--[[&lt;br /&gt;
	-- Generate the tidyVal function. If it has been specified by the user, we&lt;br /&gt;
	-- use that; if not, we choose one of four functions depending on the&lt;br /&gt;
	-- options chosen. This is so that we don't have to call the options table&lt;br /&gt;
	-- every time the function is called.&lt;br /&gt;
	--]]&lt;br /&gt;
	local tidyVal = options.valueFunc&lt;br /&gt;
	if tidyVal then&lt;br /&gt;
		if type(tidyVal) ~= 'function' then&lt;br /&gt;
			error(&lt;br /&gt;
				&amp;quot;bad value assigned to option 'valueFunc'&amp;quot;&lt;br /&gt;
					.. '(function expected, got '&lt;br /&gt;
					.. type(tidyVal)&lt;br /&gt;
					.. ')',&lt;br /&gt;
				2&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
	elseif options.trim ~= false then&lt;br /&gt;
		if options.removeBlanks ~= false then&lt;br /&gt;
			tidyVal = tidyValDefault&lt;br /&gt;
		else&lt;br /&gt;
			tidyVal = tidyValTrimOnly&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		if options.removeBlanks ~= false then&lt;br /&gt;
			tidyVal = tidyValRemoveBlanksOnly&lt;br /&gt;
		else&lt;br /&gt;
			tidyVal = tidyValNoChange&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	--[[&lt;br /&gt;
	-- Set up the args, metaArgs and nilArgs tables. args will be the one&lt;br /&gt;
	-- accessed from functions, and metaArgs will hold the actual arguments. Nil&lt;br /&gt;
	-- arguments are memoized in nilArgs, and the metatable connects all of them&lt;br /&gt;
	-- together.&lt;br /&gt;
	--]]&lt;br /&gt;
	local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}&lt;br /&gt;
	setmetatable(args, metatable)&lt;br /&gt;
&lt;br /&gt;
	local function mergeArgs(tables)&lt;br /&gt;
		--[[&lt;br /&gt;
		-- Accepts multiple tables as input and merges their keys and values&lt;br /&gt;
		-- into one table. If a value is already present it is not overwritten;&lt;br /&gt;
		-- tables listed earlier have precedence. We are also memoizing nil&lt;br /&gt;
		-- values, which can be overwritten if they are 's' (soft).&lt;br /&gt;
		--]]&lt;br /&gt;
		for _, t in ipairs(tables) do&lt;br /&gt;
			for key, val in pairs(t) do&lt;br /&gt;
				if metaArgs[key] == nil and nilArgs[key] ~= 'h' then&lt;br /&gt;
					local tidiedVal = tidyVal(key, val)&lt;br /&gt;
					if tidiedVal == nil then&lt;br /&gt;
						nilArgs[key] = 's'&lt;br /&gt;
					else&lt;br /&gt;
						metaArgs[key] = tidiedVal&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	--[[&lt;br /&gt;
	-- Define metatable behaviour. Arguments are memoized in the metaArgs table,&lt;br /&gt;
	-- and are only fetched from the argument tables once. Fetching arguments&lt;br /&gt;
	-- from the argument tables is the most resource-intensive step in this&lt;br /&gt;
	-- module, so we try and avoid it where possible. For this reason, nil&lt;br /&gt;
	-- arguments are also memoized, in the nilArgs table. Also, we keep a record&lt;br /&gt;
	-- in the metatable of when pairs and ipairs have been called, so we do not&lt;br /&gt;
	-- run pairs and ipairs on the argument tables more than once. We also do&lt;br /&gt;
	-- not run ipairs on fargs and pargs if pairs has already been run, as all&lt;br /&gt;
	-- the arguments will already have been copied over.&lt;br /&gt;
	--]]&lt;br /&gt;
&lt;br /&gt;
	metatable.__index = function (t, key)&lt;br /&gt;
		--[[&lt;br /&gt;
		-- Fetches an argument when the args table is indexed. First we check&lt;br /&gt;
		-- to see if the value is memoized, and if not we try and fetch it from&lt;br /&gt;
		-- the argument tables. When we check memoization, we need to check&lt;br /&gt;
		-- metaArgs before nilArgs, as both can be non-nil at the same time.&lt;br /&gt;
		-- If the argument is not present in metaArgs, we also check whether&lt;br /&gt;
		-- pairs has been run yet. If pairs has already been run, we return nil.&lt;br /&gt;
		-- This is because all the arguments will have already been copied into&lt;br /&gt;
		-- metaArgs by the mergeArgs function, meaning that any other arguments&lt;br /&gt;
		-- must be nil.&lt;br /&gt;
		--]]&lt;br /&gt;
		if type(key) == 'string' then&lt;br /&gt;
			key = options.translate[key]&lt;br /&gt;
		end&lt;br /&gt;
		local val = metaArgs[key]&lt;br /&gt;
		if val ~= nil then&lt;br /&gt;
			return val&lt;br /&gt;
		elseif metatable.donePairs or nilArgs[key] then&lt;br /&gt;
			return nil&lt;br /&gt;
		end&lt;br /&gt;
		for _, argTable in ipairs(argTables) do&lt;br /&gt;
			local argTableVal = tidyVal(key, argTable[key])&lt;br /&gt;
			if argTableVal ~= nil then&lt;br /&gt;
				metaArgs[key] = argTableVal&lt;br /&gt;
				return argTableVal&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		nilArgs[key] = 'h'&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	metatable.__newindex = function (t, key, val)&lt;br /&gt;
		-- This function is called when a module tries to add a new value to the&lt;br /&gt;
		-- args table, or tries to change an existing value.&lt;br /&gt;
		if type(key) == 'string' then&lt;br /&gt;
			key = options.translate[key]&lt;br /&gt;
		end&lt;br /&gt;
		if options.readOnly then&lt;br /&gt;
			error(&lt;br /&gt;
				'could not write to argument table key &amp;quot;'&lt;br /&gt;
					.. tostring(key)&lt;br /&gt;
					.. '&amp;quot;; the table is read-only',&lt;br /&gt;
				2&lt;br /&gt;
			)&lt;br /&gt;
		elseif options.noOverwrite and args[key] ~= nil then&lt;br /&gt;
			error(&lt;br /&gt;
				'could not write to argument table key &amp;quot;'&lt;br /&gt;
					.. tostring(key)&lt;br /&gt;
					.. '&amp;quot;; overwriting existing arguments is not permitted',&lt;br /&gt;
				2&lt;br /&gt;
			)&lt;br /&gt;
		elseif val == nil then&lt;br /&gt;
			--[[&lt;br /&gt;
			-- If the argument is to be overwritten with nil, we need to erase&lt;br /&gt;
			-- the value in metaArgs, so that __index, __pairs and __ipairs do&lt;br /&gt;
			-- not use a previous existing value, if present; and we also need&lt;br /&gt;
			-- to memoize the nil in nilArgs, so that the value isn't looked&lt;br /&gt;
			-- up in the argument tables if it is accessed again.&lt;br /&gt;
			--]]&lt;br /&gt;
			metaArgs[key] = nil&lt;br /&gt;
			nilArgs[key] = 'h'&lt;br /&gt;
		else&lt;br /&gt;
			metaArgs[key] = val&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local function translatenext(invariant)&lt;br /&gt;
		local k, v = next(invariant.t, invariant.k)&lt;br /&gt;
		invariant.k = k&lt;br /&gt;
		if k == nil then&lt;br /&gt;
			return nil&lt;br /&gt;
		elseif type(k) ~= 'string' or not options.backtranslate then&lt;br /&gt;
			return k, v&lt;br /&gt;
		else&lt;br /&gt;
			local backtranslate = options.backtranslate[k]&lt;br /&gt;
			if backtranslate == nil then&lt;br /&gt;
				-- Skip this one. This is a tail call, so this won't cause stack overflow&lt;br /&gt;
				return translatenext(invariant)&lt;br /&gt;
			else&lt;br /&gt;
				return backtranslate, v&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	metatable.__pairs = function ()&lt;br /&gt;
		-- Called when pairs is run on the args table.&lt;br /&gt;
		if not metatable.donePairs then&lt;br /&gt;
			mergeArgs(argTables)&lt;br /&gt;
			metatable.donePairs = true&lt;br /&gt;
		end&lt;br /&gt;
		return translatenext, { t = metaArgs }&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local function inext(t, i)&lt;br /&gt;
		-- This uses our __index metamethod&lt;br /&gt;
		local v = t[i + 1]&lt;br /&gt;
		if v ~= nil then&lt;br /&gt;
			return i + 1, v&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	metatable.__ipairs = function (t)&lt;br /&gt;
		-- Called when ipairs is run on the args table.&lt;br /&gt;
		return inext, t, 0&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return args&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return arguments&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Template:Jobcard&amp;diff=220</id>
		<title>Template:Jobcard</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Template:Jobcard&amp;diff=220"/>
		<updated>2019-03-06T11:21:54Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;float:none;clear:none;width:100%; background-color:#f8f9fa;border-spacing: 3px; padding: 0.2em;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;height: 30px; text-align: center; vertical-align: middle; font-size: 160%;background-color:{{{deptcolor|}}};&amp;quot;| [[{{{guide|}}}|{{{title|guide}}}]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 128px; text-align: center;&amp;quot; | [[File:{{{image|No &amp;quot;image&amp;quot;!}}}|link={{{guide|}}}]]{{#if:{{{image2|}}}|[[File:{{{image2}}}|link={{{guide|}}}]]}}{{#if:{{{image3|}}}|[[File:{{{image3}}}|link={{{guide|}}}]]}}&lt;br /&gt;
|-&lt;br /&gt;
| {{{duties|No &amp;quot;duties&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
| '''Difficulty:''' {{{difficulty|No &amp;quot;difficulty&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
|'''Access:''' {{{access|}}}&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{related|}}}|'''Related guides:''' {{{related|}}} }}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{alternate_name|}}}|'''Alternative names:''' {{{alternate_name|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|}&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Template:Jobcard&lt;br /&gt;
| image = Generic human bay.png&lt;br /&gt;
| guide = Guide desc&lt;br /&gt;
| title = Example Job Title&lt;br /&gt;
| duties= Duties of this job desc&lt;br /&gt;
| difficulty = Job's difficulty&lt;br /&gt;
| related = [[Jobs_ErisRu]]&lt;br /&gt;
| deptcolor = #b5b5e3&lt;br /&gt;
| access = Job's access&lt;br /&gt;
| alternate_name = Job's alternate name&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Template for the cute little job entries on [[Jobs_ErisRu]].&lt;br /&gt;
&lt;br /&gt;
[[:Category:Templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Category:JobTemplate&amp;diff=219</id>
		<title>Category:JobTemplate</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Category:JobTemplate&amp;diff=219"/>
		<updated>2019-03-06T11:08:03Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Replaced content with &amp;quot;УДАЛИТЬ&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;УДАЛИТЬ&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Template:Jobcard&amp;diff=218</id>
		<title>Template:Jobcard</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Template:Jobcard&amp;diff=218"/>
		<updated>2019-03-06T10:47:56Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;&amp;lt;includeonly&amp;gt;{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;float:none;clear:none;width:100%; background-color:#f8f9fa;border-spacing: 3px; padding: 0.2em;&amp;quot; |- ! style=&amp;quot;height: 30px; text-align: c...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;float:none;clear:none;width:100%; background-color:#f8f9fa;border-spacing: 3px; padding: 0.2em;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;height: 30px; text-align: center; vertical-align: middle; font-size: 160%;background-color:{{{deptcolor|}}};&amp;quot;| [[{{{guide|}}}|{{{title|guide}}}]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 128px; text-align: center;&amp;quot; | [[File:{{{image|No &amp;quot;image&amp;quot;!}}}|link={{{guide|}}}]]{{#if:{{{image2|}}}|[[File:{{{image2}}}|link={{{guide|}}}]]}}{{#if:{{{image3|}}}|[[File:{{{image3}}}|link={{{guide|}}}]]}}&lt;br /&gt;
|-&lt;br /&gt;
| {{{duties|No &amp;quot;duties&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
| '''Difficulty:''' {{{difficulty|No &amp;quot;difficulty&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
|'''Access:''' {{{access|}}}&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{related|}}}|'''Related guides:''' {{{related|}}} }}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{alternate_name|}}}|'''Alternative names:''' {{{alternate_name|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|}&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Template:Jobcard&lt;br /&gt;
| image = Generic human bay.png&lt;br /&gt;
| guide = Guide desc&lt;br /&gt;
| title = Example Job Title&lt;br /&gt;
| duties= Duties of this job desc&lt;br /&gt;
| difficulty = Job's difficulty&lt;br /&gt;
| related = [[Jobs_ErisRu]]&lt;br /&gt;
| deptcolor = #b5b5e3&lt;br /&gt;
| access = Job's access&lt;br /&gt;
| alternate_name = Job's alternate name&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Template for the cute little job entries on [[Jobs_ErisRu]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Category:JobTemplate&amp;diff=217</id>
		<title>Category:JobTemplate</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Category:JobTemplate&amp;diff=217"/>
		<updated>2019-03-06T10:45:13Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;&amp;lt;includeonly&amp;gt;{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;float:none;clear:none;width:100%; background-color:#f8f9fa;border-spacing: 3px; padding: 0.2em;&amp;quot; |- ! style=&amp;quot;height: 30px; text-align: c...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;float:none;clear:none;width:100%; background-color:#f8f9fa;border-spacing: 3px; padding: 0.2em;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;height: 30px; text-align: center; vertical-align: middle; font-size: 160%;background-color:{{{deptcolor|}}};&amp;quot;| [[{{{guide|}}}|{{{title|guide}}}]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 128px; text-align: center;&amp;quot;&lt;br /&gt;
| [[File:{{{image|No &amp;quot;image&amp;quot;!}}}&lt;br /&gt;
|link={{{guide|}}}]]{{#if:{{{image2|}}}&lt;br /&gt;
|[[File:{{{image2}}}|link={{{guide|}}}]]}}{{#if:{{{image3|}}}&lt;br /&gt;
|[[File:{{{image3}}}|link={{{guide|}}}]]}}&lt;br /&gt;
|-&lt;br /&gt;
| {{{duties|No &amp;quot;duties&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
| '''Difficulty:''' {{{difficulty|No &amp;quot;difficulty&amp;quot;!}}}&lt;br /&gt;
|-&lt;br /&gt;
|'''Access:''' {{{access|}}}&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{related|}}}|'''Related guides:''' {{{related|}}} }}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
{{!}} {{#if: {{{alternate_name|}}}|'''Alternative names:''' {{{alternate_name|}}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|}&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Template:Jobcard&lt;br /&gt;
| image = Generic human bay.png&lt;br /&gt;
| guide = Guide desc&lt;br /&gt;
| title = Example Job Title&lt;br /&gt;
| duties= Duties of this job desc&lt;br /&gt;
| difficulty = Job's difficulty&lt;br /&gt;
| related = [[Jobs_ErisRu]]&lt;br /&gt;
| deptcolor = #b5b5e3&lt;br /&gt;
| access = Job's access&lt;br /&gt;
| alternate_name = Job's alternate name&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Template for the cute little job entries on [[Jobs_ErisRu]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=File:Generic_human_bay.png&amp;diff=216</id>
		<title>File:Generic human bay.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=File:Generic_human_bay.png&amp;diff=216"/>
		<updated>2019-03-06T10:38:16Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: тестовый образец&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
тестовый образец&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Category:Templates&amp;diff=215</id>
		<title>Category:Templates</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Category:Templates&amp;diff=215"/>
		<updated>2019-03-06T10:22:22Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of templates to use.&lt;br /&gt;
Нада притащить шаблонов с забугорных вики и подобавлять им метки этой категории.&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Category:Templates&amp;diff=214</id>
		<title>Category:Templates</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Category:Templates&amp;diff=214"/>
		<updated>2019-03-06T10:21:19Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;List of templates to use.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;List of templates to use.&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=Category:Guides&amp;diff=213</id>
		<title>Category:Guides</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=Category:Guides&amp;diff=213"/>
		<updated>2019-03-06T10:17:47Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;Regular guides category, it is temporary desc for it.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Regular guides category, it is temporary desc for it.&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
	<entry>
		<id>https://wiki.cev-eris.com/index.php?title=User:SahQO_YOLOS&amp;diff=212</id>
		<title>User:SahQO YOLOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.cev-eris.com/index.php?title=User:SahQO_YOLOS&amp;diff=212"/>
		<updated>2019-03-06T09:41:33Z</updated>

		<summary type="html">&lt;p&gt;SahQO YOLOS: Created page with &amp;quot;hi there&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi there&lt;/div&gt;</summary>
		<author><name>SahQO YOLOS</name></author>
	</entry>
</feed>