<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikiProjectBanner%2FTaskForce</id>
	<title>Module:WikiProjectBanner/TaskForce - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3AWikiProjectBanner%2FTaskForce"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:WikiProjectBanner/TaskForce&amp;action=history"/>
	<updated>2026-05-07T16:53:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://stockhub.co/index.php?title=Module:WikiProjectBanner/TaskForce&amp;diff=147664&amp;oldid=prev</id>
		<title>imported&gt;Mr. Stradivarius: add importance and quality grades</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:WikiProjectBanner/TaskForce&amp;diff=147664&amp;oldid=prev"/>
		<updated>2014-09-08T07:03:56Z</updated>

		<summary type="html">&lt;p&gt;add importance and quality grades&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-------------------------------------------------------------------------------&lt;br /&gt;
--                             TaskForce class                               --&lt;br /&gt;
-- This module contains the TaskForce class used in                          --&lt;br /&gt;
-- Module:WikiProjectBanner. It is used to generate the task force rows.     --&lt;br /&gt;
-------------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
-- Load necessary modules&lt;br /&gt;
local Row = require(&amp;#039;Module:WikiProjectBanner/Row&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
-- Lazily load modules we don&amp;#039;t always need&lt;br /&gt;
local mShared, Grade&lt;br /&gt;
 &lt;br /&gt;
local TaskForce = setmetatable({}, Row)&lt;br /&gt;
TaskForce.__index = TaskForce&lt;br /&gt;
&lt;br /&gt;
function TaskForce.new(args, bannerData, cfg, rowCfg)&lt;br /&gt;
	local obj = Row.new(args, bannerData, cfg, rowCfg)&lt;br /&gt;
	setmetatable(obj, TaskForce)&lt;br /&gt;
	&lt;br /&gt;
	-- Quality grade&lt;br /&gt;
	obj.qualityGrade = obj.bannerData.grades.quality&lt;br /&gt;
	if obj.quality and obj.qualityGrade then&lt;br /&gt;
		local qualityData = obj.qualityGrade:exportData()&lt;br /&gt;
		obj.qualityCategory = obj.qualityGrade:makeAssessmentCategory{&lt;br /&gt;
			grade = qualityData.short,&lt;br /&gt;
			assessmentCategory = obj.rowCfg.assessmentCategory&lt;br /&gt;
		}&lt;br /&gt;
		obj.forceImportance = qualityData.forceImportance&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Importance grade&lt;br /&gt;
	if obj.qualityGrade and obj.rowCfg.importance then&lt;br /&gt;
		local gradeCfg = {}&lt;br /&gt;
		gradeCfg.forceGrade = obj.forceImportance&lt;br /&gt;
		gradeCfg.assessmentCategory = obj.rowCfg.assessmentCategory&lt;br /&gt;
		gradeCfg.param = obj.rowCfg.importanceParams&lt;br /&gt;
		Grade = Grade or require(&amp;#039;Module:WikiProjectBanner/Grade&amp;#039;)&lt;br /&gt;
		obj.importanceGrade = Grade.new(&lt;br /&gt;
			&amp;#039;importance&amp;#039;,&lt;br /&gt;
			obj.args,&lt;br /&gt;
			obj.bannerData,&lt;br /&gt;
			obj.cfg,&lt;br /&gt;
			gradeCfg&lt;br /&gt;
		)&lt;br /&gt;
		obj.importanceCategory = obj.importanceGrade:exportData().assessmentCategory&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Image&lt;br /&gt;
	if rowCfg.image then&lt;br /&gt;
		obj:setIcon(string.format(&lt;br /&gt;
				&amp;#039;[[File:%s|x25px|center|alt=Task force icon]]&amp;#039;,&lt;br /&gt;
				rowCfg.image&lt;br /&gt;
		))&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local text = &amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	-- Portal&lt;br /&gt;
	if rowCfg.portal then&lt;br /&gt;
		mShared = mShared or require(&amp;#039;Module:WikiProjectBanner/shared&amp;#039;)&lt;br /&gt;
		local portal = mShared.makePortal(&lt;br /&gt;
			rowCfg.portal,&lt;br /&gt;
			{height = &amp;#039;15&amp;#039;, margin = &amp;#039;0&amp;#039;}&lt;br /&gt;
		)&lt;br /&gt;
		text = text .. portal&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Text&lt;br /&gt;
	if rowCfg.text then&lt;br /&gt;
		text = text .. rowCfg.text&lt;br /&gt;
	else&lt;br /&gt;
		local msg&lt;br /&gt;
		if obj.importanceGrade then&lt;br /&gt;
			msg = &amp;quot;This $1 is supported by &amp;#039;&amp;#039;&amp;#039;[[$2|$3]]&amp;#039;&amp;#039;&amp;#039; (marked as $4).&amp;quot;&lt;br /&gt;
		else&lt;br /&gt;
			msg = &amp;quot;This $1 is supported by &amp;#039;&amp;#039;&amp;#039;[[$2|$3]]&amp;#039;&amp;#039;&amp;#039;.&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		local pageType = obj.bannerData.pageType&lt;br /&gt;
		local link = rowCfg.link&lt;br /&gt;
		local name = rowCfg.name&lt;br /&gt;
		local importance&lt;br /&gt;
		if obj.importanceGrade then&lt;br /&gt;
			importance = obj.importanceGrade:exportData().full&lt;br /&gt;
		else&lt;br /&gt;
			importance = &amp;#039;&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		mShared = mShared or require(&amp;#039;Module:WikiProjectBanner/shared&amp;#039;)&lt;br /&gt;
		text = text .. mShared.substituteParams(&lt;br /&gt;
			msg,&lt;br /&gt;
			pageType,&lt;br /&gt;
			link,&lt;br /&gt;
			name,&lt;br /&gt;
			importance&lt;br /&gt;
		)&lt;br /&gt;
	end&lt;br /&gt;
	obj:setText(text)&lt;br /&gt;
&lt;br /&gt;
	-- Categories&lt;br /&gt;
	obj:addCategory(obj.rowCfg.mainCategory)&lt;br /&gt;
	obj:addCategory(obj.qualityCategory)&lt;br /&gt;
	obj:addCategory(obj.importanceCategory)&lt;br /&gt;
	&lt;br /&gt;
	return obj&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return TaskForce&lt;/div&gt;</summary>
		<author><name>imported&gt;Mr. Stradivarius</name></author>
	</entry>
</feed>