<?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%3ASandbox%2FJts1882%2FGoal</id>
	<title>Module:Sandbox/Jts1882/Goal - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FJts1882%2FGoal"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Jts1882/Goal&amp;action=history"/>
	<updated>2026-04-21T02:08:03Z</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:Sandbox/Jts1882/Goal&amp;diff=145649&amp;oldid=prev</id>
		<title>imported&gt;Tholme: lintfix</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Jts1882/Goal&amp;diff=145649&amp;oldid=prev"/>
		<updated>2018-12-12T12:17:40Z</updated>

		<summary type="html">&lt;p&gt;lintfix&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
-- [[File:Soccerball shade.svg|13px|Goal|link=]]&lt;br /&gt;
--{{#if: {{#if:{{{1|}}}|{{{1|}}}|{{{2|}}}}}|&amp;amp;nbsp;&amp;lt;small style=&amp;quot;vertical-align: middle;&amp;quot;&amp;gt;{{#if: {{{1|}}}|{{{1}}}{{`}}}}{{#if: {{{2|}}}|{{#if:{{{1|}}}|&amp;amp;nbsp;}}{{#switch: {{{2|}}} |o.g. =([[Own goal#Association football|o.g.]]) |pen. =([[Penalty kick (association football)|pen.]]) |p =([[Penalty kick (association football)|p]]) | #default = ({{{2}}})}}}}&amp;lt;/small&amp;gt;}}&amp;lt;!--&lt;br /&gt;
--{{#if: {{{3&amp;lt;includeonly&amp;gt;|&amp;lt;/includeonly&amp;gt;}}}|,&amp;amp;nbsp;&amp;lt;small style=&amp;quot;vertical-align: middle;&amp;quot;&amp;gt;{{{3}}}{{`}}{{#if: {{{4|}}}|&amp;amp;nbsp;{{#switch: {{{4|}}} |o.g. =([[Own goal#Association football|o.g.]]) |pen. =([[Penalty kick (association football)|pen.]]) |p =([[Penalty kick (association football)|p]]) | #default = ({{{4}}})}}}}&amp;lt;/small&amp;gt;}}&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local args = frame:getParent().args&lt;br /&gt;
	if args[&amp;#039;card&amp;#039;] == &amp;quot;red&amp;quot; or args[&amp;#039;card&amp;#039;] == &amp;quot;yellow&amp;quot; then&lt;br /&gt;
	   local description = mw.language.getContentLanguage():ucfirst(args[&amp;#039;card&amp;#039;]) .. &amp;quot; card&amp;quot; &lt;br /&gt;
	   return p.cards(frame, args[&amp;#039;card&amp;#039;], description) &lt;br /&gt;
	elseif args[&amp;#039;card&amp;#039;] == &amp;quot;second-yellow&amp;quot; then&lt;br /&gt;
		return p.cards(frame, args[&amp;#039;card&amp;#039;], &amp;quot;Sent off (second yellow)&amp;quot;) &lt;br /&gt;
	else -- must be goal&lt;br /&gt;
	   return p.goal(frame)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
end&lt;br /&gt;
function p.cards(frame, color, description)&lt;br /&gt;
&lt;br /&gt;
	local args = frame:getParent().args&lt;br /&gt;
&lt;br /&gt;
	local outputString = &amp;quot;&amp;quot;&lt;br /&gt;
	local i = 1&lt;br /&gt;
	local sep = &amp;quot;&amp;quot; -- use for comma between items, except for first item&lt;br /&gt;
	  &lt;br /&gt;
	while i&amp;lt;3 do             -- loop through cards &lt;br /&gt;
  		local time = 0&lt;br /&gt;
  		if args[i] and args[i] ~= &amp;quot;&amp;quot; then &lt;br /&gt;
  			time = args[i]&lt;br /&gt;
&lt;br /&gt;
    	    -- add span element for icon (provided as background image in styles.css of template)&lt;br /&gt;
    	    if i == 1 then &lt;br /&gt;
       	    	outputString = outputString  .. &amp;#039;&amp;lt;span class=&amp;quot;&amp;#039;.. color .. &amp;#039;-card&amp;quot;&amp;#039; &lt;br /&gt;
       	    	                             .. &amp;#039; role=&amp;quot;img&amp;quot; aria-label=&amp;quot;&amp;#039;.. description .. &amp;#039;&amp;quot;&amp;#039; &lt;br /&gt;
       	    	                             .. &amp;#039; title=&amp;quot;&amp;#039;.. description .. &amp;#039;&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;#039; &lt;br /&gt;
        	end&lt;br /&gt;
        	&lt;br /&gt;
        	-- add time of card&lt;br /&gt;
  			outputString = outputString  ..  sep  .. time .. &amp;quot;&amp;#039;&amp;quot;&lt;br /&gt;
  		&lt;br /&gt;
  		else break; -- would there ever be cases where only later positions used?&lt;br /&gt;
  		end&lt;br /&gt;
  	&lt;br /&gt;
  		sep = &amp;quot;, &amp;quot; -- separate items by comma hereafter&lt;br /&gt;
  		i=i+1&lt;br /&gt;
	end&lt;br /&gt;
  &lt;br /&gt;
	-- if we have content, put in block with template styles icon&lt;br /&gt;
	if outputString ~= &amp;quot;&amp;quot; then&lt;br /&gt;
  	    outputString = &amp;#039;&amp;lt;span class=&amp;quot;fb-goal-card&amp;quot;&amp;gt;&amp;#039; .. outputString  .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	return frame:extensionTag{ name=&amp;#039;templatestyles&amp;#039;, args = { src=&amp;#039;Goal/styles.css&amp;#039;} } .. outputString&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function p.goal(frame)&lt;br /&gt;
	&lt;br /&gt;
	local args = frame:getParent().args&lt;br /&gt;
  &lt;br /&gt;
	local outputString = &amp;quot;&amp;quot;&lt;br /&gt;
	local icon = &amp;quot;&amp;quot; --&amp;quot;[[File:Soccerball shade.svg|13px|Goal|link=]]&amp;quot;	&lt;br /&gt;
	local i = 1&lt;br /&gt;
	local sep = &amp;quot;&amp;quot; -- use for comma between items, except for first item&lt;br /&gt;
	  &lt;br /&gt;
	while i&amp;lt;40 do             -- loop through goals scored by player (goals in positions 1,3,5 ...)&lt;br /&gt;
  		local time = 0&lt;br /&gt;
    	local suffix = &amp;quot;&amp;quot;&lt;br /&gt;
  		if args[i] and args[i] ~= &amp;quot;&amp;quot; then &lt;br /&gt;
  			time = args[i]&lt;br /&gt;
  			if args[i+1] and args[i+1] ~= &amp;quot;&amp;quot; then  -- optional text for pen or o.g. etc&lt;br /&gt;
  				suffix =  args[i+1] &lt;br /&gt;
  			--else suffix = &amp;quot;&amp;quot; &lt;br /&gt;
  			end&lt;br /&gt;
  		&lt;br /&gt;
    	    -- add span element for icon (provided as background image in styles.css of template)&lt;br /&gt;
    	    if i == 1 then &lt;br /&gt;
        		-- TODO? background images have no alt image; instead use role=&amp;quot;img&amp;quot; aria-label=&amp;quot;[place alt text here]&amp;gt;&lt;br /&gt;
        		--outputString = outputString  .. &amp;#039;&amp;lt;span class=&amp;quot;goal&amp;quot;/&amp;gt;&amp;#039; --&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
       	    	outputString = outputString  .. &amp;#039;&amp;lt;span class=&amp;quot;goal&amp;quot; role=&amp;quot;img&amp;quot; aria-label=&amp;quot;Goal&amp;quot; title=&amp;quot;Goal&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;#039; &lt;br /&gt;
        	end&lt;br /&gt;
        	&lt;br /&gt;
        	-- add text string give goal times and other info&lt;br /&gt;
        	--    does it need own span? No as it enlarges transclusion size&lt;br /&gt;
  			--outputString = outputString  .. &amp;#039;&amp;lt;span class=&amp;quot;text&amp;quot;&amp;gt;&amp;#039; .. sep  .. time .. suffix .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
  			outputString = outputString  ..  sep  .. p.parseTime(time) .. p.parseSuffix(suffix) &lt;br /&gt;
  		&lt;br /&gt;
  		else break; -- would there ever be cases where only later positions used?&lt;br /&gt;
  		end&lt;br /&gt;
  	&lt;br /&gt;
  		sep = &amp;quot;, &amp;quot; -- separate items by comma hereafter&lt;br /&gt;
  		i=i+2&lt;br /&gt;
	end&lt;br /&gt;
  &lt;br /&gt;
	-- if we have content, put in block with template styles icon&lt;br /&gt;
	if outputString ~= &amp;quot;&amp;quot; then&lt;br /&gt;
  	    outputString = &amp;#039;&amp;lt;span class=&amp;quot;fb-goal-card&amp;quot;&amp;gt;&amp;#039; .. outputString  .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	return frame:extensionTag{ name=&amp;#039;templatestyles&amp;#039;, args = { src=&amp;#039;Goal/styles.css&amp;#039;} } .. outputString&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.parseTime(time)&lt;br /&gt;
	&lt;br /&gt;
	--TODO check that minutes aren&amp;#039;t already specified&lt;br /&gt;
	return time .. &amp;quot;&amp;#039;&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
function p.parseSuffix(suffix)&lt;br /&gt;
	&lt;br /&gt;
	if suffix == &amp;quot;&amp;quot; then return suffix end&lt;br /&gt;
	&lt;br /&gt;
	if suffix == &amp;quot;pen.&amp;quot; or suffix == &amp;quot;p&amp;quot; then&lt;br /&gt;
		suffix = &amp;#039;([[Penalty kick (association football)|&amp;#039; .. suffix .. &amp;#039;]])&amp;#039;&lt;br /&gt;
	elseif suffix == &amp;quot;o.g.&amp;quot; or suffix == &amp;quot;og&amp;quot; then&lt;br /&gt;
		suffix = &amp;#039;([[Own goal#Association football|&amp;#039; .. suffix .. &amp;#039;]])&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	 &lt;br /&gt;
	return &amp;quot;&amp;amp;nbsp;&amp;quot; .. suffix&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.noicon(frame)&lt;br /&gt;
	return frame:extensionTag{ name=&amp;#039;templatestyles&amp;#039;, args = { src=&amp;#039;Goal/styles-no-icon.css&amp;#039;} }&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Tholme</name></author>
	</entry>
</feed>