Moduł:H2H: Różnice pomiędzy wersjami
Wygląd
Nie podano opisu zmian |
Nie podano opisu zmian |
||
| (Nie pokazano 13 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
| Linia 2: | Linia 2: | ||
-- ========================================================= | -- ========================================================= | ||
-- | -- MODUŁ:H2H | ||
-- | -- | ||
-- Historia bezpośrednich spotkań dwóch drużyn. | -- Historia bezpośrednich spotkań dwóch drużyn. | ||
-- | -- | ||
-- | -- team1 = drużyna analizowana | ||
-- | -- team2 = przeciwnik | ||
-- | -- | ||
-- | -- nazwa_statystyki1 / nazwa_statystyki2 służą do identyfikacji | ||
-- drużyn niezależnie od historycznych nazw sponsorskich. | |||
-- | |||
-- | -- | ||
-- Zawiera: | |||
-- 1. Bilans ogółem / dom / wyjazd | |||
-- 2. Trenerów team1 w rywalizacji | |||
-- 3. Najlepszych strzelców obu drużyn | |||
-- 4. Rekordy indywidualne team1 | |||
-- 5. Serie zwycięstw / porażek | |||
-- 6. Analizę kwart | |||
-- 7. Wszystkie mecze | |||
-- 8. Dogrywki 1, 2 i 3 | |||
-- ========================================================= | -- ========================================================= | ||
| Linia 32: | Linia 30: | ||
-- ===================================================== | -- ===================================================== | ||
local team1 = | local team1 = mw.text.trim(frame.args.team1 or "") | ||
local team2 = mw.text.trim(frame.args.team2 or "") | |||
local team2 = | |||
if team1 == "" then | |||
return "'''Błąd:''' nie podano team1." | |||
end | |||
if | if team2 == "" then | ||
return "'''Błąd:''' nie podano team2." | |||
return "'''Błąd:''' | |||
end | end | ||
| Linia 53: | Linia 49: | ||
return mw.ustring.gsub( | return mw.ustring.gsub( | ||
value, | tostring(value or ""), | ||
"'", | "'", | ||
"''" | "''" | ||
| Linia 61: | Linia 57: | ||
local | local team1SQL = sql(team1) | ||
local | local team2SQL = sql(team2) | ||
| Linia 89: | Linia 65: | ||
-- ===================================================== | -- ===================================================== | ||
local function | local function liczba(value) | ||
if value == nil or value == "" then | if value == nil or value == "" then | ||
| Linia 95: | Linia 71: | ||
end | end | ||
local tekst = | |||
mw.ustring.gsub( | mw.ustring.gsub( | ||
value, | tostring(value), | ||
"%s+", | "%s+", | ||
"" | "" | ||
) | ) | ||
return tonumber( | return tonumber(tekst) or 0 | ||
end | end | ||
local function | local function procent(wygrane, mecze) | ||
if | if mecze == 0 then | ||
return | return "0,0%" | ||
end | end | ||
local | local wartosc = | ||
(wygrane / mecze) * 100 | |||
return string.format( | |||
"%.1f%%", | |||
wartosc | |||
):gsub("%.", ",") | |||
end | end | ||
-- ===================================================== | |||
-- IDENTYFIKACJA STRONY TEAM1 | |||
-- ===================================================== | |||
local function miejsce(row) | |||
if row.ns1 == team1 then | |||
return "dom" | |||
end | |||
if | if row.ns2 == team1 then | ||
return | return "wyjazd" | ||
end | end | ||
return | return nil | ||
end | end | ||
-- ===================================================== | |||
-- WYNIK TEAM1 | |||
-- ===================================================== | |||
local function wynikDruzyny(row) | |||
local | local g1 = | ||
row. | liczba(row.gole1) | ||
local g2 = | |||
liczba(row.gole2) | |||
if | if row.ns1 == team1 then | ||
return g1, g2 | |||
elseif row.ns2 == team1 then | |||
return g2, g1 | |||
end | end | ||
return nil, nil | |||
end | end | ||
-- ===================================================== | |||
-- NAZWA MECZU | |||
-- ===================================================== | |||
local function nazwaMeczu(row) | |||
local function | |||
local d1 = | local d1 = | ||
| Linia 217: | Linia 159: | ||
row.druzyna2 or "" | row.druzyna2 or "" | ||
local | local strona = | ||
row.strona_meczu or "" | row.strona_meczu or "" | ||
local | local tekst = | ||
d1 .. | d1 .. " – " .. d2 | ||
if | if strona ~= "" then | ||
return | return "[[" .. | ||
strona .. | |||
"|" .. | "|" .. | ||
tekst .. | |||
"]]" | "]]" | ||
end | end | ||
return | |||
return tekst | |||
end | end | ||
-- ===================================================== | |||
-- PARSOWANIE CZĘŚCI WYNIKU | |||
-- ===================================================== | |||
local function parseWynikCzesciowy(value) | |||
if value | if value == nil or value == "" then | ||
return | return nil, nil | ||
end | end | ||
local tekst = | |||
tostring(value) | |||
local a, b = | |||
tekst:match( | |||
"(%d+)%s*:%s*(%d+)" | |||
) | |||
if not a or not b then | |||
return nil, nil | |||
end | |||
-- ===================================================== | return | ||
tonumber(a), | |||
tonumber(b) | |||
end | |||