Moduł:Formuła 1

Z Wikipedii, wolnej encyklopedii
 Dokumentacja modułu [zobacz] [edytuj] [historia] [odśwież]

Użycie[edytuj kod]

Moduł używany w szablonach dotyczących Formuły 1, do tabel z punktacją i klasyfikacją.

punktacja[edytuj kod]

Jako parametr przyjmuje rok, zwraca liczbę, która następnie jest używana jako parametr w szablonie {{Formuła 1/Kolor}}

ekstrakcjaPozycji[edytuj kod]

Służy do ekstrakcji pozycji z podanego parametru, "czyści" parametr z dodatkowych oznaczeń stosowanych przy podawaniu pozycji zawodnik (takich jak oznaczenie Pole Position czy Najszybszego Okrążenia).

  • {{#invoke:Formuła 1|ekstrakcjaPozycji|NU}} → NU
  • {{#invoke:Formuła 1|ekstrakcjaPozycji|'''NU'''}} → NU
  • {{#invoke:Formuła 1|ekstrakcjaPozycji|1=<span class="explain" title="Zdyskwalifikowany za zbyt wysoką temperaturę prawej tylnej opony podczas pomiaru dokonanego przed wyścigiem.">DK</span>}} → DK

Błędy[edytuj kod]

Błędy należy zgłaszać na stronie dyskusji użytkownika Haifisch7734


local module = {};

function module.punktacja(frame)
	local rok = tonumber(frame.args[1]);
	if rok < 1960 then
		return 1
	elseif rok < 2003 then
		return 2
	elseif rok < 2010 then
		return 3
	else
		return 4
	end
end

function module.ekstrakcjaPozycji(frame)
	local pozycja = frame.args[1];
	local sparsowanaPozycja = string.match(pozycja, '%d+', 1)
	if sparsowanaPozycja ~= nil then
		return sparsowanaPozycja
	else
		if string.match(pozycja, 'NZ', 1) == 'NZ' then
			return 'NZ'
		elseif string.match(pozycja, 'NPK', 1) == 'NPK' then
			return 'NPK'
		elseif string.match(pozycja, 'NU', 1) == 'NU' then
			return 'NU'
		elseif string.match(pozycja, 'NS', 1) == 'NS' then
			return 'NS'
		elseif string.match(pozycja, 'DK', 1) == 'DK' then
			return 'DK'
		elseif string.match(pozycja, 'EX', 1) == 'EX' then
			return 'EX'
		elseif string.match(pozycja, 'NW', 1) == 'NW' then
			return 'NW'
		elseif string.match(pozycja, 'WD', 1) == 'WD' then
			return 'WD'
		elseif string.match(pozycja, 'INJ', 1) == 'INJ' then
			return 'INJ'
		elseif string.match(pozycja, '–', 1) == '–' then
			return '–'
		elseif string.match(pozycja, '-', 1) == '-' then
			return '–'
		else
			return ' '
		end
	end
end

return module;