Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.47.0-wmf.24 first-letter Media Specjalna Dyskusja Wikipedysta Dyskusja wikipedysty Wikibooks Dyskusja Wikibooks Plik Dyskusja pliku MediaWiki Dyskusja MediaWiki Szablon Dyskusja szablonu Pomoc Dyskusja pomocy Kategoria Dyskusja kategorii Wikijunior Dyskusja Wikijuniora TimedText TimedText talk Moduł Dyskusja modułu Wydarzenie Dyskusja wydarzenia Szablon:Komórka/opis 10 24581 559369 499580 2026-10-15T04:05:50Z Persino 2851 /* Zobacz też */ 559369 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE I INTERWIKI NA DOLE STRONY --> == Użycie == Szablon pomocniczy, służący do wstawiania komórki do wiersza tabeli. == Opis parametrów == ; Parametry: * {{Code|1}} - kolejna komórka * {{Code|nagłówek}} - wartość niepusta, jeśli nagłówek, * {{Code|opcje}} lub {{Code|2}} - opcje komórki, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}, * {{Code|id}} - identyfikator komórki, * {{Code|styl}} - style CSS - właściwości i ich wartości, * {{Code|klasa}} - reguły CSS, do klasy, kaskadowych arkuszy stylów. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Kolejna komórka.", "type": "string", "required": true }, "opcje": { "aliases": [ "2" ], "description": "Opcje, inne niż: id, style i class.", "type": "string", "suggested": true }, "id": { "description": "Identyfikator komórki.", "type": "string" }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły CSS, do klasy, kaskadowych arkuszy stylów.", "type": "string" } }, "description": "Szablon służy do wstawiania kolejnych komórek do szablonu wiersza {{Wiersz}}." } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE I INTERWIKI PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek tworzące tabele | Szablony ramek tworzące wikikod | Szablony formułujące tabele | Szablony formułujące elementy tabelek | Szablony specjalne }} </includeonly> 653697hsb7zfx4ro74n4qxxjdhch646 Szablon:Wiersz/opis 10 33949 559370 499582 2026-10-15T04:07:05Z Persino 2851 /* Zobacz też */ 559370 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE I INTERWIKI NA DOLE STRONY --> == Użycie == Szablon pomocniczy, służący do wstawiania wiersza, z komórkami, do tabeli. == Opis parametrów == ; Parametry: * {{Code|1}} - kolejny wiersz * {{Code|opcje}} lub {{Code|2}} - opcje wiersza, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}, * {{Code|id}} - identyfikator wiersza, * {{Code|styl}} - style CSS - właściwości i ich wartości, * {{Code|klasa}} - reguły CSS, do klasy, kaskadowych arkuszy stylów. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Kolejny wiersz.", "type": "string", "required": true }, "opcje": { "aliases": [ "2" ], "description": "Opcje, inne niż: id, style i class.", "type": "string", "suggested": true }, "id": { "description": "Identyfikator wiersza.", "type": "string" }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły CSS, do klasy, kaskadowych arkuszy stylów.", "type": "string" } }, "description": "Szablon służy do wstawiania kolejnych wierszy do szablonu {{Tabelka}}." } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE I INTERWIKI PONIŻEJ TEJ LINII --> {{Kategorie | Szablony ramek tworzące wikikod | Szablony pudełek tworzące tabele | Szablony formułujące tabele | Szablony formułujące elementy tabelek | Szablony specjalne }} </includeonly> mjiwvpo8d1h6y2mdguo9qlonetfai70 Moduł:Ramka 828 44224 559272 558005 2026-10-14T18:12:27Z Persino 2851 559272 Scribunto text/plain local p={}; local function ParserBlokowy(frame, co_ma_wywolac) local pf=frame:getParent(); local nazwa_szablonu_modulu_lub_parsera="Nazwa"; local szablon_modul_lub_parser=frame.args[nazwa_szablonu_modulu_lub_parsera]; local argumenty_szablonu_modulu_lub_parsera={}; local tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica={}; local ramka_dane_modul=mw.loadData("Module:Ramka/dane"); local bez_parametrowa_tablica=ramka_dane_modul.bez_parametrowa_tablica; local bez_parametrow={}; if(co_ma_wywolac==1)then bez_parametrow["Funkcja"]=true;end; local parametry_modul=require("Module:Parametry"); local tab_usun_parametry; local czy_usun=frame.args["usuń z parametrów ramki"]; if(parametry_modul.CzyTak(czy_usun))then tab_usun_parametry={}; local iter=mw.text.gsplit(czy_usun,";",true); for name in iter do name=mw.ustring.gsub(name,"^[%s_]*",""); name=mw.ustring.gsub(name,"[%s_]*$",""); name=tonumber(name) or name; tab_usun_parametry[name]=true; end; end; for nazwa_parametru,wartosc_parametru in pairs(frame.args) do if(((not tab_usun_parametry)or(not tab_usun_parametry[nazwa_parametru])) and((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru]))) )then tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica[nazwa_parametru]=nazwa_parametru; argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; end; local szablonowe_modul=require("Module:Szablonowe"); local tabela_bez_argumentow=p.RozpakujArgumenty(frame.args["bez argumentów rodzica"]); local zmienna_z_parametrami_rodzica=frame.args["zmienna z parametrami rodzica"]; local czy_przekazac_parametry_rodzica=zmienna_z_parametrami_rodzica and parametry_modul.CzyTak(zmienna_z_parametrami_rodzica) or false; ---- local frame_sprawdzenia_args=frame.args["bez dodatkowych sprawdzeń"]; local bez_dodatkowych_sprawdzen; local czy_podano_bez_dodatkowych_sprawdzen; if(frame_sprawdzenia_args)then czy_podano_bez_dodatkowych_sprawdzen=frame_sprawdzenia_args and true or false; bez_dodatkowych_sprawdzen=parametry_modul.CzyTak(frame_sprawdzenia_args); else local frame_sprawdzenia_pf_args=pf.args["bez dodatkowych sprawdzeń"]; if(frame_sprawdzenia_pf_args)then czy_podano_bez_dodatkowych_sprawdzen=frame_sprawdzenia_pf_args and true or false; bez_dodatkowych_sprawdzen=parametry_modul.CzyTak(frame_sprawdzenia_pf_args); end; end; local z_dodatkowymi_sprawdzeniami=not(bez_dodatkowych_sprawdzen); --- local PakujArgumentyRamki = function(args) local czy_tylko_ze_zmienna_bez_argumentow_szablonu=args["zmienna z argumentami ramki"]; if(not parametry_modul.CzyTak(czy_tylko_ze_zmienna_bez_argumentow_szablonu))then return args["bez argumentów szablonu"];end; local tabelka1={}; for nazwa_parametru,_ in pairs(args)do if((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru])))then tabelka1[nazwa_parametru]=true; end; end; local tabelka2=(args["bez argumentów szablonu"]) and p.RozpakujArgumenty(args["bez argumentów szablonu"]); local tabelka=parametry_modul["ŁączDwieTabele"](tabelka1,tabelka2); local tablica_mikroszablonow={ [";"]="{{+}}", }; local str=""; for name,_ in pairs(tabelka) do str=str..((str~="")and ";" or "")..mw.ustring.gsub(mw.text.trim(name),".",tablica_mikroszablonow); end; return str,tabelka2; end; local nazwa_szablonu; local function TempFunc() if(not nazwa_szablonu)then local nazwa=szablonowe_modul.NazwaSzablonu(pf:getTitle()); nazwa_szablonu=nazwa; return nazwa; else return nazwa_szablonu; end; end; local bez_argumentow_szablonu=nil; if(czy_przekazac_parametry_rodzica)then if(z_dodatkowymi_sprawdzeniami)then local str=p.PakujParametry(pf.args); argumenty_szablonu_modulu_lub_parsera["parametry rodzica"]=str; end; argumenty_szablonu_modulu_lub_parsera["potomek"]="tak"; argumenty_szablonu_modulu_lub_parsera["bez argumentów szablonu"],bez_argumentow_szablonu=PakujArgumentyRamki(frame.args); if(czy_podano_bez_dodatkowych_sprawdzen)then argumenty_szablonu_modulu_lub_parsera["bez dodatkowych sprawdzeń"]=bez_dodatkowych_sprawdzen and "tak" or ""; end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or TempFunc(); else local function ZmiennaZNazwaSzablonuRodzica() local czy_ze_nazwa_szablonu=frame.args["zmienna z nazwą szablonu rodzica"]; if(parametry_modul.CzyTak(czy_ze_nazwa_szablonu))then argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or szablonowe_modul.NazwaSzablonu(pf:getTitle()); end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); end; local z_argumentami_najwyzszego_rodzica=not parametry_modul.CzyTak(tabela_bez_argumentow["nie potomek"]); if(z_argumentami_najwyzszego_rodzica)then local potomek=parametry_modul.CzyTak(pf.args["potomek"]); if(potomek)then local parametry_rodzic=pf.args["parametry rodzica"]; if(parametry_rodzic)then if(z_dodatkowymi_sprawdzeniami)then argumenty_szablonu_modulu_lub_parsera["parametry rodzica"]=parametry_rodzic; end; argumenty_szablonu_modulu_lub_parsera["potomek"]="tak"; argumenty_szablonu_modulu_lub_parsera["bez argumentów szablonu"],bez_argumentow_szablonu=PakujArgumentyRamki(frame.args); if(czy_podano_bez_dodatkowych_sprawdzen)then argumenty_szablonu_modulu_lub_parsera["bez dodatkowych sprawdzeń"]=bez_dodatkowych_sprawdzen and "tak" or ""; end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or TempFunc(); else ZmiennaZNazwaSzablonuRodzica(); end; else ZmiennaZNazwaSzablonuRodzica(); end; else ZmiennaZNazwaSzablonuRodzica() end; end; local czy_bez_argumentow_nienazwanych_rodzica=parametry_modul.CzyTak(frame.args["bez argumentów nienazwanych rodzica"]); local czy_parametry_pudelka=parametry_modul.CzyTak(frame.args["parametry funkcji modułu pudełek"]); local czy_parametry_pudelka_podstawowe=parametry_modul.CzyTak(frame.args["parametry podstawowe funkcji modułu pudełek"]) local pudelko_modul=require("Module:Pudełko"); for nazwa_parametru,wartosc_parametru in pairs(pf.args) do if(((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru])))and((not bez_argumentow_szablonu)or(not bez_argumentow_szablonu[nazwa_parametru])))then if((not tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica[nazwa_parametru]) and(not tabela_bez_argumentow[nazwa_parametru]) and((not czy_bez_argumentow_nienazwanych_rodzica)or((czy_bez_argumentow_nienazwanych_rodzica)and(not tonumber(nazwa_parametru))) ))then local czy_dodac_do_parametrow; if czy_parametry_pudelka or czy_parametry_pudelka_podstawowe then local czy_dodac_do_parametrow=((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^nazwa przestrzeni nazw %d+$") and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^nazwa przestrzeni nazw$") and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or ((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^nazwa jednostki %d+$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^nazwa jednostki$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or ((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^typ jednostki %d+$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^typ jednostki$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)); if(czy_dodac_do_parametrow)then argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; else argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; end; end; end; if(co_ma_wywolac==0)then return pf:expandTemplate{title=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; elseif(co_ma_wywolac==1)then local frame2=pf:newChild{args=argumenty_szablonu_modulu_lub_parsera}; local funkcja=frame.args["Funkcja"]; return require("Module:"..szablon_modul_lub_parser)[funkcja](frame2); elseif(co_ma_wywolac==2)then return pf:callParserFunction{name=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; else return pf:expandTemplate{title=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; end; end; local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum) local parametry_modul=require("Module:Parametry"); local czy_akapit=parametry_modul.CzyTak(frame.args["akapit"]); local akapit=czy_akapit and "\n\n" or ""; local przecinek=parametry_modul.CzyTak(frame.args["przecinek"]) and ", " or ""; local czy_nowa_linia=parametry_modul.CzyTak(frame.args["nowa linia"]); local nowa_linia=czy_nowa_linia and "\n" or ""; local wyliczanka=parametry_modul.CzyTak(frame.args["wyliczanka"]); local przecinek_na_poczatku=parametry_modul.CzyTak(frame.args["początek"]); local myslnik=parametry_modul.CzyTak(frame.args["myślnik"]); local warunkowe=parametry_modul.CzyTak(frame.args["warunkowe"]); local warunkowe_ze_zmiennymi=parametry_modul.CzyTak(frame.args["warunkowe ze zmiennymi"]); local lancuch_znakow=""; local koniec=#tab_lancuch; for i=1,koniec,1 do local lancuch=tab_lancuch[i]; lancuch=mw.ustring.gsub(lancuch,"{{min}}",minimum); lancuch=mw.ustring.gsub(lancuch,"{{max}}",maksimum); if(not wyliczanka)then lancuch_znakow=lancuch_znakow..((i~=1)and przecinek or ((przecinek_na_poczatku)and przecinek or ((myslnik)and "&nbsp;- " or ""))); else lancuch_znakow=lancuch_znakow..((i==1)and ((przecinek_na_poczatku)and ", " or "") or ((i<koniec)and ", " or "&nbsp;i ")); end; lancuch_znakow=lancuch_znakow..((i~=1)and (czy_akapit and akapit or nowa_linia) or "")..lancuch; end; if(warunkowe)then local parametr=parametry_modul.CzyTak(frame.args["parametr"]); return p.InstrukcjeWarunkowe(lancuch_znakow,true,parametr,warunkowe_ze_zmiennymi); else return lancuch_znakow; end; end; p.InstrukcjeWarunkowe = function(ciag,derektywy_specjalne,derektywy_parametrowe,warunkowe_ze_zmiennymi) local ciag_warunkowe_fun=function(s) local function ParserWiki(s,wywolanie) local czy_parser=mw.ustring.match(s,wywolanie); if(czy_parser)then return mw.getCurrentFrame():preprocess(s); end; end return ParserWiki(s,"^({{%s*#if:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifeq:[^{}]*}})$") or ParserWiki(s,"^({{%s*#switch:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifexpr:[^{}]*}})$") or ParserWiki(s,"^({{%s*#expr:[^{}]*}})$") or ParserWiki(s,"^({{%s*#iferror:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifexist:[^{}]*}})$") or nil; end; local ciag,_=mw.ustring.gsub(ciag,"{{[^{}]+}}",ciag_warunkowe_fun); if(warunkowe_ze_zmiennymi)then local ciag_warunkowe_fun2=function(s) s=mw.ustring.gsub(s,"__!__","|"); s="{{"..s.."}}"; return mw.getCurrentFrame():preprocess(s); end; ciag,_=mw.ustring.gsub(ciag,"__%(%(__(.-)__%)%)__",ciag_warunkowe_fun2); end; if(derektywy_specjalne)then local ramka_dane_modul=mw.loadData("Module:Ramka/dane"); local tab_zamieniane=ramka_dane_modul.tablica_warunkowe_i_parametr; ciag=mw.ustring.gsub(ciag,"(__[^_]+__)",function(s) local tab_szablon=tab_zamieniane[s]; if(tab_szablon)then if(not derektywy_parametrowe)then return tab_szablon[1];end; return tab_szablon[2]; end; return nil; end); return ciag; end; return ciag; end; p.RozpakujArgumenty = function(zmienna_z_argumentami) local tablica_mikroszablonow={ ["{{+}}"]=";", }; local tabela_bez_argumentow={}; local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(zmienna_z_argumentami))then local iter=mw.text.gsplit(zmienna_z_argumentami,";",true); local podlancuch; for podlancuch in iter do podlancuch=mw.text.trim(podlancuch); local liczba=tonumber(podlancuch); tabela_bez_argumentow[liczba or mw.ustring.gsub(podlancuch,"{{[^{}]+}}",tablica_mikroszablonow)]=true; end; end; return tabela_bez_argumentow; end; p.PakujParametry = function(args) return mw.text.jsonEncode(args,mw.text.JSON_PRESERVE_KEYS); end; p.RozpakujParametry = function (zmienna_z_parametrami) return mw.text.jsonDecode(zmienna_z_parametrami,mw.text.JSON_PRESERVE_KEYS); end; p["Rozwiń"] = function(frame) return frame:getParent():preprocess(frame.args[1]); end; p.Log = function(frame) local parametry_modul=require("Module:Parametry"); local czy_zwracac=parametry_modul.CzyTak(frame.args["wikitext"]); local wikitekst=frame.args["log"]; mw.log(wikitekst); return (czy_zwracac and wikitekst or ""); end; p.Szablon = function(frame) return ParserBlokowy(frame,0); end; p["Moduł"] = function(frame) return ParserBlokowy(frame, 1); end; p.Parser = function(frame) return ParserBlokowy(frame, 2); end; p.Q =function(frame) local parametry_modul=require("Module:Parametry"); local args_szablon=parametry_modul.PobierzArgsParametry(frame); local args_ksiazka={}; for name,value in pairs(args_szablon)do if(not parametry_modul.TypeNumber(name))then args_ksiazka[name]=value; elseif(name>1)then args_ksiazka[name-1]=value; elseif(name~=1)then args_ksiazka[name]=value; end; end; if(parametry_modul.CzyTak(frame.args["wyspecjalizowana"]))then args_ksiazka["wyspecjalizowana"]=nil; end; local szablon=args_szablon[1]; local szablon_ksiazka=p["N"]{args={[1]=szablon,}}; local pf=frame:getParent(); return pf:expandTemplate{title=szablon_ksiazka,args=args_ksiazka,}; end; p.N=function(frame) local parametr=frame.args[1]; local parametry_modul=require("Module:Parametry"); local parametr_p=tonumber(frame.args["p"]) or 0; local parametr_n=parametry_modul.CzyTak(frame.args["n"]); local szablon=parametry_modul["CzyTakCiąg"](parametr) and parametr or ((parametr_p==1) and "Nieznany moduł" or ((parametr_p==2) and "Nieznana kategoria" or "Nieznany szablon")); szablon=parametry_modul["Odstępy"]{[1]=szablon,[2]="tak",}; szablon=mw.getContentLanguage():ucfirst(szablon); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); local przestrzen=((parametr_p==1) and nazwy_np_modul.Module or ((parametr_p==2) and nazwy_np_modul.Category or nazwy_np_modul.Template)); local szablon_ksiazka=przestrzen..":Książka:"..szablon; local parametr_k=parametry_modul.CzyTak(frame.args["k"]); if(not parametr_k)then local techniczne_modul=require("Module:Techniczne"); local liczba_title,tab_title=techniczne_modul.PoliczZbiory{[1]=szablon_ksiazka,tekst=true,}; szablon_ksiazka=((liczba_title>0)and (szablon_ksiazka) or (przestrzen..":"..szablon)); end; if(parametr_n)then local nazwy_modul=require("Module:Nazwy"); szablon_ksiazka=nazwy_modul["NAZWASTRONY"]{nazwa=szablon_ksiazka,}; end; return szablon_ksiazka; end; p.A=function(frame) local parametr=frame.args[1]; local parametry_modul=require("Module:Parametry"); local parametr_p=parametry_modul.CzyTak(frame.args["p"]); local przestrzen; if(parametr_p)then local tabela_nazw={}; local nazwy_modul=require("Module:Nazwy"); przestrzen=nazwy_modul["NAZWAPRZESTRZENI"](parametr,tabela_nazw); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((przestrzen~=nazwy_np_modul.Template)and(przestrzen~=nazwy_np_modul.Module)and(przestrzen~=nazwy_np_modul.Category))then return parametr; end; parametr=nazwy_modul["NAZWASTRONY"](parametr,tabela_nazw); end; parametr=mw.ustring.gsub(parametr,"^[Kk]siążka:",""); parametr=(parametr_p and ((przestrzen~="") and (przestrzen..":") or "") or "")..parametr; return parametr; end; p.Powtarzaj = function(frame) local pf=frame:getParent(); local parametry_modul=require("Moduł:Parametry"); local czy_parametry=parametry_modul.CzyTak(frame.args["parametry"]); local tabela={}; local zacznij_nazwane; local parametry_modul=require("Module:Parametry"); if(czy_parametry)then local FormatujTabela=function(parametr_tab) return{ parametry_modul.CzyTak(parametr_tab[1]), parametry_modul.CzyTak(parametr_tab[2]), tonumber(parametr_tab[3]) or 0, tonumber(parametr_tab[4]), tonumber(parametr_tab[5]), }; end; local WstawDoTabeli=function(znaczenia_parametr) local parametr,wartosc=mw.ustring.match(znaczenia_parametr,"%s*([%w_%-][%w%s_%-]-)%s*=%s*(.-)%s*$"); if(parametr and wartosc)then if((not tonumber(parametr))and(not tabela[parametr]))then local parametr_tab=mw.text.split(wartosc,"%s*,%s*",false); tabela[parametr]=FormatujTabela(parametr_tab); end; else if((not tonumber(znaczenia_parametr))and(not tabela[znaczenia_parametr]))then tabela[znaczenia_parametr]={}; end; end; end; local iter=mw.text.gsplit(mw.text.trim(frame.args["parametry"]),"%s*;%s*",false); local czy=true; for znaczenia_parametr in iter do znaczenia_parametr=mw.text.trim(znaczenia_parametr); local czy_nie_omijac=parametry_modul.CzyTak(znaczenia_parametr); if(czy_nie_omijac)then if(czy)then zacznij_nazwane=tonumber(znaczenia_parametr); czy=false; if(not zacznij_nazwane)then zacznij_nazwane=0; WstawDoTabeli(znaczenia_parametr); end; else WstawDoTabeli(znaczenia_parametr); end; end; end; end; local tabela_dodatkowe={}; local czy_dodatkowe=parametry_modul.CzyTak(frame.args["dodatkowe"]); if(czy_dodatkowe)then local iter=mw.text.gsplit(mw.text.trim(frame.args["dodatkowe"]),"%s*;%s*",false); for name in iter do tabela_dodatkowe[name]=true; end; end; if(not zacznij_nazwane)then zacznij_nazwane=0;end; local function LiczbaZmiennychOOgolniePodstawieParametru(podstawa_parametru_wyszukiwana) local args=pf.args; local maksymalna_liczba_nazwy_danego_parametru=0; for nazwa_parametru, wartosc_parametru in pairs(args)do local czy_jedynka=false; if(type(nazwa_parametru)=="string")then local nazwa_podstawy_parametru,spacja,liczba=mw.ustring.match(nazwa_parametru,"^([%a%-%s]*[%a%-])(%s?)(%d+)$"); if(not nazwa_podstawy_parametru and not spacja and not liczba)then nazwa_podstawy_parametru=nazwa_parametru; spacja=""; liczba=1; czy_jedynka=true; end; local subtab=tabela[nazwa_podstawy_parametru]; if(subtab)then local nie_spacja_parametru=subtab[1]; local czy_z_jedynka=subtab[2]; liczba=tonumber(liczba) or 0; if((not nie_spacja_parametru and (((spacja==" ")and ((liczba>1)or((not czy_jedynka)and(czy_z_jedynka))or((not czy_z_jedynka)and(not czy_jedynka)))) or(((not czy_z_jedynka)and(czy_jedynka))and(spacja=="" and liczba==1)))) or (nie_spacja_parametru and (((spacja=="")and ((liczba>1)or((not czy_jedynka)and(czy_z_jedynka))or((not czy_z_jedynka)and(not czy_jedynka)))) or(((not czy_z_jedynka)and(czy_jedynka))and(spacja=="" and liczba==1)))) )then if(((podstawa_parametru_wyszukiwana) and (nazwa_podstawy_parametru==podstawa_parametru_wyszukiwana))or(not podstawa_parametru_wyszukiwana))then maksymalna_liczba_nazwy_danego_parametru=math.max(maksymalna_liczba_nazwy_danego_parametru,liczba); end; end; end; end; end; return maksymalna_liczba_nazwy_danego_parametru; end; local MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow=function() local maksimum_all=0; for wartosc_parametru,dane_parametru in pairs(tabela)do if(parametry_modul.TypeString(wartosc_parametru))then if(not tabela_dodatkowe[wartosc_parametru])then local maksymalna_liczba_nazwy_danego_parametru=LiczbaZmiennychOOgolniePodstawieParametru(wartosc_parametru); local maksimum=maksymalna_liczba_nazwy_danego_parametru-(dane_parametru[3] or 0); maksimum_all=math.max(maksimum-zacznij_nazwane,maksimum_all); end; end; end; return maksimum_all; end; local zacznij_na_poczatku,skoncz_na_koncu; local tekst_do_analizy=frame.args[1]; if(not frame.args[1])then return "(brak parametru do analizy)";end; local czy_tekst=parametry_modul.CzyTak(tekst_do_analizy); if(not czy_tekst)then return "(parametr do analizy pusty)";end; local start=frame.args["start"]; local koniec=frame.args["koniec"]; local czy_start=parametry_modul.CzyTak(start); local czy_koniec=parametry_modul.CzyTak(koniec); local zaznacz=frame.args["zaznacz"]; local tabela_zaznacz={}; if(zaznacz)then local iter=mw.text.gsplit(zaznacz,"%s*;%s*",false) for liczba in iter do tabela_zaznacz[#tabela_zaznacz+1]=tonumber(liczba) or 0; end; end; local czy_rozne=parametry_modul.CzyTak(frame.args["różne"]); local czy_ma_nazwane; local function Wylicz_skoncz_na_koncu() czy_ma_nazwane=parametry_modul["CzySąElementyNazwaneTablicy"](tabela); if(czy_ma_nazwane)then if(czy_rozne)then local maks_numer=parametry_modul.CzyTak(frame.args["maksimum numeracyjne"]); if(not maks_numer)then return math.max(MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow(),parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args)); else return parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args); end; else return MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow(); end; else return parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args); end; end; local skoncz_na_koncu_wyliczona=Wylicz_skoncz_na_koncu(); if(not czy_koniec)then skoncz_na_koncu=skoncz_na_koncu_wyliczona; else skoncz_na_koncu=math.max(math.min(skoncz_na_koncu_wyliczona, tonumber(koniec) or 0),0); end; zacznij_na_poczatku=math.max(tonumber(start) or 1,1); if(zacznij_na_poczatku==0)then return "(początek jest ustawiony na zero)";end; for name, tab_par in pairs(tabela)do local _4=tab_par[4];local _5=tab_par[5]; if(_4)then zacznij_na_poczatku=math.max(math.min(zacznij_na_poczatku,_4 or 1),1);end; if(_5)then skoncz_na_koncu=math.max(math.max(skoncz_na_koncu,_5 or 0),0);end; end; local czy_niepodane=parametry_modul.CzyTak(frame.args["niepodane"]); local czy_zero_element=false; if(czy_niepodane)then if(zacznij_na_poczatku>skoncz_na_koncu)then skoncz_na_koncu=zacznij_na_poczatku; czy_zero_element=true; end; end; local lancuch_znakow=""; local gdy_nic=parametry_modul.CzyTak(frame.args["nic"])and frame.args["nic"] or ""; if(zacznij_na_poczatku>skoncz_na_koncu)then return gdy_nic;end; local pokolei=parametry_modul.CzyTak(frame.args["po kolei"]); local wytnij=parametry_modul.CzyTak(frame.args["wytnij"]); local wytnij_puste=parametry_modul.CzyTak(frame.args["wytnij puste"]); local nie_wytnij_nazwane=parametry_modul.CzyTak(frame.args["nie wytnij nazwane"]); local _i=parametry_modul.CzyTak(frame.args["znacznik"])and frame.args["znacznik"] or "_"; local czy_parametry_ze_spacja_i_jedynka=function(nazwa_parametru) local parametr_tab=tabela[nazwa_parametru]; if(parametr_tab)then return (not parametr_tab[1]),parametr_tab[2]; end; return true,false; end; if(not czy_rozne)then if(czy_ma_nazwane)then local function Analizuj_dla_bez_rozne(tabela_wszystkich_parametrow) local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local lancuch=tekst_do_analizy; local czy=nil; local wytnij_ujemne; for zmienne_parametrowe,_ in pairs(tabela_wszystkich_parametrow)do if(zmienne_parametrowe)then local subtab=tabela[zmienne_parametrowe]; local liczba_przesuniecia=subtab and subtab[3] or 0; local liczba=licznik+liczba_przesuniecia+zacznij_nazwane; ---- if(liczba<1)then wytnij_ujemne=true;end; if(liczba>0)then local ze_spacja,czy_z_jedynka=czy_parametry_ze_spacja_i_jedynka(zmienne_parametrowe); local element=pf.args[zmienne_parametrowe..((ze_spacja)and " " or "")..licznik]; local czy_jedynka=(licznik==1)and ((element and(not wytnij)) or((wytnij)and (parametry_modul.CzyTak(element)))); local wartosc_elementu=((czy_z_jedynka) and element or ((not czy_z_jedynka)and((licznik>1)and element or ((licznik==1)and(czy_jedynka and element or pf.args[zmienne_parametrowe]))))); czy=czy or (((wartosc_elementu) and ((not wytnij)and(not wytnij_puste))) or ((wytnij)and (parametry_modul["CzyTakCiąg"](wartosc_elementu))) or ((wytnij_puste and not wytnij)and (parametry_modul.CzyTak(wartosc_elementu)))); local tabelka_szablonow={ ["{{".._i.."}}"]=licznik, ["{{".._i.._i.."}}"]=(czy_z_jedynka and licznik or ((licznik>1) and licznik or (czy_jedynka and 1 or ""))), }; local function fun_tabelka_szablonow(ciag) local ciag_strip=mw.ustring.gsub(ciag,"{{%s*(%S+)%s*}}","{{%1}}"); return tabelka_szablonow[ciag_strip] or ciag; end; lancuch=mw.ustring.gsub(lancuch,"{{%s*".._i.."+%s*}}",fun_tabelka_szablonow); end; end; end; if(not wytnij_ujemne)then local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); czy=czy or czy_zero_element; if((pokolei and (not czy_jest)) or czy or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=lancuch; maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; end lancuch_znakow=BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum); end; Analizuj_dla_bez_rozne(tabela); else local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local element=pf.args[licznik] local czy=czy_zero_element or (((element)and ((not wytnij)and(not wytnij_puste))) or((wytnij)and(parametry_modul["CzyTakCiąg"](element))) or((wytnij_puste and not wytnij)and(parametry_modul.CzyTak(element)))); local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); if((pokolei and (not czy_jest)) or czy or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=mw.ustring.gsub(tekst_do_analizy,"{{%s*".._i.."+%s*}}",licznik); maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; lancuch_znakow=BudowaSzereguZDanych(frame, tab_lancuch,minimum or 0,maksimum); end; else local function Analizuj_z_rozne(tabela_wszystkich_parametrow) local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local czy=false; local czy_niepuste=false; local wytnij_ujemne=false; local function Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,czy_ze_spacja,czy_z_jedynka) local wartosc,klucz; if(zmienne_parametrowe)then local function Niewspomniane_w_rozne(zmienne_parametrowe,liczba_przesuniecia) local liczba=licznik+liczba_przesuniecia+zacznij_nazwane; if(liczba<1)then wytnij_ujemne=true;end; if(liczba>0)then local element=pf.args[zmienne_parametrowe..((czy_ze_spacja)and " " or "")..liczba]; local czy_jedynka=(liczba==1)and element; local wartosc_elementu=((czy_z_jedynka) and element or ((not czy_z_jedynka)and((liczba>1)and element or ((liczba==1)and(czy_jedynka and element or pf.args[zmienne_parametrowe]))))); czy_niepuste=czy_niepuste or ((not nie_wytnij_nazwane)and((wytnij and parametry_modul["CzyTakCiąg"](wartosc_elementu)) or (wytnij_puste and not wytnij and parametry_modul.CzyTak(wartosc_elementu))) or (nie_wytnij_nazwane and wartosc_elementu)); czy=czy or wartosc_elementu; wartosc="{{{"..zmienne_parametrowe..(czy_z_jedynka and (((czy_ze_spacja)and " " or "")..liczba) or ((liczba>1) and (((czy_ze_spacja)and " " or "")..liczba) or (czy_jedynka and (((czy_ze_spacja)and " " or "")..1) or ""))); klucz="{{{%s*"..zmienne_parametrowe..((czy_ze_spacja)and "%s+" or "").."{{%s*".._i.._i.."+%s*}}"; end; end; local subtab=tabela[zmienne_parametrowe]; local liczba_przesuniecia=subtab and subtab[3] or 0; Niewspomniane_w_rozne(zmienne_parametrowe,liczba_przesuniecia); end; return klucz,wartosc; end; local function Tekst_do_analizy(tekst_do_analizy_przetwarzany,klucz,wartosc) if((wartosc)and(klucz))then local przetwarzane,_=mw.ustring.gsub(tekst_do_analizy_przetwarzany,klucz,wartosc); return przetwarzane; end; return ""; end; local lancuch_zaanalizowany=tekst_do_analizy; for zmienne_parametrowe,_ in pairs(tabela_wszystkich_parametrow)do local lokalizacja=mw.ustring.match(tekst_do_analizy,"{{{%s*"..zmienne_parametrowe.."%s*{{%s*".._i.._i.."+%s*}}"); if(lokalizacja)then zmienne_parametrowe=mw.text.trim(zmienne_parametrowe); local czy_ze_spacja,czy_z_jedynka=czy_parametry_ze_spacja_i_jedynka(zmienne_parametrowe); local klucz,wartosc=Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,czy_ze_spacja,czy_z_jedynka); if(wytnij_ujemne)then break;end; lancuch_zaanalizowany=Tekst_do_analizy(lancuch_zaanalizowany,klucz,wartosc); end; end; if(not wytnij_ujemne)then local zmienna_numerowana_wikikodu=mw.ustring.match(tekst_do_analizy,"{{{%s*{{%s*".._i.."+%s*}}"); czy=czy_zero_element or czy or ((not zmienna_numerowana_wikikodu)and(mw.ustring.match(tekst_do_analizy,"{{%s*".._i.."%s*}}")))or((zmienna_numerowana_wikikodu)and(pf.args[licznik])); local klucz="{{%s*".._i.."%s*}}"; local wartosc=licznik; lancuch_zaanalizowany=Tekst_do_analizy(lancuch_zaanalizowany,klucz,wartosc); czy_niepuste=czy_zero_element or czy_niepuste or (wytnij and parametry_modul["CzyTakCiąg"](pf.args[licznik])) or (wytnij_puste and not wytnij and parametry_modul.CzyTak(pf.args[licznik])); local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); if((pokolei and (not czy_jest)) or (czy and (not wytnij)and(not wytnij_puste)) or (((wytnij)or(wytnij_puste))and(czy_niepuste)) or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=lancuch_zaanalizowany; maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; end; lancuch_znakow=BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum); end; Analizuj_z_rozne(tabela); end; if(#lancuch_znakow==0)then return gdy_nic;end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch_znakow) or lancuch_znakow; return przetworzony_wikikod; end; p.PowtarzajOdDo=function(frame) local start=tonumber(frame.args["start"]); local koniec=tonumber(frame.args["koniec"]); local krok=tonumber(frame.args["krok"]) or 1; local parametry_modul=require("Module:Parametry") local lacznik=frame.args["łącznik"] or (parametry_modul.CzyTak(frame.args["nowa linia"]) and "\n" or ""); if((not start)or(not koniec))then return "";end; if(krok==0)then return "";end; if(((start>koniec)and(krok>0))or((start<koniec)and(krok<0)))then return "";end; local kod=frame.args[1]; tabela_mikroszablonow={ ["{{start}}"]=start, ["{{koniec}}"]=koniec, ["{{krok}}"]=krok, } kod=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_mikroszablonow); local lancuch=""; local licznik=start; local kodprzeskok=frame.args["przeskok"]; local pf=frame:getParent(); while licznik<=koniec do local przeskok; if(kodprzeskok)then local _; przeskok,_=mw.ustring.gsub(kodprzeskok,"{{_}}",licznik); przeskok=pf:preprocess(przeskok); end; local kod2,_=mw.ustring.gsub(kod,"{{_}}",licznik); lancuch=lancuch..((lancuch~="")and lacznik or "")..kod2; licznik=licznik+krok+(tonumber(przeskok) or 0); end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch) or lancuch; return przetworzony_wikikod; end; p["PrzetwarzajIterującCiąg"]=function(frame) local poziom=frame.args["ciąg"]; poziom=mw.text.trim(poziom); local tab_poziom=mw.text.split(poziom,"%s*;%s*",false); local len_tab_poziom=#tab_poziom; local start=1;local koniec=len_tab_poziom;local krok=1; tabela_mikroszablonow={ ["{{start}}"]=start, ["{{koniec}}"]=koniec, ["{{krok}}"]=krok, } local parametry_modul=require("Module:Parametry"); local lacznik=frame.args["łącznik"] or (parametry_modul.CzyTak(frame.args["nowa linia"]) and "\n" or ""); local kod=frame.args[1]; kod=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_mikroszablonow); local lancuch=""; local licznik=start; local kodprzeskok=frame.args["przeskok"]; if(kodprzeskok)then kodprzeskok=mw.ustring.gsub(kodprzeskok,"{{[^{}]+}}",tabela_mikroszablonow); end; local pf=frame:getParent(); while licznik<=koniec do local przeskok; local tabela_microszablonow2={ ["{{_}}"]=licznik, ["{{ciąg}}"]=tab_poziom[licznik]; }; if(kodprzeskok)then przeskok=mw.ustring.gsub(kodprzeskok,"{{[^{}]+}}",tabela_microszablonow2); przeskok=pf:preprocess(przeskok); end; local kod2,_=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_microszablonow2); lancuch=lancuch..((lancuch~="")and lacznik or "")..kod2; licznik=licznik+krok+(tonumber(przeskok) or 0); end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch) or lancuch; return przetworzony_wikikod; end; p["PowtarzajWedług"] = function(frame) local start=tonumber(frame.args["start"]) or 1; local wybrany_wzor=frame.args["wzór"]; local parametry_modul=require("Module:Parametry") local czy_link=parametry_modul.CzyTak(frame.args["link"]); local liczba_list=p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"]{args={["wzór"]=wybrany_wzor,}}; local lancuch=""; local linki_modul=require("Module:S"); for i=start,liczba_list,1 do local wybrany_link_lub_bez; local wybrany_link_lub_bez=mw.ustring.gsub(wybrany_wzor,"{{_}}",tostring(i)); if czy_link then wybrany_link_lub_bez=linki_modul["S"]{[1]=wybrany_link_lub_bez}; end; lancuch=(lancuch~="")and (lancuch..((i<liczba_list) and ", " or " i ")..wybrany_link_lub_bez) or wybrany_link_lub_bez; end; return lancuch; end; p["LiczbaPrawychUkośników"] = function(frame) local nazwa=frame.args[1]; local _,ile=mw.ustring.gsub(nazwa,"/",function(s)return nil;end); return ile; end; p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"] = function(frame) local start=tonumber(frame.args["start"]) or 1; licznik=start; local strona=frame.args["wzór"]; while true do local strona2,_=mw.ustring.gsub(strona,"{{_}}",licznik); local title=mw.title.makeTitle('',strona2); if((not title) or (not title.exists))then return licznik-1; end; licznik=licznik+1; end; end; p["MinimalnyNumerSpośródOdpowiednikowychZmiennych"]=function(frame) local parametry_modul=require("Module:Parametry"); local techniczne_modul=require("Module:Techniczne"); local pf=frame:getParent(); local parametr=frame.args["zmienna"]; local numerowane=frame.args["numerowane"]; parametr=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](parametr); local czy_numerowane=parametry_modul.CzyTak(numerowane); local numer=nil; for name,value in pairs(pf.args)do local __name=tostring(name); local __numer=mw.ustring.match(__name,"^"..parametr.."(%d*)$"); __numer=tonumber(__numer) or (((__numer)and(__numer=="")) and 1 or nil); if((__numer)or((czy_numerowane)and(parametry_modul.TypeNumber(name))))then if(numer)then numer=math.min(__numer or name,numer); else numer=__numer or name; end; end; end; return numer; end; p.IleJestTakichOdpowiednikowychZmiennych=function(frame) local parametry_modul=require("Module:Parametry"); local techniczne_modul=require("Module:Techniczne"); local pf=frame:getParent(); local parametr=frame.args["zmienna"]; local numerowane=frame.args["numerowane"]; parametr=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](parametr); local czy_numerowane=parametry_modul.CzyTak(numerowane); local numer=0; local tab={}; for name,value in pairs(pf.args)do local __name=tostring(name); local __numer=mw.ustring.match(__name,"^"..parametr.."(%d*)$"); if((not tab[name])and((__numer)or((czy_numerowane)and(parametry_modul.TypeNumber(name)))))then numer=numer+1; tab[tonumber(__numer) or(((__numer)and(__numer==""))and 1 or nil) or name]=true; end; end; return numer; end; p["Parametr w tablicy nazw"]=function(frame) local zmienna_z_argumentami=frame.args["parametry"]; if(not zmienna_z_argumentami)then return;end; local jedna_pozycja=frame.args["pozycja"]; if(not jedna_pozycja)then return;end; local parametry_modul=require("Module:Parametry"); jedna_pozycja=parametry_modul["Odstępy"]{[1]=jedna_pozycja,[2]="tak"}; if(jedna_pozycja=="")then return;end; local od_duzej=parametry_modul.CzyTak(frame.args["od dużej"]); jedna_pozycja=od_duzej and mw.getContentLanguage():ucfirst(jedna_pozycja) or jedna_pozycja; local iter=mw.text.gsplit(zmienna_z_argumentami,";",true); local tablica={}; for pozycja in iter do pozycja=parametry_modul["Odstępy"]{[1]=pozycja,[2]="tak"}; if(pozycja~="")then tablica[od_duzej and mw.getContentLanguage():ucfirst(pozycja) or pozycja]=true; end; end; return (tablica[jedna_pozycja] and "tak" or nil); end; return p; sun8c7v6tngzlw8fdz0l4u48ijzqzda 559274 559272 2026-10-14T18:34:38Z Persino 2851 559274 Scribunto text/plain local p={}; local function ParserBlokowy(frame, co_ma_wywolac) local pf=frame:getParent(); local nazwa_szablonu_modulu_lub_parsera="Nazwa"; local szablon_modul_lub_parser=frame.args[nazwa_szablonu_modulu_lub_parsera]; local argumenty_szablonu_modulu_lub_parsera={}; local tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica={}; local ramka_dane_modul=mw.loadData("Module:Ramka/dane"); local bez_parametrowa_tablica=ramka_dane_modul.bez_parametrowa_tablica; local bez_parametrow={}; if(co_ma_wywolac==1)then bez_parametrow["Funkcja"]=true;end; local parametry_modul=require("Module:Parametry"); local tab_usun_parametry; local czy_usun=frame.args["usuń z parametrów ramki"]; if(parametry_modul.CzyTak(czy_usun))then tab_usun_parametry={}; local iter=mw.text.gsplit(czy_usun,";",true); for name in iter do name=mw.ustring.gsub(name,"^[%s_]*",""); name=mw.ustring.gsub(name,"[%s_]*$",""); name=tonumber(name) or name; tab_usun_parametry[name]=true; end; end; for nazwa_parametru,wartosc_parametru in pairs(frame.args) do if(((not tab_usun_parametry)or(not tab_usun_parametry[nazwa_parametru])) and((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru]))) )then tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica[nazwa_parametru]=nazwa_parametru; argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; end; local szablonowe_modul=require("Module:Szablonowe"); local tabela_bez_argumentow=p.RozpakujArgumenty(frame.args["bez argumentów rodzica"]); local zmienna_z_parametrami_rodzica=frame.args["zmienna z parametrami rodzica"]; local czy_przekazac_parametry_rodzica=zmienna_z_parametrami_rodzica and parametry_modul.CzyTak(zmienna_z_parametrami_rodzica) or false; ---- local frame_sprawdzenia_args=frame.args["bez dodatkowych sprawdzeń"]; local bez_dodatkowych_sprawdzen; local czy_podano_bez_dodatkowych_sprawdzen; if(frame_sprawdzenia_args)then czy_podano_bez_dodatkowych_sprawdzen=frame_sprawdzenia_args and true or false; bez_dodatkowych_sprawdzen=parametry_modul.CzyTak(frame_sprawdzenia_args); else local frame_sprawdzenia_pf_args=pf.args["bez dodatkowych sprawdzeń"]; if(frame_sprawdzenia_pf_args)then czy_podano_bez_dodatkowych_sprawdzen=frame_sprawdzenia_pf_args and true or false; bez_dodatkowych_sprawdzen=parametry_modul.CzyTak(frame_sprawdzenia_pf_args); end; end; local z_dodatkowymi_sprawdzeniami=not(bez_dodatkowych_sprawdzen); --- local PakujArgumentyRamki = function(args) local czy_tylko_ze_zmienna_bez_argumentow_szablonu=args["zmienna z argumentami ramki"]; if(not parametry_modul.CzyTak(czy_tylko_ze_zmienna_bez_argumentow_szablonu))then return args["bez argumentów szablonu"];end; local tabelka1={}; for nazwa_parametru,_ in pairs(args)do if((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru])))then tabelka1[nazwa_parametru]=true; end; end; local tabelka2=(args["bez argumentów szablonu"]) and p.RozpakujArgumenty(args["bez argumentów szablonu"]); local tabelka=parametry_modul["ŁączDwieTabele"](tabelka1,tabelka2); local tablica_mikroszablonow={ [";"]="{{+}}", }; local str=""; for name,_ in pairs(tabelka) do str=str..((str~="")and ";" or "")..mw.ustring.gsub(mw.text.trim(name),".",tablica_mikroszablonow); end; return str,tabelka2; end; local nazwa_szablonu; local function TempFunc() if(not nazwa_szablonu)then local nazwa=szablonowe_modul.NazwaSzablonu(pf:getTitle()); nazwa_szablonu=nazwa; return nazwa; else return nazwa_szablonu; end; end; local bez_argumentow_szablonu=nil; if(czy_przekazac_parametry_rodzica)then if(z_dodatkowymi_sprawdzeniami)then local str=p.PakujParametry(pf.args); argumenty_szablonu_modulu_lub_parsera["parametry rodzica"]=str; end; argumenty_szablonu_modulu_lub_parsera["potomek"]="tak"; argumenty_szablonu_modulu_lub_parsera["bez argumentów szablonu"],bez_argumentow_szablonu=PakujArgumentyRamki(frame.args); if(czy_podano_bez_dodatkowych_sprawdzen)then argumenty_szablonu_modulu_lub_parsera["bez dodatkowych sprawdzeń"]=bez_dodatkowych_sprawdzen and "tak" or ""; end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or TempFunc(); else local function ZmiennaZNazwaSzablonuRodzica() local czy_ze_nazwa_szablonu=frame.args["zmienna z nazwą szablonu rodzica"]; if(parametry_modul.CzyTak(czy_ze_nazwa_szablonu))then argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or szablonowe_modul.NazwaSzablonu(pf:getTitle()); end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); end; local z_argumentami_najwyzszego_rodzica=not parametry_modul.CzyTak(tabela_bez_argumentow["nie potomek"]); if(z_argumentami_najwyzszego_rodzica)then local potomek=parametry_modul.CzyTak(pf.args["potomek"]); if(potomek)then local parametry_rodzic=pf.args["parametry rodzica"]; if(parametry_rodzic)then if(z_dodatkowymi_sprawdzeniami)then argumenty_szablonu_modulu_lub_parsera["parametry rodzica"]=parametry_rodzic; end; argumenty_szablonu_modulu_lub_parsera["potomek"]="tak"; argumenty_szablonu_modulu_lub_parsera["bez argumentów szablonu"],bez_argumentow_szablonu=PakujArgumentyRamki(frame.args); if(czy_podano_bez_dodatkowych_sprawdzen)then argumenty_szablonu_modulu_lub_parsera["bez dodatkowych sprawdzeń"]=bez_dodatkowych_sprawdzen and "tak" or ""; end; argumenty_szablonu_modulu_lub_parsera["nazwa szablonu przodka"]=pf.args["nazwa szablonu przodka"] or TempFunc(); argumenty_szablonu_modulu_lub_parsera["nazwa szablonu rodzica"]=pf.args["nazwa szablonu rodzica"] or TempFunc(); else ZmiennaZNazwaSzablonuRodzica(); end; else ZmiennaZNazwaSzablonuRodzica(); end; else ZmiennaZNazwaSzablonuRodzica() end; end; local czy_bez_argumentow_nienazwanych_rodzica=parametry_modul.CzyTak(frame.args["bez argumentów nienazwanych rodzica"]); local czy_parametry_pudelka=parametry_modul.CzyTak(frame.args["parametry funkcji modułu pudełek"]); local czy_parametry_pudelka_podstawowe=parametry_modul.CzyTak(frame.args["parametry podstawowe funkcji modułu pudełek"]) local pudelko_modul=require("Module:Pudełko"); for nazwa_parametru,wartosc_parametru in pairs(pf.args) do if(((type(nazwa_parametru)=="number")or((type(nazwa_parametru)=="string")and(not bez_parametrow[nazwa_parametru])and(not bez_parametrowa_tablica[nazwa_parametru])))and((not bez_argumentow_szablonu)or(not bez_argumentow_szablonu[nazwa_parametru])))then if((not tabela_by_sprawdzic_czy_powstarzaja_sie_parametry_dzieci_i_rodzica[nazwa_parametru]) and(not tabela_bez_argumentow[nazwa_parametru]) and((not czy_bez_argumentow_nienazwanych_rodzica)or((czy_bez_argumentow_nienazwanych_rodzica)and(not tonumber(nazwa_parametru))) ))then local czy_dodac_do_parametrow; if czy_parametry_pudelka or czy_parametry_pudelka_podstawowe then local czy_dodac_do_parametrow=((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^nazwa przestrzeni nazw %d+$") and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^nazwa przestrzeni nazw$") and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or ((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^nazwa jednostki %d+$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^nazwa jednostki$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or ((not czy_parametry_pudelka_podstawowe) and mw.ustring.match(nazwa_parametru,"^typ jednostki %d+$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)) or (mw.ustring.match(nazwa_parametru,"^typ jednostki$") and wartosc_parametru~="" and not pudelko_modul.CzyNiepoprawnaNazwa(wartosc_parametru)); if(czy_dodac_do_parametrow)then argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; else argumenty_szablonu_modulu_lub_parsera[nazwa_parametru]=wartosc_parametru; end; end; end; end; if(co_ma_wywolac==0)then return pf:expandTemplate{title=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; elseif(co_ma_wywolac==1)then local frame2=pf:newChild{args=argumenty_szablonu_modulu_lub_parsera}; local funkcja=frame.args["Funkcja"]; return require("Module:"..szablon_modul_lub_parser)[funkcja](frame2); elseif(co_ma_wywolac==2)then return pf:callParserFunction{name=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; else return pf:expandTemplate{title=szablon_modul_lub_parser,args=argumenty_szablonu_modulu_lub_parsera}; end; end; local function BudowaSzereguZDanych(frame,tab_lancuch,minimum,maksimum) local parametry_modul=require("Module:Parametry"); local czy_akapit=parametry_modul.CzyTak(frame.args["akapit"]); local akapit=czy_akapit and "\n\n" or ""; local przecinek=parametry_modul.CzyTak(frame.args["przecinek"]) and ", " or ""; local czy_nowa_linia=parametry_modul.CzyTak(frame.args["nowa linia"]); local nowa_linia=czy_nowa_linia and "\n" or ""; local wyliczanka=parametry_modul.CzyTak(frame.args["wyliczanka"]); local przecinek_na_poczatku=parametry_modul.CzyTak(frame.args["początek"]); local myslnik=parametry_modul.CzyTak(frame.args["myślnik"]); local warunkowe=parametry_modul.CzyTak(frame.args["warunkowe"]); local warunkowe_ze_zmiennymi=parametry_modul.CzyTak(frame.args["warunkowe ze zmiennymi"]); local lancuch_znakow=""; local koniec=#tab_lancuch; for i=1,koniec,1 do local lancuch=tab_lancuch[i]; lancuch=mw.ustring.gsub(lancuch,"{{min}}",minimum); lancuch=mw.ustring.gsub(lancuch,"{{max}}",maksimum); if(not wyliczanka)then lancuch_znakow=lancuch_znakow..((i~=1)and przecinek or ((przecinek_na_poczatku)and przecinek or ((myslnik)and "&nbsp;- " or ""))); else lancuch_znakow=lancuch_znakow..((i==1)and ((przecinek_na_poczatku)and ", " or "") or ((i<koniec)and ", " or "&nbsp;i ")); end; lancuch_znakow=lancuch_znakow..((i~=1)and (czy_akapit and akapit or nowa_linia) or "")..lancuch; end; if(warunkowe)then local parametr=parametry_modul.CzyTak(frame.args["parametr"]); return p.InstrukcjeWarunkowe(lancuch_znakow,true,parametr,warunkowe_ze_zmiennymi); else return lancuch_znakow; end; end; p.InstrukcjeWarunkowe = function(ciag,derektywy_specjalne,derektywy_parametrowe,warunkowe_ze_zmiennymi) local ciag_warunkowe_fun=function(s) local function ParserWiki(s,wywolanie) local czy_parser=mw.ustring.match(s,wywolanie); if(czy_parser)then return mw.getCurrentFrame():preprocess(s); end; end return ParserWiki(s,"^({{%s*#if:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifeq:[^{}]*}})$") or ParserWiki(s,"^({{%s*#switch:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifexpr:[^{}]*}})$") or ParserWiki(s,"^({{%s*#expr:[^{}]*}})$") or ParserWiki(s,"^({{%s*#iferror:[^{}]*}})$") or ParserWiki(s,"^({{%s*#ifexist:[^{}]*}})$") or nil; end; local ciag,_=mw.ustring.gsub(ciag,"{{[^{}]+}}",ciag_warunkowe_fun); if(warunkowe_ze_zmiennymi)then local ciag_warunkowe_fun2=function(s) s=mw.ustring.gsub(s,"__!__","|"); s="{{"..s.."}}"; return mw.getCurrentFrame():getParent():preprocess(s); end; ciag,_=mw.ustring.gsub(ciag,"__%(%(__(.-)__%)%)__",ciag_warunkowe_fun2); end; if(derektywy_specjalne)then local ramka_dane_modul=mw.loadData("Module:Ramka/dane"); local tab_zamieniane=ramka_dane_modul.tablica_warunkowe_i_parametr; ciag=mw.ustring.gsub(ciag,"(__[^_]+__)",function(s) local tab_szablon=tab_zamieniane[s]; if(tab_szablon)then if(not derektywy_parametrowe)then return tab_szablon[1];end; return tab_szablon[2]; end; return nil; end); return ciag; end; return ciag; end; p.RozpakujArgumenty = function(zmienna_z_argumentami) local tablica_mikroszablonow={ ["{{+}}"]=";", }; local tabela_bez_argumentow={}; local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(zmienna_z_argumentami))then local iter=mw.text.gsplit(zmienna_z_argumentami,";",true); local podlancuch; for podlancuch in iter do podlancuch=mw.text.trim(podlancuch); local liczba=tonumber(podlancuch); tabela_bez_argumentow[liczba or mw.ustring.gsub(podlancuch,"{{[^{}]+}}",tablica_mikroszablonow)]=true; end; end; return tabela_bez_argumentow; end; p.PakujParametry = function(args) return mw.text.jsonEncode(args,mw.text.JSON_PRESERVE_KEYS); end; p.RozpakujParametry = function (zmienna_z_parametrami) return mw.text.jsonDecode(zmienna_z_parametrami,mw.text.JSON_PRESERVE_KEYS); end; p["Rozwiń"] = function(frame) return frame:getParent():preprocess(frame.args[1]); end; p.Log = function(frame) local parametry_modul=require("Module:Parametry"); local czy_zwracac=parametry_modul.CzyTak(frame.args["wikitext"]); local wikitekst=frame.args["log"]; mw.log(wikitekst); return (czy_zwracac and wikitekst or ""); end; p.Szablon = function(frame) return ParserBlokowy(frame,0); end; p["Moduł"] = function(frame) return ParserBlokowy(frame, 1); end; p.Parser = function(frame) return ParserBlokowy(frame, 2); end; p.Q =function(frame) local parametry_modul=require("Module:Parametry"); local args_szablon=parametry_modul.PobierzArgsParametry(frame); local args_ksiazka={}; for name,value in pairs(args_szablon)do if(not parametry_modul.TypeNumber(name))then args_ksiazka[name]=value; elseif(name>1)then args_ksiazka[name-1]=value; elseif(name~=1)then args_ksiazka[name]=value; end; end; if(parametry_modul.CzyTak(frame.args["wyspecjalizowana"]))then args_ksiazka["wyspecjalizowana"]=nil; end; local szablon=args_szablon[1]; local szablon_ksiazka=p["N"]{args={[1]=szablon,}}; local pf=frame:getParent(); return pf:expandTemplate{title=szablon_ksiazka,args=args_ksiazka,}; end; p.N=function(frame) local parametr=frame.args[1]; local parametry_modul=require("Module:Parametry"); local parametr_p=tonumber(frame.args["p"]) or 0; local parametr_n=parametry_modul.CzyTak(frame.args["n"]); local szablon=parametry_modul["CzyTakCiąg"](parametr) and parametr or ((parametr_p==1) and "Nieznany moduł" or ((parametr_p==2) and "Nieznana kategoria" or "Nieznany szablon")); szablon=parametry_modul["Odstępy"]{[1]=szablon,[2]="tak",}; szablon=mw.getContentLanguage():ucfirst(szablon); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); local przestrzen=((parametr_p==1) and nazwy_np_modul.Module or ((parametr_p==2) and nazwy_np_modul.Category or nazwy_np_modul.Template)); local szablon_ksiazka=przestrzen..":Książka:"..szablon; local parametr_k=parametry_modul.CzyTak(frame.args["k"]); if(not parametr_k)then local techniczne_modul=require("Module:Techniczne"); local liczba_title,tab_title=techniczne_modul.PoliczZbiory{[1]=szablon_ksiazka,tekst=true,}; szablon_ksiazka=((liczba_title>0)and (szablon_ksiazka) or (przestrzen..":"..szablon)); end; if(parametr_n)then local nazwy_modul=require("Module:Nazwy"); szablon_ksiazka=nazwy_modul["NAZWASTRONY"]{nazwa=szablon_ksiazka,}; end; return szablon_ksiazka; end; p.A=function(frame) local parametr=frame.args[1]; local parametry_modul=require("Module:Parametry"); local parametr_p=parametry_modul.CzyTak(frame.args["p"]); local przestrzen; if(parametr_p)then local tabela_nazw={}; local nazwy_modul=require("Module:Nazwy"); przestrzen=nazwy_modul["NAZWAPRZESTRZENI"](parametr,tabela_nazw); local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); if((przestrzen~=nazwy_np_modul.Template)and(przestrzen~=nazwy_np_modul.Module)and(przestrzen~=nazwy_np_modul.Category))then return parametr; end; parametr=nazwy_modul["NAZWASTRONY"](parametr,tabela_nazw); end; parametr=mw.ustring.gsub(parametr,"^[Kk]siążka:",""); parametr=(parametr_p and ((przestrzen~="") and (przestrzen..":") or "") or "")..parametr; return parametr; end; p.Powtarzaj = function(frame) local pf=frame:getParent(); local parametry_modul=require("Moduł:Parametry"); local czy_parametry=parametry_modul.CzyTak(frame.args["parametry"]); local tabela={}; local zacznij_nazwane; local parametry_modul=require("Module:Parametry"); if(czy_parametry)then local FormatujTabela=function(parametr_tab) return{ parametry_modul.CzyTak(parametr_tab[1]), parametry_modul.CzyTak(parametr_tab[2]), tonumber(parametr_tab[3]) or 0, tonumber(parametr_tab[4]), tonumber(parametr_tab[5]), }; end; local WstawDoTabeli=function(znaczenia_parametr) local parametr,wartosc=mw.ustring.match(znaczenia_parametr,"%s*([%w_%-][%w%s_%-]-)%s*=%s*(.-)%s*$"); if(parametr and wartosc)then if((not tonumber(parametr))and(not tabela[parametr]))then local parametr_tab=mw.text.split(wartosc,"%s*,%s*",false); tabela[parametr]=FormatujTabela(parametr_tab); end; else if((not tonumber(znaczenia_parametr))and(not tabela[znaczenia_parametr]))then tabela[znaczenia_parametr]={}; end; end; end; local iter=mw.text.gsplit(mw.text.trim(frame.args["parametry"]),"%s*;%s*",false); local czy=true; for znaczenia_parametr in iter do znaczenia_parametr=mw.text.trim(znaczenia_parametr); local czy_nie_omijac=parametry_modul.CzyTak(znaczenia_parametr); if(czy_nie_omijac)then if(czy)then zacznij_nazwane=tonumber(znaczenia_parametr); czy=false; if(not zacznij_nazwane)then zacznij_nazwane=0; WstawDoTabeli(znaczenia_parametr); end; else WstawDoTabeli(znaczenia_parametr); end; end; end; end; local tabela_dodatkowe={}; local czy_dodatkowe=parametry_modul.CzyTak(frame.args["dodatkowe"]); if(czy_dodatkowe)then local iter=mw.text.gsplit(mw.text.trim(frame.args["dodatkowe"]),"%s*;%s*",false); for name in iter do tabela_dodatkowe[name]=true; end; end; if(not zacznij_nazwane)then zacznij_nazwane=0;end; local function LiczbaZmiennychOOgolniePodstawieParametru(podstawa_parametru_wyszukiwana) local args=pf.args; local maksymalna_liczba_nazwy_danego_parametru=0; for nazwa_parametru, wartosc_parametru in pairs(args)do local czy_jedynka=false; if(type(nazwa_parametru)=="string")then local nazwa_podstawy_parametru,spacja,liczba=mw.ustring.match(nazwa_parametru,"^([%a%-%s]*[%a%-])(%s?)(%d+)$"); if(not nazwa_podstawy_parametru and not spacja and not liczba)then nazwa_podstawy_parametru=nazwa_parametru; spacja=""; liczba=1; czy_jedynka=true; end; local subtab=tabela[nazwa_podstawy_parametru]; if(subtab)then local nie_spacja_parametru=subtab[1]; local czy_z_jedynka=subtab[2]; liczba=tonumber(liczba) or 0; if((not nie_spacja_parametru and (((spacja==" ")and ((liczba>1)or((not czy_jedynka)and(czy_z_jedynka))or((not czy_z_jedynka)and(not czy_jedynka)))) or(((not czy_z_jedynka)and(czy_jedynka))and(spacja=="" and liczba==1)))) or (nie_spacja_parametru and (((spacja=="")and ((liczba>1)or((not czy_jedynka)and(czy_z_jedynka))or((not czy_z_jedynka)and(not czy_jedynka)))) or(((not czy_z_jedynka)and(czy_jedynka))and(spacja=="" and liczba==1)))) )then if(((podstawa_parametru_wyszukiwana) and (nazwa_podstawy_parametru==podstawa_parametru_wyszukiwana))or(not podstawa_parametru_wyszukiwana))then maksymalna_liczba_nazwy_danego_parametru=math.max(maksymalna_liczba_nazwy_danego_parametru,liczba); end; end; end; end; end; return maksymalna_liczba_nazwy_danego_parametru; end; local MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow=function() local maksimum_all=0; for wartosc_parametru,dane_parametru in pairs(tabela)do if(parametry_modul.TypeString(wartosc_parametru))then if(not tabela_dodatkowe[wartosc_parametru])then local maksymalna_liczba_nazwy_danego_parametru=LiczbaZmiennychOOgolniePodstawieParametru(wartosc_parametru); local maksimum=maksymalna_liczba_nazwy_danego_parametru-(dane_parametru[3] or 0); maksimum_all=math.max(maksimum-zacznij_nazwane,maksimum_all); end; end; end; return maksimum_all; end; local zacznij_na_poczatku,skoncz_na_koncu; local tekst_do_analizy=frame.args[1]; if(not frame.args[1])then return "(brak parametru do analizy)";end; local czy_tekst=parametry_modul.CzyTak(tekst_do_analizy); if(not czy_tekst)then return "(parametr do analizy pusty)";end; local start=frame.args["start"]; local koniec=frame.args["koniec"]; local czy_start=parametry_modul.CzyTak(start); local czy_koniec=parametry_modul.CzyTak(koniec); local zaznacz=frame.args["zaznacz"]; local tabela_zaznacz={}; if(zaznacz)then local iter=mw.text.gsplit(zaznacz,"%s*;%s*",false) for liczba in iter do tabela_zaznacz[#tabela_zaznacz+1]=tonumber(liczba) or 0; end; end; local czy_rozne=parametry_modul.CzyTak(frame.args["różne"]); local czy_ma_nazwane; local function Wylicz_skoncz_na_koncu() czy_ma_nazwane=parametry_modul["CzySąElementyNazwaneTablicy"](tabela); if(czy_ma_nazwane)then if(czy_rozne)then local maks_numer=parametry_modul.CzyTak(frame.args["maksimum numeracyjne"]); if(not maks_numer)then return math.max(MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow(),parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args)); else return parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args); end; else return MaksymalnyLiczonyNumerElementowPodanychPodstawNazwyParametrow(); end; else return parametry_modul.MaksymalnaLiczbaParametruNienazwanegoTablicy(pf.args); end; end; local skoncz_na_koncu_wyliczona=Wylicz_skoncz_na_koncu(); if(not czy_koniec)then skoncz_na_koncu=skoncz_na_koncu_wyliczona; else skoncz_na_koncu=math.max(math.min(skoncz_na_koncu_wyliczona, tonumber(koniec) or 0),0); end; zacznij_na_poczatku=math.max(tonumber(start) or 1,1); if(zacznij_na_poczatku==0)then return "(początek jest ustawiony na zero)";end; for name, tab_par in pairs(tabela)do local _4=tab_par[4];local _5=tab_par[5]; if(_4)then zacznij_na_poczatku=math.max(math.min(zacznij_na_poczatku,_4 or 1),1);end; if(_5)then skoncz_na_koncu=math.max(math.max(skoncz_na_koncu,_5 or 0),0);end; end; local czy_niepodane=parametry_modul.CzyTak(frame.args["niepodane"]); local czy_zero_element=false; if(czy_niepodane)then if(zacznij_na_poczatku>skoncz_na_koncu)then skoncz_na_koncu=zacznij_na_poczatku; czy_zero_element=true; end; end; local lancuch_znakow=""; local gdy_nic=parametry_modul.CzyTak(frame.args["nic"])and frame.args["nic"] or ""; if(zacznij_na_poczatku>skoncz_na_koncu)then return gdy_nic;end; local pokolei=parametry_modul.CzyTak(frame.args["po kolei"]); local wytnij=parametry_modul.CzyTak(frame.args["wytnij"]); local wytnij_puste=parametry_modul.CzyTak(frame.args["wytnij puste"]); local nie_wytnij_nazwane=parametry_modul.CzyTak(frame.args["nie wytnij nazwane"]); local _i=parametry_modul.CzyTak(frame.args["znacznik"])and frame.args["znacznik"] or "_"; local czy_parametry_ze_spacja_i_jedynka=function(nazwa_parametru) local parametr_tab=tabela[nazwa_parametru]; if(parametr_tab)then return (not parametr_tab[1]),parametr_tab[2]; end; return true,false; end; if(not czy_rozne)then if(czy_ma_nazwane)then local function Analizuj_dla_bez_rozne(tabela_wszystkich_parametrow) local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local lancuch=tekst_do_analizy; local czy=nil; local wytnij_ujemne; for zmienne_parametrowe,_ in pairs(tabela_wszystkich_parametrow)do if(zmienne_parametrowe)then local subtab=tabela[zmienne_parametrowe]; local liczba_przesuniecia=subtab and subtab[3] or 0; local liczba=licznik+liczba_przesuniecia+zacznij_nazwane; ---- if(liczba<1)then wytnij_ujemne=true;end; if(liczba>0)then local ze_spacja,czy_z_jedynka=czy_parametry_ze_spacja_i_jedynka(zmienne_parametrowe); local element=pf.args[zmienne_parametrowe..((ze_spacja)and " " or "")..licznik]; local czy_jedynka=(licznik==1)and ((element and(not wytnij)) or((wytnij)and (parametry_modul.CzyTak(element)))); local wartosc_elementu=((czy_z_jedynka) and element or ((not czy_z_jedynka)and((licznik>1)and element or ((licznik==1)and(czy_jedynka and element or pf.args[zmienne_parametrowe]))))); czy=czy or (((wartosc_elementu) and ((not wytnij)and(not wytnij_puste))) or ((wytnij)and (parametry_modul["CzyTakCiąg"](wartosc_elementu))) or ((wytnij_puste and not wytnij)and (parametry_modul.CzyTak(wartosc_elementu)))); local tabelka_szablonow={ ["{{".._i.."}}"]=licznik, ["{{".._i.._i.."}}"]=(czy_z_jedynka and licznik or ((licznik>1) and licznik or (czy_jedynka and 1 or ""))), }; local function fun_tabelka_szablonow(ciag) local ciag_strip=mw.ustring.gsub(ciag,"{{%s*(%S+)%s*}}","{{%1}}"); return tabelka_szablonow[ciag_strip] or ciag; end; lancuch=mw.ustring.gsub(lancuch,"{{%s*".._i.."+%s*}}",fun_tabelka_szablonow); end; end; end; if(not wytnij_ujemne)then local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); czy=czy or czy_zero_element; if((pokolei and (not czy_jest)) or czy or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=lancuch; maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; end lancuch_znakow=BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum); end; Analizuj_dla_bez_rozne(tabela); else local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local element=pf.args[licznik] local czy=czy_zero_element or (((element)and ((not wytnij)and(not wytnij_puste))) or((wytnij)and(parametry_modul["CzyTakCiąg"](element))) or((wytnij_puste and not wytnij)and(parametry_modul.CzyTak(element)))); local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); if((pokolei and (not czy_jest)) or czy or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=mw.ustring.gsub(tekst_do_analizy,"{{%s*".._i.."+%s*}}",licznik); maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; lancuch_znakow=BudowaSzereguZDanych(frame, tab_lancuch,minimum or 0,maksimum); end; else local function Analizuj_z_rozne(tabela_wszystkich_parametrow) local tab_lancuch={}; local maksimum=0; local minimum; for licznik=zacznij_na_poczatku,skoncz_na_koncu,1 do local czy=false; local czy_niepuste=false; local wytnij_ujemne=false; local function Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,czy_ze_spacja,czy_z_jedynka) local wartosc,klucz; if(zmienne_parametrowe)then local function Niewspomniane_w_rozne(zmienne_parametrowe,liczba_przesuniecia) local liczba=licznik+liczba_przesuniecia+zacznij_nazwane; if(liczba<1)then wytnij_ujemne=true;end; if(liczba>0)then local element=pf.args[zmienne_parametrowe..((czy_ze_spacja)and " " or "")..liczba]; local czy_jedynka=(liczba==1)and element; local wartosc_elementu=((czy_z_jedynka) and element or ((not czy_z_jedynka)and((liczba>1)and element or ((liczba==1)and(czy_jedynka and element or pf.args[zmienne_parametrowe]))))); czy_niepuste=czy_niepuste or ((not nie_wytnij_nazwane)and((wytnij and parametry_modul["CzyTakCiąg"](wartosc_elementu)) or (wytnij_puste and not wytnij and parametry_modul.CzyTak(wartosc_elementu))) or (nie_wytnij_nazwane and wartosc_elementu)); czy=czy or wartosc_elementu; wartosc="{{{"..zmienne_parametrowe..(czy_z_jedynka and (((czy_ze_spacja)and " " or "")..liczba) or ((liczba>1) and (((czy_ze_spacja)and " " or "")..liczba) or (czy_jedynka and (((czy_ze_spacja)and " " or "")..1) or ""))); klucz="{{{%s*"..zmienne_parametrowe..((czy_ze_spacja)and "%s+" or "").."{{%s*".._i.._i.."+%s*}}"; end; end; local subtab=tabela[zmienne_parametrowe]; local liczba_przesuniecia=subtab and subtab[3] or 0; Niewspomniane_w_rozne(zmienne_parametrowe,liczba_przesuniecia); end; return klucz,wartosc; end; local function Tekst_do_analizy(tekst_do_analizy_przetwarzany,klucz,wartosc) if((wartosc)and(klucz))then local przetwarzane,_=mw.ustring.gsub(tekst_do_analizy_przetwarzany,klucz,wartosc); return przetwarzane; end; return ""; end; local lancuch_zaanalizowany=tekst_do_analizy; for zmienne_parametrowe,_ in pairs(tabela_wszystkich_parametrow)do local lokalizacja=mw.ustring.match(tekst_do_analizy,"{{{%s*"..zmienne_parametrowe.."%s*{{%s*".._i.._i.."+%s*}}"); if(lokalizacja)then zmienne_parametrowe=mw.text.trim(zmienne_parametrowe); local czy_ze_spacja,czy_z_jedynka=czy_parametry_ze_spacja_i_jedynka(zmienne_parametrowe); local klucz,wartosc=Analiza_zmiennej_parametrowej(zmienne_parametrowe,licznik,czy_ze_spacja,czy_z_jedynka); if(wytnij_ujemne)then break;end; lancuch_zaanalizowany=Tekst_do_analizy(lancuch_zaanalizowany,klucz,wartosc); end; end; if(not wytnij_ujemne)then local zmienna_numerowana_wikikodu=mw.ustring.match(tekst_do_analizy,"{{{%s*{{%s*".._i.."+%s*}}"); czy=czy_zero_element or czy or ((not zmienna_numerowana_wikikodu)and(mw.ustring.match(tekst_do_analizy,"{{%s*".._i.."%s*}}")))or((zmienna_numerowana_wikikodu)and(pf.args[licznik])); local klucz="{{%s*".._i.."%s*}}"; local wartosc=licznik; lancuch_zaanalizowany=Tekst_do_analizy(lancuch_zaanalizowany,klucz,wartosc); czy_niepuste=czy_zero_element or czy_niepuste or (wytnij and parametry_modul["CzyTakCiąg"](pf.args[licznik])) or (wytnij_puste and not wytnij and parametry_modul.CzyTak(pf.args[licznik])); local czy_jest=parametry_modul.CzyJestTakiElementNumerowanyTabeli(tabela_zaznacz,licznik); if((pokolei and (not czy_jest)) or (czy and (not wytnij)and(not wytnij_puste)) or (((wytnij)or(wytnij_puste))and(czy_niepuste)) or ((not pokolei)and(czy_jest)))then tab_lancuch[#tab_lancuch+1]=lancuch_zaanalizowany; maksimum=math.max(maksimum,licznik); minimum=math.min(minimum or licznik,licznik); end; end; end; lancuch_znakow=BudowaSzereguZDanych(frame,tab_lancuch,minimum or 0,maksimum); end; Analizuj_z_rozne(tabela); end; if(#lancuch_znakow==0)then return gdy_nic;end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch_znakow) or lancuch_znakow; return przetworzony_wikikod; end; p.PowtarzajOdDo=function(frame) local start=tonumber(frame.args["start"]); local koniec=tonumber(frame.args["koniec"]); local krok=tonumber(frame.args["krok"]) or 1; local parametry_modul=require("Module:Parametry") local lacznik=frame.args["łącznik"] or (parametry_modul.CzyTak(frame.args["nowa linia"]) and "\n" or ""); if((not start)or(not koniec))then return "";end; if(krok==0)then return "";end; if(((start>koniec)and(krok>0))or((start<koniec)and(krok<0)))then return "";end; local kod=frame.args[1]; tabela_mikroszablonow={ ["{{start}}"]=start, ["{{koniec}}"]=koniec, ["{{krok}}"]=krok, } kod=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_mikroszablonow); local lancuch=""; local licznik=start; local kodprzeskok=frame.args["przeskok"]; local pf=frame:getParent(); while licznik<=koniec do local przeskok; if(kodprzeskok)then local _; przeskok,_=mw.ustring.gsub(kodprzeskok,"{{_}}",licznik); przeskok=pf:preprocess(przeskok); end; local kod2,_=mw.ustring.gsub(kod,"{{_}}",licznik); lancuch=lancuch..((lancuch~="")and lacznik or "")..kod2; licznik=licznik+krok+(tonumber(przeskok) or 0); end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch) or lancuch; return przetworzony_wikikod; end; p["PrzetwarzajIterującCiąg"]=function(frame) local poziom=frame.args["ciąg"]; poziom=mw.text.trim(poziom); local tab_poziom=mw.text.split(poziom,"%s*;%s*",false); local len_tab_poziom=#tab_poziom; local start=1;local koniec=len_tab_poziom;local krok=1; tabela_mikroszablonow={ ["{{start}}"]=start, ["{{koniec}}"]=koniec, ["{{krok}}"]=krok, } local parametry_modul=require("Module:Parametry"); local lacznik=frame.args["łącznik"] or (parametry_modul.CzyTak(frame.args["nowa linia"]) and "\n" or ""); local kod=frame.args[1]; kod=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_mikroszablonow); local lancuch=""; local licznik=start; local kodprzeskok=frame.args["przeskok"]; if(kodprzeskok)then kodprzeskok=mw.ustring.gsub(kodprzeskok,"{{[^{}]+}}",tabela_mikroszablonow); end; local pf=frame:getParent(); while licznik<=koniec do local przeskok; local tabela_microszablonow2={ ["{{_}}"]=licznik, ["{{ciąg}}"]=tab_poziom[licznik]; }; if(kodprzeskok)then przeskok=mw.ustring.gsub(kodprzeskok,"{{[^{}]+}}",tabela_microszablonow2); przeskok=pf:preprocess(przeskok); end; local kod2,_=mw.ustring.gsub(kod,"{{[^{}]+}}",tabela_microszablonow2); lancuch=lancuch..((lancuch~="")and lacznik or "")..kod2; licznik=licznik+krok+(tonumber(przeskok) or 0); end; local przetworzony_wikikod=not parametry_modul.CzyTak(frame.args["nie rozwiń"]) and pf:preprocess(lancuch) or lancuch; return przetworzony_wikikod; end; p["PowtarzajWedług"] = function(frame) local start=tonumber(frame.args["start"]) or 1; local wybrany_wzor=frame.args["wzór"]; local parametry_modul=require("Module:Parametry") local czy_link=parametry_modul.CzyTak(frame.args["link"]); local liczba_list=p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"]{args={["wzór"]=wybrany_wzor,}}; local lancuch=""; local linki_modul=require("Module:S"); for i=start,liczba_list,1 do local wybrany_link_lub_bez; local wybrany_link_lub_bez=mw.ustring.gsub(wybrany_wzor,"{{_}}",tostring(i)); if czy_link then wybrany_link_lub_bez=linki_modul["S"]{[1]=wybrany_link_lub_bez}; end; lancuch=(lancuch~="")and (lancuch..((i<liczba_list) and ", " or " i ")..wybrany_link_lub_bez) or wybrany_link_lub_bez; end; return lancuch; end; p["LiczbaPrawychUkośników"] = function(frame) local nazwa=frame.args[1]; local _,ile=mw.ustring.gsub(nazwa,"/",function(s)return nil;end); return ile; end; p["MaksymalnaLiczbaNumerowanychIstniejącychStronWedługWzoru"] = function(frame) local start=tonumber(frame.args["start"]) or 1; licznik=start; local strona=frame.args["wzór"]; while true do local strona2,_=mw.ustring.gsub(strona,"{{_}}",licznik); local title=mw.title.makeTitle('',strona2); if((not title) or (not title.exists))then return licznik-1; end; licznik=licznik+1; end; end; p["MinimalnyNumerSpośródOdpowiednikowychZmiennych"]=function(frame) local parametry_modul=require("Module:Parametry"); local techniczne_modul=require("Module:Techniczne"); local pf=frame:getParent(); local parametr=frame.args["zmienna"]; local numerowane=frame.args["numerowane"]; parametr=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](parametr); local czy_numerowane=parametry_modul.CzyTak(numerowane); local numer=nil; for name,value in pairs(pf.args)do local __name=tostring(name); local __numer=mw.ustring.match(__name,"^"..parametr.."(%d*)$"); __numer=tonumber(__numer) or (((__numer)and(__numer=="")) and 1 or nil); if((__numer)or((czy_numerowane)and(parametry_modul.TypeNumber(name))))then if(numer)then numer=math.min(__numer or name,numer); else numer=__numer or name; end; end; end; return numer; end; p.IleJestTakichOdpowiednikowychZmiennych=function(frame) local parametry_modul=require("Module:Parametry"); local techniczne_modul=require("Module:Techniczne"); local pf=frame:getParent(); local parametr=frame.args["zmienna"]; local numerowane=frame.args["numerowane"]; parametr=techniczne_modul["PrzekształćWzórDoCzystegoTekstu"](parametr); local czy_numerowane=parametry_modul.CzyTak(numerowane); local numer=0; local tab={}; for name,value in pairs(pf.args)do local __name=tostring(name); local __numer=mw.ustring.match(__name,"^"..parametr.."(%d*)$"); if((not tab[name])and((__numer)or((czy_numerowane)and(parametry_modul.TypeNumber(name)))))then numer=numer+1; tab[tonumber(__numer) or(((__numer)and(__numer==""))and 1 or nil) or name]=true; end; end; return numer; end; p["Parametr w tablicy nazw"]=function(frame) local zmienna_z_argumentami=frame.args["parametry"]; if(not zmienna_z_argumentami)then return;end; local jedna_pozycja=frame.args["pozycja"]; if(not jedna_pozycja)then return;end; local parametry_modul=require("Module:Parametry"); jedna_pozycja=parametry_modul["Odstępy"]{[1]=jedna_pozycja,[2]="tak"}; if(jedna_pozycja=="")then return;end; local od_duzej=parametry_modul.CzyTak(frame.args["od dużej"]); jedna_pozycja=od_duzej and mw.getContentLanguage():ucfirst(jedna_pozycja) or jedna_pozycja; local iter=mw.text.gsplit(zmienna_z_argumentami,";",true); local tablica={}; for pozycja in iter do pozycja=parametry_modul["Odstępy"]{[1]=pozycja,[2]="tak"}; if(pozycja~="")then tablica[od_duzej and mw.getContentLanguage():ucfirst(pozycja) or pozycja]=true; end; end; return (tablica[jedna_pozycja] and "tak" or nil); end; return p; k1re6yu9fqm8g7hd4iwunw8195j526b Szablon:Szablony ramek formułujące kod 10 55251 559367 528130 2026-10-15T03:58:21Z Persino 2851 559367 wikitext text/x-wiki {{Navbox ze zwijanymi grupami | nazwa = Szablony ramek formułujące kod | zwijanie = rozwinięte | tytuł = Ta tabelka przedstawia wszystkie rodzaje szablonów ramek formułujące kod HTML lub wikikod, lub nimi się posługujące. | opis1 = | spis1 = {{Navbox | tytuł = Szablony oparte na tagach w znacznikach | zwijanie = {{#switch:{{ROOTPAGENAME}}|ElastycznyWiersz|ElastycznyWiersz2|ElastycznaKolumna|ElastycznaKolumna2|ElastycznyZawijanyWiersz|ElastycznyZawijanyWiersz2 |Znacznik|Znacznik start|Znacznik koniec|Div|Div start|Div koniec|Pre|PreBody|PreBody2|PreLine|PreLineBody|Pre start|Pre koniec|Code|Kbd|Tt|Sub|Sup|Su|P|Span|Font|Bdo|Small|Big|Strong|Dd|Dl|Br|Hr|Center|Indeksuj|Kotwica|Id|OverflowWiersz|BrClear|-|SpanClear|HrClear|DivClear|DivLinia=rozwinięte|#default=zwinięte}} | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Szablony generujące kod FlexBox | spis1 = {{s|ElastycznyWiersz}}{{•}} {{s|ElastycznyWiersz2}}{{•}} {{s|ElastycznaKolumna}}{{•}} {{s|ElastycznaKolumna2}}{{•}} {{s|ElastycznyZawijanyWiersz}}{{•}} {{s|ElastycznyZawijanyWiersz2}} | opis2 = Szablony znaczników | spis2 = {{Nowrap|{{s|Znacznik}} (kombajn)}}{{•}} {{Nowrap|{{s|Znacznik start}} (kombajn otwierający)}}{{•}} {{Nowrap|{{s|Znacznik koniec}} (kombajn zamykający)}}{{•}} {{Nowrap|{{s|Div}} (oparty na divie)}}{{•}} {{Nowrap|{{s|Div start}} (oparty na divie otwierającym)}}{{•}} {{Nowrap|{{s|Div koniec}} (oparty na divie zamykającym)}}{{•}} {{s|Pre}}{{•}} {{s|PreBody}}{{•}} {{s|PreBody2}}{{•}} {{s|PreLine}}{{•}} {{s|PreLineBody}}{{•}} {{s|Pre start}}{{•}} {{s|Pre koniec}}{{•}} {{s|Code}}{{•}} {{s|Kbd}}{{•}} {{s|Tt}}{{•}} {{s|Sub}}{{•}} {{s|Sup}}{{•}} {{s|Su}}{{•}} {{s|P}}{{•}} {{s|Span}}{{•}} {{s|Font}}{{•}} {{s|Bdo}}{{•}} {{s|Small}}{{•}} {{s|Big}}{{•}} {{s|Strong}}{{•}} {{s|Dd}}{{•}} {{s|Dl}}{{•}} {{s|Br}}{{•}} {{s|Hr}}{{•}} {{s|Center}} | opis3 = Szablony kotwice | spis3 = {{s|Indeksuj}}{{•}} {{s|Kotwica}}{{•}} {{s|Id}} | opis4 = Ramki pływające | spis4 = {{s|OverflowWiersz}} | opis5 = Opływanie elementów HTML | spis5 = {{s|BrClear}}{{•}} {{Nowrap|{{s|-}} (przekierowanie do {{s|BrClear}})}}{{•}} {{Nowrap|{{s|Koniec grafiki}} (przekierowanie do {{s|BrClear}})}}{{•}} {{s|SpanClear}}{{•}} {{s|HrClear}}{{•}} {{s|DivClear}} | opis6 = Ramki ustalone | spis6 = {{s|DivLinia}} }} | opis2 = | spis2 = {{Navbox | tytuł = Szablony wyświetlające kod obsługiwany przez system MediaWiki | zwijanie = {{#switch:{{ROOTPAGENAME}}|Parametr|Tag|S|M|L|Z|Wikikod|PreWikikod|PreLineWikikod|ŹródłoWikikod|Nowiki|PreNowiki|PreLineNowiki|ŹródłoNowiki=rozwinięte|#default=zwinięte}} | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Szablony pokazujące kod MediaWiki | spis1 = {{s|Parametr}}{{•}} {{s|Tag}}{{•}} {{s|S}}{{•}} {{s|M}}{{•}} {{s|L}}{{•}} {{s|Z}}{{•}} {{s|Wikikod}}{{•}} {{s|PreWikikod}}{{•}} {{s|PreLineWikikod}}{{•}} {{s|ŹródłoWikikod}} | opis2 = Szablony do wyświetlania czystego wikikodu | spis2 = {{s|Nowiki}}{{•}} {{s|PreNowiki}}{{•}} {{s|PreLineNowiki}}{{•}} {{s|ŹródłoNowiki}} }} | opis3 = | spis3 = {{Navbox | tytuł = Szablony niepudełkowe tworzące czysty kod oparte na mechanizmie MediaWiki lub HTML | zwijanie = {{#switch:{{ROOTPAGENAME}}|KodHTMLZnaku|KodyHTMLZnakówWikiCiągu|Kategoria|Kategorie|Zmiany w linkujących=rozwinięte|#default=zwinięte}} | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Szablony zamieniające znak w kod HTML w ramce | spis1 = {{s|KodHTMLZnaku}}{{•}} {{s|KodyHTMLZnakówWikiCiągu}} | opis2 = Szablony zwracania kategorii | spis2 = {{Nowrap|{{s|Kategoria}} (jedna kategoria)}}{{•}} {{Nowrap|{{s|Kategorie}} (wiele kategorii)}} | opis3 = Szablony ramek linkujących | spis3 = {{s|Zmiany w linkujących}} }} | opis4 = | spis4 = {{Navbox | tytuł = Szablony generujące pudełka oparte na wikikodzie lub kodzie HTML | zwijanie = {{#switch:{{ROOTPAGENAME}}|Tytuł|Komórka|Wiersz|Tabelka|Tabela|GridTabela|Tabela nawigacyjna|Menu listy pozycji kategorii|Menu listy kategorii portali|Menu listy kategorii portali|Menu listy kategorii poziomu|Menu listy kategorii statusu|Menu listy kategorii tematycznych|Menu listy kategorii Światy dla dzieci|Blok tabelowy|Blok tabelowy/Zamknij|Blok ramkowy|Blok ramkowy/Zamknij|Pudełko ramkowe|Pudełko ramkowe 1|Pudełko ramkowe 2|Pudełko ramkowe 3|Pudełko ramkowe 4|Pudełko ramkowe 5|Pudełko komórkowe|Pudełko komórkowe 1|Pudełko komórkowe 2|Pudełko komórkowe 3|Pudełko komórkowe 4|Pudełko komórkowe 5|OpakujKategorie|OpakujKategorieZeSortowaniem=rozwinięte|#default=zwinięte}} | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Szablony tabeli | spis1 = {{s|Tytuł}}{{•}} {{s|Komórka}}{{•}} {{s|Wiersz}}{{•}} {{s|Tabelka}}{{•}} {{s|Tabela}}{{•}} {{s|GridTabela}}{{•}} {{s|Tabela nawigacyjna}}{{•}} {{s|Menu listy pozycji kategorii}}{{•}} {{s|Menu listy kategorii portali}}{{•}} {{s|Menu listy kategorii poziomu}}{{•}} {{s|Menu listy kategorii statusu}}{{•}} {{s|Menu listy kategorii tematycznych}}{{•}} {{s|Menu listy kategorii Światy dla dzieci}} | opis2 = Pudełka bloków | spis2 = {{Nowrap|{{s|Blok tabelowy}} (szablon otwierający)}}{{•}} {{s|Blok tabelowy/Zamknij}}&nbsp;(szablon zamykający){{•}} {{Nowrap|{{s|Blok ramkowy}} (szablon otwierający)}}{{•}} {{s|Blok ramkowy/Zamknij}}&nbsp;(szablon zamykający) | opis3 = Szablony pudełek opartych na warstwach | spis3 = {{Nowrap|{{s|Pudełko ramkowe}} (szablon ogólny)}}{{•}} {{s|Pudełko ramkowe 1}}{{•}} {{s|Pudełko ramkowe 2}}{{•}} {{s|Pudełko ramkowe 3}}{{•}} {{s|Pudełko ramkowe 4}}{{•}} {{s|Pudełko ramkowe 5}} | opis4 = Szablony pudełek opartych na tabelkach | spis4 = {{Nowrap|{{s|Pudełko komórkowe}} (szablon ogólny)}}{{•}} {{s|Pudełko komórkowe 1}}{{•}} {{s|Pudełko komórkowe 2}}{{•}} {{s|Pudełko komórkowe 3}}{{•}} {{s|Pudełko komórkowe 4}}{{•}} {{s|Pudełko komórkowe 5}} | opis5 = Szablony ramek opakowujących kategorie | spis5 = {{s|OpakujKategorie}}{{•}} {{s|OpakujKategorieZeSortowaniem}} }} | opis5 = | spis5 = {{Navbox | tytuł = Szablony liczb | zwijanie = {{#switch:{{ROOTPAGENAME}}|Łączna liczba stron w kategoriach|Rekurencyjna łączna liczba stron w kategoriach|Forma wyrażenia po liczbie|Forma wyrazu jednostka po liczbie|Forma wyrazu strona po liczbie|Forma wyrazu artykuł po liczbie|Forma wyrazu podręcznik po liczbie|Forma wyrazu książka po liczbie|Forma wyrazu broszura po liczbie|Forma wyrazu publikacja po liczbie|Forma wyrazu plik po liczbie=rozwinięte|#default=zwinięte}} | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Szablony liczenia stron w podkategoriach | spis1 = {{s|Łączna liczba stron w kategoriach}}{{•}} {{s|Rekurencyjna łączna liczba stron w kategoriach}} | opis2 = Szablony form wyrażeń po liczbie | spis2 = {{Nowrap|{{s|Forma wyrażenia po liczbie}} (kombajn)}}{{•}} {{s|Forma wyrazu jednostka po liczbie}}{{•}} {{s|Forma wyrazu strona po liczbie}}{{•}} {{s|Forma wyrazu artykuł po liczbie}}{{•}} {{s|Forma wyrazu podręcznik po liczbie}}{{•}} {{s|Forma wyrazu książka po liczbie}}{{•}} {{s|Forma wyrazu broszura po liczbie}}{{•}} {{s|Forma wyrazu publikacja po liczbie}}{{•}} {{s|Forma wyrazu plik po liczbie}} }} | opis6 = | spis6 = {{Navbox | tytuł = Funkcje języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}} uruchamiane w postaci pewnej ramki generujące kod | zwijanie = zwinięte | zależnie = <includeonly>tak</includeonly> | podgrupa | opis1 = Funkcje modułu ramek {{m|Ramka}} | spis1 = {{m|Ramka|Szablon}}{{•}} {{m|Ramka|Moduł}}{{•}} {{m|Ramka|Parser}}{{•}} {{m|Ramka|Powtarzaj}}{{•}} {{m|Ramka|PowtarzajOdDo}}{{•}} {{m|Ramka|PrzetwarzajIterującCiąg}}{{•}} {{m|Ramka|Rozwiń}} }} | dół = Ten szablon nawigacyjny pokazuje szablony tworzące kod HTML lub wikikod, jeżeli nie używa do tego języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}}, albo generujące, jeżeli używa do tego tego języka, bądź szablony posługujące się wikikodem na stronach. | kategoria = Wikibooks }} 69ro9lst6oe42myldu0o3l222vy4ujh Szablon:Tabela/opis 10 56587 559365 542424 2026-10-15T03:56:00Z Persino 2851 /* Zobacz też */ 559365 wikitext text/x-wiki {{Podstrona dokumentacji}} {{Lua|Module:Tabela}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon generuje wiki-tabelkę na podstawie jego parametrów. Szablon znacznie ułatwia tworzenie wiki-tabel za pomocą wysokopoziomowego interfejsu, czyli tego szablonu. On tworzy niskopoziomową wiki-tabelkę na podstawie parametrów tego szablonu. Zwraca uwagę, czy jakieś parametry nie zostały podane, czy są prawidłowe. == Opis parametrów == ; Opakowanie ramkowe tabeli * {{Code|pozycja}} - wartości: {{Tt|prawo}}, {{Tt|lewo}} i {{Tt|centruj}}, poniższe parametry mogą być jedynie używane z tym argumentem, * {{Code|id op}} - unikalny identyfikator {{Code|id}}, w całym {{Code|DOM}} w HTML, opakowania tabelki, * {{Code|klasa op}} - klasa całości opakowania tabelki, kaskadowych arkuszy stylów CSS, * {{Code|styl op}} - styl CSS, opakowania tabelki, właściwości wraz z ich wartościami. ; Tabela - liczba wierszy i kolumn * {{Code|liczba wierszy}} - liczba wierszy, * {{Code|liczba kolumn}} - liczba kolumn. ; Tabela - ustawienia (parametry) całej tabeli * {{Code|id}} - unikalny identyfikator {{Code|id}}, w całym {{Code|DOM}} w HTML, całej tabelki, * {{Code|klasa}} - klasa całości tabeli, kaskadowych arkuszy stylów CSS, * {{Code|styl}} - styl CSS, całej tabeli, właściwości wraz z ich wartościami, * {{Code|atrybuty}} - atrybuty tabelki. ; Tabela - tytuł * {{Code|id tytułu}} - id tytułu, * {{Code|klasa tytułu}} - klasa tytułu, * {{Code|styl tytułu}} - styl tytułu, * {{Code|opcje tytułu}} - opcje tytułu. ;; Zawartość tytułu * {{Code|tytuł}} - tytuł tabeli. ; Tabela - nagłówek (parametry) * {{Code|id nagłówka}} - id, głównego wiersza nagłówka tabeli, na jego górze, kaskadowych arkuszy stylów CSS, * {{Code|klasa nagłówka}} - klasa, głównego wiersza nagłówka tabeli, na jego górze, kaskadowych arkuszy stylów CSS, * {{Code|styl nagłówka}} - styl, głównego wiersza nagłówków tabeli, na jego górze, CSS, tzn. właściwości i ich wartości, * {{Code|opcje nagłówka}} - opcje, głównego wiersza nagłówków tabeli, na jego górze, CSS, tzn. właściwości i ich wartości. ; Tabela - komórki nagłówka tabeli (parametry) * {{Code|id 1}}, {{Code|...}}, {{Code|id N}} - id nagłówka tabeli, głównego wiersza nas jego górze, * {{Code|klasa 1}}, {{Code|...}}, {{Code|klasa N}} - klasa nagłówka tabeli, głównego wiersza nas jego górze, * {{Code|styl 1}}, {{Code|...}}, {{Code|styl N}} - styl nagłówka tabeli, głównego wiersza nas jego górze, * {{Code|opcje 1}}, {{Code|...}}, {{Code|opcje N}} - opcje nagłówka tabeli, głównego wiersza nas jego górze, * {{Code|kolumny 1}}, {{Code|...}}, {{Code|kolumny N}} - informacje, mówiące ile kolumn nagłówka, w tabeli, ma scalić. ;; Zawartość komórek nagłówka * {{Code|nagłówek 1}}, {{Code|...}}, {{Code|nagłówek N}} - zawartość nagłówków tabeli, głównego wiersza nagłówków na jego górze. ; Tabela - parametry wierszy * {{Code|id wiersza 1}}, {{Code|id wiersza 2}}, {{Code|...}}, {{Code|id wiersza i}}, {{Code|...}}, {{Code|id wiersza M}} - id poszczególnych wierszy komórek tabeli, * {{Code|klasa wiersza 1}}, {{Code|klasa wiersza 2}}, {{Code|...}}, {{Code|klasa wiersza i}}, {{Code|...}}, {{Code|klasa wiersza M}} - klasa poszczególnych wierszy komórek tabeli, * {{Code|styl wiersza 1}}, {{Code|styl wiersza 2}}, {{Code|...}}, {{Code|styl wiersza i}}, {{Code|...}}, {{Code|styl wiersza M}} - styl poszczególnych wierszy komórek tabeli, * {{Code|opcje wiersza 1}}, {{Code|opcje wiersza 2}}, {{Code|...}}, {{Code|opcje wiersza i}}, {{Code|...}}, {{Code|opcje wiersza M}} - opcje poszczególnych wierszy komórek tabeli. ; Tabela - scalanie wierszy i kolumn * {{Code|wiersze 1_1}}, {{Code|wiersze 1_2}}, {{Code|...}}, {{Code|wiesze i_j}}, {{Code|...}}, {{Code|wiersze M_N}} - informacja, ile wierszy ma scalić dla danej komórki, * {{Code|kolumny 1_1}}, {{Code|kolumny 1_2}}, {{Code|...}}, {{Code|kolumny i_j}}, {{Code|...}}, {{Code|kolumny M_N}} - informacja, ile kolumn ma scalić dla danej komórki, * {{Code|scal 1_1}}, {{Code|scal 1_2}}, {{Code|...}}, {{Code|scal i_j}}, {{Code|...}}, {{Code|scal M_N}} - informacja, ile wierszy i kolumn ma scalić dla danej komórki. ; Tabela - ustawienia wierszy i kolumn * {{Code|id 1_1}}, {{Code|id 1_2}}, {{Code|...}}, {{Code|id i_j}}, {{Code|...}}, {{Code|id M_N}} - id poszczególnych komórek tabeli, * {{Code|klasa 1_1}}, {{Code|klasa 1_2}}, {{Code|...}}, {{Code|klasa i_j}}, {{Code|...}}, {{Code|klasa M_N}} - klasa poszczególnych komórek tabeli, * {{Code|styl 1_1}}, {{Code|styl 1_2}}, {{Code|...}}, {{Code|styl i_j}}, {{Code|...}}, {{Code|styl M_N}} - styl poszczególnych komórek tabeli, * {{Code|opcje 1_1}}, {{Code|opcje 1_2}}, {{Code|...}}, {{Code|opcje i_j}}, {{Code|...}}, {{Code|opcje M_N}} - opcje poszczególnych komórek tabeli. ; Kreska pionowa * {{Code|bez pionu 1_1}}, {{Code|bez pionu 1_2}}, {{Code|...}}, {{Code|bez pionu i_j}}, {{Code|...}}, {{Code|bez pionu M_N}} - po parametrach scalania i ustawiania komórek po spacji nie stawia kreski pionowej. ;; Tabela - zawartość wierszy i kolumn * {{Code|komórka 1_1}}, {{Code|komórka 1_2}}, {{Code|...}}, {{Code|komórka i_j}}, {{Code|...}}, {{Code|komórka M_N}} - zawartość komórki tabeli, * {{Code|nagłówek 1_1}}, {{Code|nagłówek 1_2}}, {{Code|...}}, {{Code|nagłówek i_j}}, {{Code|...}}, {{Code|nagłówek M_N}} - gdy wartość niepusta, to traktuje komórkę jako nagłówek, w przeciwnym wypadku, ona oznaczana jest jako zwykła komórka. ---- * {{Code|M}} - numer wiersza, a {{Code|N}} - numer kolumny. Jeżeli na komórce włączyliśmy opcje {{Code|colspan}} lub {{Code|rowspan}} za pomocą parametrów opcji {{Code|opcje i_j}} lub parametrów typu {{Code|wiersze i_j}} lub {{Code|kolumny i_j}} albo za pomocą {{Code|scal i_j}} bądź w przypadku nagłówka za pomocą opcji {{Code|opcje i}} lub parametrów typu {{Code|kolumny i}}, to nazwa parametru pochodzi od tego skąd zaczynaliśmy scalanie wierszy i kolumn, nawet komórek nagłówka. == Przykład == ; Przykład pierwszy {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} wikitable | atrybuty {{=}} cellspacing{{=}}0 cellpadding{{=}}3 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = wikitable | atrybuty = cellspacing=0 cellpadding=3 | liczba wierszy = 6 | liczba kolumn = 4 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład pierwszy|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = wikitable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład drugi {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} wikitable | atrybuty {{=}} cellspacing{{=}}0 cellpadding{{=}}3 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | opcje 1 {{=}} width{{=}}25% | nagłówek 1 {{=}} Nagłówek 1 | opcje 2 {{=}} width{{=}}25% | nagłówek 2 {{=}} Nagłówek 2 | opcje 3 {{=}} width{{=}}25% | nagłówek 3 {{=}} Nagłówek 3 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = wikitable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład drugi|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = wikitable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład trzeci {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} | atrybuty {{=}} cellspacing{{=}}3 cellpadding{{=}}3 border{{=}}"1" | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | styl nagłówka {{=}} background-color:pink; | opcje 1 {{=}} width{{=}}75% | kolumny 1 {{=}} 3 | nagłówek 1 {{=}} Nagłówek 1 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | styl 4 {{=}} background-color:red; | liczba wierszy {{=}} 7 | liczba kolumn {{=}} 4 | kolumny 1_1 {{=}} 2 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 {{=}} 2 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 {{=}} 3 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | scal 3_1 {{=}} 3 2 | styl 3_1 {{=}} color:red;background-color:yellow;text-align:right; | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | opcje 5_3 {{=}} colspan{{=}}"2" rowspan{{=}}"1" | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 {{=}} 3 | wiersze 6_1 {{=}} 2 | nagłówek 6_1 {{=}} tak | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 {{=}} color:blue; | styl 7_4 {{=}} background-color:grey; | komórka 7_4 {{=}} Komórka - wiersz 7 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = | atrybuty = cellspacing=3 cellpadding=3 border="1" | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład trzeci|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = | atrybuty = cellspacing=3 cellpadding=3 border="1" | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} }} }} == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": {}, "description": "Szablon generuje tabelę w formacie wiki-kodu w wiki-tekście. Tabelkę edytuje się bezpośrednio w wiki-kodzie, a nie za pomocą wizualnego edytora, ze względu na ogromną liczbę komórek do uwzględnienia." }</templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek generujące wikikod | Szablony formułujące tabele | Szablony specjalne }} </includeonly> 4ut69p5pfi6pybt2diyumauqopvv8sv Szablon:Tabelka/opis 10 56637 559371 499583 2026-10-15T04:07:34Z Persino 2851 /* Zobacz też */ 559371 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == Szablon pomocniczy, służący do wstawiania komórki do tabeli. == Opis parametrów == ; Parametry: * {{Code|1}} - tabela w formacie wikikodu, * {{Code|opcje}} lub {{Code|2}} - opcje tabelki, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}, * {{Code|id}} - identyfikator tabelki, * {{Code|styl}} - style CSS - właściwości i ich wartości, * {{Code|klasa}} - reguły CSS, do klasy, kaskadowych arkuszy stylów. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Kolejne wiersze.", "type": "string", "required": true }, "opcje": { "aliases": [ "2" ], "description": "Opcje, inne niż: id, style i class.", "type": "string", "suggested": true }, "id": { "description": "Identyfikator komórki.", "type": "string" }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły CSS, do klasy, kaskadowych arkuszy stylów.", "type": "string" } }, "description": "Szablon służy do wstawiania tabelek do wikitekstu." } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek tworzące wikikod | Szablony formułujące tabele | Szablony formułujące elementy tabelek | Szablony specjalne }} </includeonly> kfhca5pummsdp1tval9lb4jvrwogt6u Szablon:Tytuł/opis 10 59857 559368 499581 2026-10-15T04:05:23Z Persino 2851 /* Zobacz też */ 559368 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE I INTERWIKI NA DOLE STRONY --> == Użycie == Szablon pomocniczy, służący do wstawiania tytułu tabeli. == Opis parametrów == ; Parametry: * {{Code|1}} - tytuł tabeli, * {{Code|opcje}} lub {{Code|2}} - opcje tytułu tabeli, inne niż: {{Code|id}}, {{Code|style}} i {{Code|class}}, * {{Code|id}} - identyfikator tytułu tabeli, * {{Code|styl}} - style CSS - właściwości i ich wartości, * {{Code|klasa}} - reguły CSS, do klasy, kaskadowych arkuszy stylów. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { "1": { "description": "Tytuł tabeli.", "type": "string", "required": true }, "opcje": { "aliases": [ "2" ], "description": "Opcje, inne niż: id, style i class.", "type": "string", "suggested": true }, "id": { "description": "Identyfikator tytułu tabeli.", "type": "string" }, "styl": { "description": "Styl CSS - właściwości i ich wartości.", "type": "string" }, "klasa": { "description": "Reguły CSS, do klasy, kaskadowych arkuszy stylów.", "type": "string" } }, "description": "Szablon służy do wstawiania tytułu tabeli do szablonu tabeli {{Tabelka}}." } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE I INTERWIKI PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek tworzące tabele | Szablony ramek tworzące wikikod | Szablony formułujące tabele | Szablony formułujące elementy tabelek | Szablony specjalne }} </includeonly> e8tvlva6jwdl0ewykn4qjuj2kqref7m Wikibooks:Mechanizm MediaWiki 4 60755 559348 556172 2026-10-15T01:56:36Z Persino 2851 /* Moduły {{lpg|Lua}} w {{lpr|Lua|Scribunto}} */ 559348 wikitext text/x-wiki <noinclude><!-- -->{{StandardowaStronaStart | nagłówek = {{Rozdział|Pomoc Wikibooks|Mechanizm MediaWiki - Wstęp}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Rozdział|Koniec}} }}</noinclude>{{Spis treści}} Przedstawimy tutaj problemy z mechanizmem MediaWiki, poczynając od opisu szablonów i modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, w zastosowaniach również do wikikodu, na polskim {{NS|pk=mj|w=tak|l=tak}}. == Szablony == Przedstawiamy tutaj w dwóch formach opis wszystkich szablonów, dostępnych na polskim {{NS|pk=mj|l=tak}}, w postaci listy. === Opis wizualny === * {{lr|Szablony}} - strona główna zbioru wszystkich szablonów, opisu ich, wizualnego i opisowego. ** {{lru|Szablony/Ogólne}}, {{lru|Szablony/Informacje}}, {{lru|Szablony/PrzypisStrona}}, {{lru|Szablony/Podręcznikowe}}, {{lru|Szablony/Książkowe}}, {{lru|Szablony/Tekst}}, {{lru|Szablony/Zawartość}}, {{lru|Szablony/Nagłówki}}, {{lru|Szablony/Przekierowania}}, {{lru|Szablony/Języki}}, {{lru|Szablony/Liczby}}, {{lru|Szablony/Kategorie}}, {{lru|Szablony/Opisy}}, {{lru|Szablony/Znaczniki}}, {{lru|Szablony/Szablony opływania}}, {{lru|Szablony/Stronicowe}}, {{lru|Szablony/Kontenerowe}}, {{lru|Szablony/Elastyczne}}, {{lr|Szablony/Infoboksy/Prolog|Infoboksy - Prolog}}, {{lr|Szablony/Infoboksy/Tom I|Infoboksy - Tom I}}, {{lr|Szablony/Infoboksy/Tom II|Infoboksy - Tom II}}, {{lr|Szablony/Infoboksy/Tom III|Infoboksy - Tom III}}, {{lr|Szablony/Infoboksy/Tom IV|Infoboksy - Tom IV}}, {{lr|Szablony/Infoboksy/Tom V|Infoboksy - Tom V}}, {{lr|Szablony/Infoboksy/Tom VI|Infoboksy - Tom VI}}, {{lr|Szablony/Infoboksy/Komponenty|Infoboksy - Komponenty}}, {{lr|Szablony/Infoboksy/Komponenty (organizmy żywe)|Infoboksy - Komponenty (organizmy żywe)}}, {{lru|Szablony/Porządkowe}}, {{lru|Szablony/Źródła artykułów}}, {{lru|Szablony/Linki}}, {{lru|Szablony/Linki inteligentne}}, {{lru|Szablony/Do usunięcia}}, {{lru|Szablony/Nawigacja}}, {{lru|Szablony/Media}}, {{lru|Szablony/Grafika}}, {{lru|Szablony/Licencjonowanie}}, {{lru|Szablony/Techniczne}}, {{lru|Szablony/Wikipedysta}}, {{lru|Szablony/Dyskusja Wikipedysty}}, {{lru|Szablony/MediaWiki}} i {{lru|Szablony/Systemowe}}. === Opis tekstowy === * {{lp|Spis treści}} - spis treści pomocy, nie tylko szablonów, czy modułów. ** {{lp|Spis treści/Szablony/Tom I|Szablony - Tom I}}, {{lp|Spis treści/Szablony/Tom II|Szablony - Tom II}}, {{lp|Spis treści/Szablony/Tom III|Szablony - Tom III}} i {{lp|Spis treści/Szablony/Tom IV|Szablony - Tom IV}}. == Moduły {{lpg|Lua}} w {{lpr|Lua|Scribunto}} == {{Osobny artykuł|{{Ns:Project}}:Moduły|obserwowane=Moduły}} * Moduły podstawowe ** {{m|Parametry}} ({{lru|Moduły/Parametry}}), {{m|Html}} ({{lru|Moduły/Html}}), {{m|Nazwy}} ({{lru|Moduły/Nazwy}}), {{m|Książkowe}} ({{lru|Moduły/Książkowe}}), {{m|Pudełko}} ({{lru|Moduły/Pudełko}}), {{m|Ramka}} ({{lru|Moduły/Ramka}}), {{m|Specjalne}} ({{lru|Moduły/Specjalne}}), {{m|StronicowyParser}} ({{lru|Moduły/StronicowyParser}}), {{m|Szeregi}} ({{lru|Moduły/Szeregi}}), {{m|Szablonowe}} ({{lru|Moduły/Szablonowe}}), {{m|Techniczne}} ({{lru|Moduły/Techniczne}}), {{m|Wiki}} ({{lru|Moduły/Wiki}}). * Moduły standardowe ** {{m|Kategorie}} ({{lru|Moduły/Kategorie}}), {{m|Linki}} ({{lru|Moduły/Linki}}), {{m|Łatki}} ({{lru|Moduły/Łatki}}), {{m|Skrót}} ({{lru|Moduły/Skrót}}), {{m|Sprawdź}} ({{lru|Moduły/Sprawdź}}), {{m|ŹródłoLua}} ({{lru|Moduły/ŹródłoLua}}). * Specyficzne ** {{m|Liczby}} ({{lru|Moduły/Liczby}}). * Specjalistyczne ** {{m|GridTabela}} ({{lru|Moduły/GridTabela}}), {{m|Tabela}} ({{lru|Moduły/Tabela}}), {{m|Sekcja referencyjna}} ({{lru|Moduły/Sekcja referencyjna}}), {{m|Licencja}} ({{lru|Moduły/Licencja}}), {{m|Przypisy}} ({{lru|Moduły/Przypisy}}), {{m|Dopracować}} ({{lru|Moduły/Dopracować}}). {{BrClear}} <noinclude><!-- -->{{StandardowaStronaKoniec}}<!-- -->{{Kategoria|Pomoc - Problemy wywołań mechanizmu MediaWiki|sortuj spacją=tak}}<!-- --></noinclude> pktxinq0qfvi5q4jrdnqjp09p36lm13 Wikibooks:Moduły 4 60758 559347 557747 2026-10-15T01:52:45Z Persino 2851 /* Spis treści */ 559347 wikitext text/x-wiki <noinclude><!-- -->{{StandardowaStronaStart | nagłówek = {{Rozdział|Pomoc Wikibooks|Mechanizm MediaWiki - Moduły}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Rozdział|Koniec}} }}</noinclude>{{Spis treści|limit=3}} {{Dopracować|język|styl|wikikod|format|Po ukończeniu opisu wszystkich modułów zostanie sprawdzona jego merytoryczna poprawność.}} Strona zawiera opis technologii, programowania pomocniczego wikikodu i poszczególnych modułów, bez jego pod. To jest ogólny spis i opis wszystkich podstawowych, i nie tylko, modułów, a w poszczególnych podmodułach, ewentualnie, możemy wejść do dalszych spisów, tzn. do ich, tzw. tomów, itp., lub do bezpośredniego opisu poszczególnych funkcji. == Technologia modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}} == Przedstawimy tu technologię programowania języka pomocniczego wikikodu '''Mechanizmu MediaWiki'''. === Wywołania === Parametry podobnie się pisze w wikikodzie i wywołuje jak szablony, tylko z tą różnicą, że w nazwie szablonu jest na samym początku: {{Code|#invoke:}}, co po nim następuje w niej nazwa modułu bez przedrostka {{Code|{{Np|Module|link=tak}}:}}, a pierwszy parametr, który nie jest liczony, jako zmienna, tylko następna z kolei, jest nazwą funkcji w tablicy eksportu. Wtedy jest wywoływany moduł, a w niej ściśle określona funkcja z parametrami jej ramki. Parametrami funkcji też mogą być parametry szablonu rodzica, w której wywoływana jest ta ona. === Parametry === Moduły wywoływa się przez, np. formę: {{Tt|{{m|'''Nazwa modułu'''|'''Nazwa funkcji'''}}}}, lub przez: {{Tt|{{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|Parametr 1|Parametr 2|...}}}}, albo: {{Tt|{{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|Parametr 1 {{=}} Wartość 1|Parametr 2 {{=}} Wartość 2|...}}}}, lub w postaci mieszanej: {{Tt|{{m|'''Nazwa modułu'''|'''Nazwa funkcji'''|...|Parametr n {{=}} Wartość n|...|Parametr m|...}}}}, itp.. Schemat {{ZobaczTeż|schemat parametrów funkcji}} przedstawiania parametrów w zmiennej: {{Code|frame}}, w funkcjach, w dokumentacji, mogące być uruchamiane w postaci ramki, ale nie tylko, bo również jako funkcje biblioteczne, a ten parametr może być tablicą, albo łańcuchem znakowym, wytłumaczenie: ==== Możliwości wyszukiwania w sposób ogólny na przeróżne sposoby parametrów w jednej funkcji - ważność parametrów ==== Patrz: opis funkcji parametrów, one są opisane na stronie: {{sr|Parametry/Tom XIV|Funkcje parametrów - Tom XIV}}, najczęściej używana funkcja stamtąd jest: {{LinkŚródtytuł|p.PobierzParametr|Parametry/Tom XIV}}, a oto jej streszczenie: ; Parametry podane w tabelce ramki{{dk}} * Jeżeli jest uruchomiony parametr w ramce dziecka: {{Parametr|wyspecjalizowana|tak}}, wtedy są wyszukiwane parametry dziecka: ** Jeżeli funkcja znalazła tablicę argumentów ramki: {{Code|frame.args}}, to wyszukuje w niej parametry o kluczach podanych w opisie parametrów. * Parametry rodzica przy nieustawionym niepustym parametrze wyspecjalizowania, w ramce dziecka, wtedy są wyszukiwane parametry rodzica (szablonu): ** Podobnie, jak dla dziecka, parametry są wyszukiwane, ale już w tablicy: {{Code|frame:getParent().args}} ({{LzLua|frame:getParent}}). * Lub te same tak, ale w tabelce, według {{Code|frame}}. ; Parametr będący łańcuchem znakowym{{dk}} * Gdy ramka jest jednak łańcuchem znakowym, zwracana jej zawartość tylko za pierwszym razem, przy pierwszym parametrze, a przy drugim razem, już: {{Code|nil}}. ; Klucze parametrów lub gdy {{Code|frame}} będzie łańcuchem znakowym{{dk}} * Nazwy parametrów są o kluczach w ramkach w trzech możliwych tablicach parametrów, funkcji w ramce: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, lub szablonu, albo w zwykłej tablicy, są takie same. * Parametry ramki funkcji w tych możliwych przedstawieniach, najczęściej są o kluczach: {{Code|tekst}}, {{Code|html}}, czy {{Code|1}}, bądź {{Code|url}}. * Ważność parametrów, czyli kolejność ważności parametrów ramki jest, w jakiej kolejności są brane parametry, na wypadek, gdyby dwie, lub więcej, zmienne oznaczały to samo, w jakim są te one przedstawione, albo na wypadek, gdyby: {{Code|frame}}, było łańcuchem znakowym. Te ważności są przedstawione w tabelkach: {{s|OpisParametrów}}, według odpowiedniej kolejności, przy opisie danej funkcji. W przypadek ważności parametrów przedstawia kod: <syntaxhighlight lang="lua"> function p.URLStrona(frame) local parametry_modul=require("Module:Parametry"); local PobierzParametr=parametry_modul.PobierzParametr(frame); local url=PobierzParametr("url") or PobierzParametr(1); </syntaxhighlight> Widzimy, że najpierw brana jest zmienna {{Code|url}}, a jeżeli ona nie istnieje, to {{Code|1}}, a jeżeli oba istnieją, to ta pierwsza. == Spis treści == {{Osobny artykuł|Wikibooks:Mechanizm MediaWiki|obserwowane=Mechanizmy MediaWiki}} {{Kolumny|2|2= === Moduły podstawowe === * {{lru|Moduły/Parametry}}{{r|Spis treści}} - na operacjach z parametrami funkcji języka {{lpg|Lua}} w {{lpr|Lua|Scribunto}}. * {{lru|Moduły/Html}} - na operacjach specjalnych z tekstami zawierający znaki HTML i na adresach URL. * {{lru|Moduły/Nazwy}}{{r|Spis treści}} - operujących na nazwach MediaWiki projektu. * {{lru|Moduły/Książkowe}} - na nazwach zawierający specjalne znaki HTML i też odkodowanie ich z nich. * {{lru|Moduły/Pudełko}}{{r|Spis treści}} - opakowanych wewnątrz wikikodu w szablony, którego wynikiem są różne nazwy. * {{lru|Moduły/Ramka}} - ramkowanych, w ramach których są wykonywane pewne operacje. * {{lru|Moduły/Specjalne}} - do specjalnych zastosowań operacji na obiektach. * {{lru|Moduły/StronicowyParser}}{{r|Spis treści}} - stronicowego parsera do numeracji obiektów i odniesień do nich, także operowanie na tak zebranych danych. * {{lru|Moduły/Szeregi}} - do obsługi na tekstach i kolejnych liniach w tekście, a także do wyszukań tam elementów spełniające pewne kryteria funkcyjne. * {{lru|Moduły/Szablonowe}} - służących do parsowania tekstu nawet z podanych stron. * {{lru|Moduły/Techniczne}} - do operacji technicznych na tekście. * {{lru|Moduły/Wiki}} - robiący czynności na obiektach wikidanych. === Moduły standardowe === * {{lru|Moduły/Kategorie}} - operujących na kategoriach (w przestrzeni {{Np|Category|link=tak}}) lub z tekstem ze zgłoszonymi tymi kategoriami. * {{lru|Moduły/Linki}} - obsługujących różnego rodzaju linki. * {{lru|Moduły/Łatki}} - łatające braki w mechanizmie MediaWiki. * {{lru|Moduły/Skrót}} - łatające szablony: {{s|Kategoria}} i {{s|Kategorie}}, do wywołań w innych szablonach. * {{lru|Moduły/Strony}} - funkcje do użytku przez walidator: {{Code|{{m|Sprawdź|Parametry}}}}. * {{lru|Moduły/Sprawdź}} - oferujące sprawdzanie danych uzyskanych ze strony. * {{lru|Moduły/ŹródłoLua}} - wyświetlające w całości wyniki w postaci różnych typów danych wraz z ich zmiennymi. === Specjalistyczne === * {{lru|Moduły/GridTabela}} - tworzące grid-tabelę ze sprawdzeniem rodzaju parametrów. * {{lru|Moduły/Tabela}} - tworzące wiki-tabelę ze sprawdzeniem rodzaju parametrów. * {{lru|Moduły/Sekcja referencyjna}} - linków inteligentnych sekcji referencyjnej używanej z podaniem nazwy artykułu bez nazwy książki. * {{lru|Moduły/Licencja}} - wyświetlania licencji książki z określonym oczekiwanym lub nie nagłówkiem. * {{lru|Moduły/Przypisy}} - wyświetlania przypisów artykułów lub książki z określonym oczekiwanym lub nie nagłówkiem. * {{lru|Moduły/Dopracować}} - wyświetlania okienka {{s|mbox}} z komunikatem, w zależności od problemu. }} == Przypisy == {{Przypisy |{{o|n=Spis treści|o=Opisy modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}} mechanizmu '''{{NS|k=mw|w=tak|l=tak}}''' posiadające na ich podstronach swój '''{{lpg|spis treści}}'''.}} }} {{BrClear}} <noinclude><!-- -->{{StandardowaStronaKoniec}}<!-- -->{{Kategorie | Opisy funkcji, w Lua w Scribunto, w modułach | sortuj spacją 1 = tak | Pomoc - Problemy wywołań mechanizmu MediaWiki }}<!-- --></noinclude> f7i61ybfpudr2s6ynoeydr7nchk5h1v Wikibooks:Moduły/StronicowyParser/AnalizaSpisuRzeczy 4 63923 559412 558910 2026-10-15T09:15:05Z Persino 2851 /* Spis treści */ 559412 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje do analizy i wydzielania, ze strony, dowolnego spisu rzeczy należącego do książki w przestrzeni nazw, nawet niby, czyli: '''{{Np|(main)|link=tak}}''', '''{{Np|Wikijunior|link=tak}}''', '''{{lr2|Brudnopis}}/<użytkownik>''' i '''{{Np|User|link=tak}}/<użytkownik>'''. Moduł posiada specjalistyczne funkcje wyszukujące tekst według wzoru od przodu, jak i od tyłu, jak i funkcje znajdujące sciśle określone elementy niezaleznie w jakim porządku, ale kolejność sie liczy, tzn. do przodu lub wsteczna. Funkcja wyszukuje rozdziały, w tym rozdział: '''Spis treści''', czy: '''Spis rzeczy''', niezależnie jak są znormowane, od tyłu, znajdując rozdziały najbliższe przed sobą, nawet wyszukując je kolejne. Niektóre funkcje w tym module: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, mają ogólne zastosowanie, a jeszcze inne, żadnego, a te można jedynie stosować w funkcji: {{Code|{{sr|#p.AnalizaSpisuRzeczy|p=StronicowyParser/AnalizaSpisuRzeczy/Tom VII}}}}, tam te mają tylko jedynie one sens. == Argumenty (zmienne) wstawiane do różnych funkcji == === Parametry tekstu === Są to elementy części i całości kodu zakodowanego artykułu {{ZobaczTeż|Podstawowe parametry}}: {{OpisParametrów | 1 = {{Code|linia}} {{Patrz|linia}} | _1 = Linia do sprawdzenia, umieszczona pomiędzy znakami nowej linii lub elementami końca i początku łańcucha znakowego. Jest ona uzyskana z: {{Code|tekst_rozwiniety_calego_artykulu}} {{LinkPatrz|tekst_rozwiniety_calego_artykulu}}. | 2 = {{Code|tekst_rozwiniety_calego_artykulu}} {{Patrz|tekst_rozwiniety_calego_artykulu}} | _2 = Przeszukiwany tekst, całości zakodowanego artykułu. }} === Elementy kodowania kodów różnych obiektów === Elementy różnych kodów to {{ZobaczTeż|Parametry kodowania}}, używane w tabeli bazy {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}: {{OpisParametrów | 1 = {{Code|obiekt}} {{Patrz|obiekt}} | _1 = Rodzaj kodu w bazie danych zakodowanego tekstu. | 2 = {{Code|kod}} {{Patrz|kod}} | _2 = Numer kodu w danego rodzaju. }} === Elementy złożone z rodzaju kodu i jego numeru === Parametry uzyskane {{ZobaczTeż|Parametry złożone}} przy pomocy tabel z innych elementów: {{OpisParametrów | 1 = {{Code|szablon}} {{Patrz|szablon}} | _1 = Element złożony z elementów: {{LinkZobaczTeż|Parametry kodowania}}, przy użyciu tablicy: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}. }} === Parametry zakodowanego spisu === Są to elementy parametrów strony zakodowanego spisu {{ZobaczTeż|Parametry zakodowanego spisu}}: {{OpisParametrów | 1 = {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} | _1 = Kolejno jest to: '''nazwa przestrzeni nazw''', '''nazwa przestrzeni książki''', i '''nazwa książki''', artykułu spisu treści. | 2 = {{Code|nazwa_spisu_tresci}} {{Patrz|nazwa_spisu_tresci}} | _2 = Nazwa artykułu spisu treści w podręczniku, jego wartością może być wartość pusta. | 3 = {{Code|pelna_nazwa_spisu_tresci}} {{Patrz|pelna_nazwa_spisu_tresci}} | _3 = Uchwyt do bazy kodowania zakodowanego tekstu, jeśli: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, nie istnieje. | 4 = {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{Patrz|pelna_nazwa_spisu_tresci_szablonowa}} | _4 = Nazwa spisu treści w wersji szablonowej, bez przestrzeni nazw {{Np|Template|link=tak}}. Dla przestrzeni nazw: {{Np|(main)|link=tak}}, jest ona z dwukropkiem na początku. Tak jak się pisze wywołania szablonowe, do uruchomienia, dla elementów w różnych przestrzeniach nazw, aby po wywołaniu było to, co chcemy. | 5 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} | _5 = Tabela bazy danych zakodowanego tekstu, dla różnych obiektów {{LinkPatrz|obiekt}} z róznymi numerami elementów w nim {{LinkPatrz|kod}}. | 6 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _6 = Tablica niektórych, nie wszystkich, przetworzonych elementów z: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, w wyniku użycia pewnych funkcji. | 7 = Parametry, czyli tabele potrzebne, używane, przez funkcję: {{Code|{{sr|#p.AnalizujLinkSzablonyOrazLinki|p=StronicowyParser/Potrzebne}}}} {{Patrz|p.AnalizujLinkSzablonyOrazLinki}}, do szybszego analizowania linków, nie licząc: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, który natomiast jest użyty do tych samych linków, bez ponownego jego liczenia, co przyszybsza pracę tej funkcji, a ta poniżej ona jest użyta do pierwszego liczenia linkowego, ale w pewnym stopniu też jest to powtarzalne, ale nie do końca, bo to nie jest do końca to samo, co poprzednie policzone odsyłacze: | nagłówek7 = tak | 8 = {{Code|tab_nazwa_spisow_przekierowaniowych}} {{Patrz|tab_nazwa_spisow_przekierowaniowych}} | _8 = Tablica nazw spisu przekierowaniowego. }} ==== Kiedy stosować tabele bazy i parametrów kodowania zakodowanego tekstu ==== {{Śródtekst|uchwyt=parametry-baza_danych_kodowania_artykułu|tekst= Zmienna: {{Code|pelna_nazwa_spisu_tresci}} {{LinkPatrz|pelna_nazwa_spisu_tresci|StronicowyParser/AnalizaSpisuRzeczy}}, jest to uchwyt do bazy danych kodowania tekstu, gdyby nie podano parametru: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul|StronicowyParser/AnalizaSpisuRzeczy}}, a argument: {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{LinkPatrz|pelna_nazwa_spisu_tresci_szablonowa|StronicowyParser/AnalizaSpisuRzeczy}}, jest tylko potrzebna do przetłumaczenia adresu względnego na bezwzględny nazwy szablonu w postaci szablonowej, tak jak się pisze wywołania szablonowe, a gdy transformacja już wcześniej została ta dokonana, to korzystamy z tłumaczenia zawartego w: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}. }} == Spis treści == Poszczególne moduły opisują, dla przejrzystości podzielone na nie, funkcje w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}, a te strony w poszczególnych tomach, to są dokumentacje ich. {{Hr}} {{Kolumny|2|2= === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom I}} - Szukania według wzoru === Funkcje do przeszukiwania, do przodu lub tyłu, ciągów znakowych podanych w tekście lub wewnątrz linii, w postaci przechwytywanych ciągów znakowych (ich jest maksymalnie dziewięć), one zwracają początek i koniec ostatniego dopasowania według kryteriów, w postaci pierwszy elementów zwracanych, dalsze elementy, to są przechwytywania, zdefiniowane bezpośrednio we wzorze wyszukiwania w postaci nawiasów okrągłych, tak są zaznaczane takie elementy. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom II}} - Czy dany element obiekt jest linkiem do artykułu danej książki === Funkcje do sprawdzania, czy szablon, obiekt typu: {{Code|SZABLON}}, czy inne: {{Code|LINKW}} i {{Code|LINKZ}}, są obiektami linkowymi spisu treści podręcznika, czy nie, a jeżeli tak, to funkcja zwraca wartość prawdziwości (powodzenia), lub do rewidowania (spisowych), czy w linii niebędącej pozycją ujemną, czy tam są w ogóle elementy symbolizujące jakiegoś rodzaju linki spisu rzeczy, tam przedstawiane szablony albo to są szablony linków inteligentnych - czyli szablonu spisu, jak i inne linki typowo spisowe, używane tylko w spisach, a nie w treściwych częściach książki. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom III}} - Parsowanie spisu treści, czy rzeczy, rozdziału === Funkcje do wyszukiwania napisów wprowadzenia tekstu, przede wszystkim zerowych, ale też można sprawdzić, czy przypadkiem, to jest rozdział centrowany, aby go czasami wykluczyć z obliczeń. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom IV}} - Znajdowanie najbliższego rozdziału === Funkcje wyszukujące rozdziały lub w samym nagłówku, które mają odpowiednie lub nie zawartości, takiego pierwszego, od tyłu, lub do przodu. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom V}} - Analiza poszczególnych sekcji === Funkcje dotyczące wyszukiwania sekcji na zakodowanym tekście strony, w tym również linkowych, określa warunki znajdowania kolejnych rozdziałów w wikikodzie, jakie nagłówki wyszukiwać, jakie muszą spełniać rozwiązania. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom VI}} - Funkcje korygowania spisu rzeczy === Funkcje do korygowania pozycji końca spisu treści wydzielonej z tekstu zakodowanego treści artykułu (strony), by ona mieściła się wraz z licencją (z szablonem: {{s|Licencja}}), jeśli on istnieje, lub usuwania pewnych elementów z wydzielonego z właściwego spisu treści, co do napisu wprowadzenia tekstu i jego tekstu rozdziału, o nagłówkach: '''Bibliografia''' i '''Literatura''', niezależnie jak są znormowane. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom VII}} - Funkcja do wydzielania z tekstu artykułu przetworzonego, właściwej jej części spisu === Funkcje do wydzielania z zakodowanego spisu treści, jego właściwego, aby dało się dalej łatwo go podzielić na nagłówki i ich teksty rozdziałów (bez nagłówka). Robimy to dla każdego spisu danej książki. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4m4ifrpolhrm7suqjf5nm5k59horz54 559414 559412 2026-10-15T11:07:44Z Persino 2851 /* Parametry zakodowanego spisu */ 559414 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje do analizy i wydzielania, ze strony, dowolnego spisu rzeczy należącego do książki w przestrzeni nazw, nawet niby, czyli: '''{{Np|(main)|link=tak}}''', '''{{Np|Wikijunior|link=tak}}''', '''{{lr2|Brudnopis}}/<użytkownik>''' i '''{{Np|User|link=tak}}/<użytkownik>'''. Moduł posiada specjalistyczne funkcje wyszukujące tekst według wzoru od przodu, jak i od tyłu, jak i funkcje znajdujące sciśle określone elementy niezaleznie w jakim porządku, ale kolejność sie liczy, tzn. do przodu lub wsteczna. Funkcja wyszukuje rozdziały, w tym rozdział: '''Spis treści''', czy: '''Spis rzeczy''', niezależnie jak są znormowane, od tyłu, znajdując rozdziały najbliższe przed sobą, nawet wyszukując je kolejne. Niektóre funkcje w tym module: {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, mają ogólne zastosowanie, a jeszcze inne, żadnego, a te można jedynie stosować w funkcji: {{Code|{{sr|#p.AnalizaSpisuRzeczy|p=StronicowyParser/AnalizaSpisuRzeczy/Tom VII}}}}, tam te mają tylko jedynie one sens. == Argumenty (zmienne) wstawiane do różnych funkcji == === Parametry tekstu === Są to elementy części i całości kodu zakodowanego artykułu {{ZobaczTeż|Podstawowe parametry}}: {{OpisParametrów | 1 = {{Code|linia}} {{Patrz|linia}} | _1 = Linia do sprawdzenia, umieszczona pomiędzy znakami nowej linii lub elementami końca i początku łańcucha znakowego. Jest ona uzyskana z: {{Code|tekst_rozwiniety_calego_artykulu}} {{LinkPatrz|tekst_rozwiniety_calego_artykulu}}. | 2 = {{Code|tekst_rozwiniety_calego_artykulu}} {{Patrz|tekst_rozwiniety_calego_artykulu}} | _2 = Przeszukiwany tekst, całości zakodowanego artykułu. }} === Elementy kodowania kodów różnych obiektów === Elementy różnych kodów to {{ZobaczTeż|Parametry kodowania}}, używane w tabeli bazy {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}: {{OpisParametrów | 1 = {{Code|obiekt}} {{Patrz|obiekt}} | _1 = Rodzaj kodu w bazie danych zakodowanego tekstu. | 2 = {{Code|kod}} {{Patrz|kod}} | _2 = Numer kodu w danego rodzaju. }} === Elementy złożone z rodzaju kodu i jego numeru === Parametry uzyskane {{ZobaczTeż|Parametry złożone}} przy pomocy tabel z innych elementów: {{OpisParametrów | 1 = {{Code|szablon}} {{Patrz|szablon}} | _1 = Element złożony z elementów: {{LinkZobaczTeż|Parametry kodowania}}, przy użyciu tablicy: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}. }} === Parametry zakodowanego spisu === Są to elementy parametrów strony zakodowanego spisu {{ZobaczTeż|Parametry zakodowanego spisu}}: {{OpisParametrów | 1 = {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} | _1 = Kolejno jest to: '''nazwa przestrzeni nazw''', '''nazwa przestrzeni książki''', i '''nazwa książki''', artykułu spisu treści. | 2 = {{Code|nazwa_spisu_tresci}} {{Patrz|nazwa_spisu_tresci}} | _2 = Nazwa artykułu spisu treści w podręczniku, jego wartością może być wartość pusta. | 3 = {{Code|pelna_nazwa_spisu_tresci}} {{Patrz|pelna_nazwa_spisu_tresci}} | _3 = Uchwyt do bazy kodowania zakodowanego tekstu, jeśli: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, nie istnieje. | 4 = {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{Patrz|pelna_nazwa_spisu_tresci_szablonowa}} | _4 = Nazwa spisu treści w wersji szablonowej, bez przestrzeni nazw {{Np|Template|link=tak}}. Dla przestrzeni nazw: {{Np|(main)|link=tak}}, jest ona z dwukropkiem na początku. Tak jak się pisze wywołania szablonowe, do uruchomienia, dla elementów w różnych przestrzeniach nazw, aby po wywołaniu było to, co chcemy. | 5 = {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} | _5 = Tabela bazy danych zakodowanego tekstu, dla różnych obiektów {{LinkPatrz|obiekt}} z różnymi numerami elementów w nim {{LinkPatrz|kod}}. | 6 = {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} | _6 = Tablica niektórych, nie wszystkich, przetworzonych elementów z: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, w wyniku użycia pewnych funkcji. | 7 = Parametry, czyli tabele potrzebne, używane, przez funkcję: {{Code|{{sr|#p.AnalizujLinkSzablonyOrazLinki|p=StronicowyParser/Potrzebne}}}} {{Patrz|p.AnalizujLinkSzablonyOrazLinki}}, do szybszego analizowania linków, nie licząc: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}, który natomiast jest użyty do tych samych linków, bez ponownego jego liczenia, co przyszybsza pracę tej funkcji, a ta poniżej ona jest użyta do pierwszego liczenia linkowego, ale w pewnym stopniu też jest to powtarzalne, ale nie do końca, bo to nie jest do końca to samo, co poprzednie policzone odsyłacze: | nagłówek7 = tak | 8 = {{Code|tab_nazwa_spisow_przekierowaniowych}} {{Patrz|tab_nazwa_spisow_przekierowaniowych}} | _8 = Tablica nazw spisu przekierowaniowego. }} ==== Kiedy stosować tabele bazy i parametrów kodowania zakodowanego tekstu ==== {{Śródtekst|uchwyt=parametry-baza_danych_kodowania_artykułu|tekst= Zmienna: {{Code|pelna_nazwa_spisu_tresci}} {{LinkPatrz|pelna_nazwa_spisu_tresci|StronicowyParser/AnalizaSpisuRzeczy}}, jest to uchwyt do bazy danych kodowania tekstu, gdyby nie podano parametru: {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul|StronicowyParser/AnalizaSpisuRzeczy}}, a argument: {{Code|pelna_nazwa_spisu_tresci_szablonowa}} {{LinkPatrz|pelna_nazwa_spisu_tresci_szablonowa|StronicowyParser/AnalizaSpisuRzeczy}}, jest tylko potrzebna do przetłumaczenia adresu względnego na bezwzględny nazwy szablonu w postaci szablonowej, tak jak się pisze wywołania szablonowe, a gdy transformacja już wcześniej została ta dokonana, to korzystamy z tłumaczenia zawartego w: {{Code|tablica_danych_parametrow_szablonu_strony}} {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}. }} == Spis treści == Poszczególne moduły opisują, dla przejrzystości podzielone na nie, funkcje w module: {{Code|{{ld2|StronicowyParser/AnalizaSpisuRzeczy}}}}, a te strony w poszczególnych tomach, to są dokumentacje ich. {{Hr}} {{Kolumny|2|2= === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom I}} - Szukania według wzoru === Funkcje do przeszukiwania, do przodu lub tyłu, ciągów znakowych podanych w tekście lub wewnątrz linii, w postaci przechwytywanych ciągów znakowych (ich jest maksymalnie dziewięć), one zwracają początek i koniec ostatniego dopasowania według kryteriów, w postaci pierwszy elementów zwracanych, dalsze elementy, to są przechwytywania, zdefiniowane bezpośrednio we wzorze wyszukiwania w postaci nawiasów okrągłych, tak są zaznaczane takie elementy. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom II}} - Czy dany element obiekt jest linkiem do artykułu danej książki === Funkcje do sprawdzania, czy szablon, obiekt typu: {{Code|SZABLON}}, czy inne: {{Code|LINKW}} i {{Code|LINKZ}}, są obiektami linkowymi spisu treści podręcznika, czy nie, a jeżeli tak, to funkcja zwraca wartość prawdziwości (powodzenia), lub do rewidowania (spisowych), czy w linii niebędącej pozycją ujemną, czy tam są w ogóle elementy symbolizujące jakiegoś rodzaju linki spisu rzeczy, tam przedstawiane szablony albo to są szablony linków inteligentnych - czyli szablonu spisu, jak i inne linki typowo spisowe, używane tylko w spisach, a nie w treściwych częściach książki. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom III}} - Parsowanie spisu treści, czy rzeczy, rozdziału === Funkcje do wyszukiwania napisów wprowadzenia tekstu, przede wszystkim zerowych, ale też można sprawdzić, czy przypadkiem, to jest rozdział centrowany, aby go czasami wykluczyć z obliczeń. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom IV}} - Znajdowanie najbliższego rozdziału === Funkcje wyszukujące rozdziały lub w samym nagłówku, które mają odpowiednie lub nie zawartości, takiego pierwszego, od tyłu, lub do przodu. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom V}} - Analiza poszczególnych sekcji === Funkcje dotyczące wyszukiwania sekcji na zakodowanym tekście strony, w tym również linkowych, określa warunki znajdowania kolejnych rozdziałów w wikikodzie, jakie nagłówki wyszukiwać, jakie muszą spełniać rozwiązania. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom VI}} - Funkcje korygowania spisu rzeczy === Funkcje do korygowania pozycji końca spisu treści wydzielonej z tekstu zakodowanego treści artykułu (strony), by ona mieściła się wraz z licencją (z szablonem: {{s|Licencja}}), jeśli on istnieje, lub usuwania pewnych elementów z wydzielonego z właściwego spisu treści, co do napisu wprowadzenia tekstu i jego tekstu rozdziału, o nagłówkach: '''Bibliografia''' i '''Literatura''', niezależnie jak są znormowane. === {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy/Tom VII}} - Funkcja do wydzielania z tekstu artykułu przetworzonego, właściwej jej części spisu === Funkcje do wydzielania z zakodowanego spisu treści, jego właściwego, aby dało się dalej łatwo go podzielić na nagłówki i ich teksty rozdziałów (bez nagłówka). Robimy to dla każdego spisu danej książki. }} {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> lhfmyegzjqxurt35mjbovxeff74wler Szablon:OpisParametrów 10 64146 559318 558142 2026-10-14T23:39:35Z Persino 2851 559318 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:OpisParametrów/styles.css" /> {{#invoke:Ramka|Rozwiń|{{((}}GridTabela{{!}}pozycja{{=}}brak{{!}}klasa op{{=}}OpisParametrów-grid-op{{!}}klasa{{=}}gridtable OpisParametrów-grid {{(((}}klasa{{!}}{{)))}}{{!}}styl{{=}}{{(((}}styl{{!}}{{)))}} {{!}} liczba kolumn {{=}} 3 {{!}} liczba wierszy {{=}} {{#expr:{{#invoke:Ramka|Powtarzaj|nie rozwiń=|1+}}+0}} {{!}} nagłówek 1 {{=}} Lp. {{!}} nagłówek 2 {{=}} Parametr {{!}} klasa 2 {{=}} {{(((}}klasa parametru{{!}}{{)))}} {{!}} styl 2 {{=}} {{(((}}styl parametru{{!}}{{)))}} {{!}} nagłówek 3 {{=}} Opis {{!}} klasa 3 {{=}} {{(((}}klasa opisu{{!}}{{)))}} {{!}} styl 3 {{=}} {{(((}}styl opisu{{!}}{{)))}} {{#invoke:Ramka|Powtarzaj|nie rozwiń=|warunkowe=tak|warunkowe ze zmiennymi=tak| {{!}} klasa wiersza {{((}}_{{))}} {{=}} {{(((}}klasa wiersza{{((}}_{{))}}{{!}}{{)))}} {{!}} styl wiersza {{((}}_{{))}} {{=}} {{(((}}styl wiersza{{((}}_{{))}}{{!}}{{)))}} {{!}} komórka {{((}}_{{))}}_1 {{=}} <div>{{((}}_{{))}}</div> {{!}} komórka {{((}}_{{))}}_2 {{=}} <div> {{(((}}{{((}}_{{))}}{{)))}}</div> {{!}} klasa {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{!}}OpisParametrów-nagłówek{{!}}{{))}} {{(((}}klasa parametru{{{((}}_{{))}}{{!}}{{)))}} {{!}} styl {{((}}_{{))}}_2 {{=}} {{(((}}styl parametru{{((}}_{{))}}{{!}}{{)))}} {{!}} kolumny {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}{{!}}2{{!}}1{{))}} {{!}} nagłówek {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}{{!}}{{!}}tak{{))}} __((__#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}__!____!__ {{((}}!{{))}} komórka {{((}}_{{))}}_3 {{=}} <div> {{((}}((({{))}}_{{((}}_{{))}}{{((}}))){{))}}</div> {{((}}!{{))}} klasa {{((}}_{{))}}_3 {{=}} {{((}}((({{))}}klasa wartości{{((}}_{{))}}{{((}}!{{))}}{{((}}))){{))}} {{((}}!{{))}} styl {{((}}_{{))}}_3 {{=}} {{((}}((({{))}}styl wartości{{((}}_{{))}}{{((}}!{{))}}{{((}}))){{))}} __))__ }}{{))}}}}{{#if:{{{bez dodatkowych sprawdzeń|}}}||{{#invoke:Ramka|Rozwiń|{{((}}#invoke:Sprawdź{{!}}Parametry{{!}}{{=}}problemy-w-szablonie-%s {{((}}(({{))}}Kategoria{{((}}!{{))}}Szablon %s do sprawdzenia{{((}})){{))}}{{!}}klasa{{=}}{{!}}styl{{=}}{{!}}klasa parametru{{=}}{{!}}styl parametru{{=}}{{!}}klasa opisu{{=}}{{!}}styl opisu{{=}}{{#invoke:Ramka|Powtarzaj|po kolei=tak|nie rozwiń=tak|{{!}}{{((}}_{{))}}{{=}}txt!{{!}}styl parametru{{((}}_{{))}}{{=}}{{!}}klasa parametru{{((}}_{{))}}{{=}}{{!}}styl wartości{{((}}_{{))}}{{=}}{{!}}klasa wartości{{((}}_{{))}}{{=}}{{!}}styl wiersza{{((}}_{{))}}{{=}}{{!}}klasa wiersza{{((}}_{{))}}{{=}}{{!}}nagłówek{{((}}_{{))}}{{=}}txt?;_{{((}}_{{))}};komórka{{((}}_{{))}}{{!}}komórka{{((}}_{{))}}{{=}}txt?;_{{((}}_{{))}};nagłówek{{((}}_{{))}}{{!}}_{{((}}_{{))}}{{=}}txt?!;nagłówek{{((}}_{{))}};komórka{{((}}_{{))}}}}{{))}} }}}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 8rod3e0lknup3pzun0q8jw6s9fstnc7 559349 559318 2026-10-15T02:00:34Z Persino 2851 559349 wikitext text/x-wiki <includeonly><templatestyles src="Szablon:OpisParametrów/styles.css" /> {{#invoke:Ramka|Rozwiń|{{((}}GridTabela{{!}}pozycja{{=}}brak{{!}}klasa op{{=}}OpisParametrów-grid-op{{!}}klasa{{=}}gridtable OpisParametrów-grid {{(((}}klasa{{!}}{{)))}}{{!}}styl{{=}}{{(((}}styl{{!}}{{)))}} {{!}} liczba kolumn {{=}} 3 {{!}} liczba wierszy {{=}} {{#expr:{{#invoke:Ramka|Powtarzaj|nie rozwiń=|1+}}+0}} {{!}} nagłówek 1 {{=}} Lp. {{!}} nagłówek 2 {{=}} Parametr {{!}} klasa 2 {{=}} {{(((}}klasa parametru{{!}}{{)))}} {{!}} styl 2 {{=}} {{(((}}styl parametru{{!}}{{)))}} {{!}} nagłówek 3 {{=}} Opis {{!}} klasa 3 {{=}} {{(((}}klasa opisu{{!}}{{)))}} {{!}} styl 3 {{=}} {{(((}}styl opisu{{!}}{{)))}} {{#invoke:Ramka|Powtarzaj|nie rozwiń=|warunkowe=tak|warunkowe ze zmiennymi=tak| {{!}} klasa wiersza {{((}}_{{))}} {{=}} {{(((}}klasa wiersza{{((}}_{{))}}{{!}}{{)))}} {{!}} styl wiersza {{((}}_{{))}} {{=}} {{(((}}styl wiersza{{((}}_{{))}}{{!}}{{)))}} {{!}} komórka {{((}}_{{))}}_1 {{=}} <div>{{((}}_{{))}}</div> {{!}} komórka {{((}}_{{))}}_2 {{=}} <div> {{(((}}{{((}}_{{))}}{{)))}}</div> {{!}} klasa {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}{{!}}OpisParametrów-komórka{{!}}{{))}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{!}}OpisParametrów-nagłówek{{!}}{{))}} {{(((}}klasa parametru{{{((}}_{{))}}{{!}}{{)))}} {{!}} styl {{((}}_{{))}}_2 {{=}} {{(((}}styl parametru{{((}}_{{))}}{{!}}{{)))}} {{!}} kolumny {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}{{!}}2{{!}}1{{))}} {{!}} nagłówek {{((}}_{{))}}_2 {{=}} {{((}}#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}{{!}}{{!}}tak{{))}} __((__#if:{{(((}}nagłówek{{((}}_{{))}}{{!}}{{)))}}{{(((}}komórka{{((}}_{{))}}{{!}}{{)))}}__!____!__ {{((}}!{{))}} komórka {{((}}_{{))}}_3 {{=}} <div> {{((}}((({{))}}_{{((}}_{{))}}{{((}}))){{))}}</div> {{((}}!{{))}} klasa {{((}}_{{))}}_3 {{=}} {{((}}((({{))}}klasa wartości{{((}}_{{))}}{{((}}!{{))}}{{((}}))){{))}} {{((}}!{{))}} styl {{((}}_{{))}}_3 {{=}} {{((}}((({{))}}styl wartości{{((}}_{{))}}{{((}}!{{))}}{{((}}))){{))}} __))__ }}{{))}}}}{{#if:{{{bez dodatkowych sprawdzeń|}}}||{{#invoke:Ramka|Rozwiń|{{((}}#invoke:Sprawdź{{!}}Parametry{{!}}{{=}}problemy-w-szablonie-%s {{((}}(({{))}}Kategoria{{((}}!{{))}}Szablon %s do sprawdzenia{{((}})){{))}}{{!}}klasa{{=}}{{!}}styl{{=}}{{!}}klasa parametru{{=}}{{!}}styl parametru{{=}}{{!}}klasa opisu{{=}}{{!}}styl opisu{{=}}{{#invoke:Ramka|Powtarzaj|po kolei=tak|nie rozwiń=tak|{{!}}{{((}}_{{))}}{{=}}txt!{{!}}styl parametru{{((}}_{{))}}{{=}}{{!}}klasa parametru{{((}}_{{))}}{{=}}{{!}}styl wartości{{((}}_{{))}}{{=}}{{!}}klasa wartości{{((}}_{{))}}{{=}}{{!}}styl wiersza{{((}}_{{))}}{{=}}{{!}}klasa wiersza{{((}}_{{))}}{{=}}{{!}}nagłówek{{((}}_{{))}}{{=}}txt?;_{{((}}_{{))}};komórka{{((}}_{{))}}{{!}}komórka{{((}}_{{))}}{{=}}txt?;_{{((}}_{{))}};nagłówek{{((}}_{{))}}{{!}}_{{((}}_{{))}}{{=}}txt?!;nagłówek{{((}}_{{))}};komórka{{((}}_{{))}}}}{{))}} }}}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> ebr0hnr7qbaneu0z7uledgzjp0g0pwg Szablon:OpisParametrów/styles.css 10 64147 559246 559245 2026-10-14T12:31:04Z Persino 2851 559246 sanitized-css text/css table.OpisParametrów{ margin-top:0; margin-right:0; margin-left:0; width:100%; box-sizing:border-box; } table.OpisParametrów{ display:flex; flex-direction:row; flex-wrap:wrap; width:auto; max-width:100%; flex-shrink: 1; border:0; overflow:auto; } table.OpisParametrów > tbody{ display:table; width:100%; } table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th, table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th span.link > a{ text-align:center !important; color:white; background-color:black; } table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th a, table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th span.link > a{ text-decoration:underline; } table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th a:hover, table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th span.link > a:hover{ text-decoration:none; } table.OpisParametrów > tbody > tr.OpisParametrów-nagłówek > th code{ color:unset; background-color:unset; } table.OpisParametrów > tbody > tr:first-child > th:first-child{ width:2%; white-space:nowrap; text-align:center; } table.OpisParametrów > tbody > tr:first-child > th:first-child + th{ /*width:30%;*/ } table.OpisParametrów > tbody > tr:first-child ~ tr > td:first-child{ text-align:center; } table.OpisParametrów > tbody > tr:first-child ~ tr > td:first-child + th{ text-align:left; font-weight:normal; } table.OpisParametrów > tbody > tr:first-child ~ tr > td:first-child + th + td{ text-align:left; } table.OpisParametrów > tbody > tr > *:first-child + *{ width:30%; } table.OpisParametrów > tbody > tr > *:first-child + *:not([colspan]) > div{ } table.OpisParametrów > tbody > tr > *:first-child + *:not([colspan]) + *{ width:100%; } table.OpisParametrów > tbody > tr > *:first-child + *:not([colspan]) + * > div{ } table.OpisParametrów.Opis-Szerokość-1 > tbody > tr:not(.OpisParametrów-nagłówek) > *:first-child + *{ min-width:30rem; } @media all and (max-width:745px), all and (max-device-height:745px){ table.OpisParametrów{ display:flex !important; flex-direction:row; width:100%; } table.OpisParametrów, table.OpisParametrów > tbody, table.OpisParametrów > tbody > tr, table.OpisParametrów > tbody > tr > th, table.OpisParametrów > tbody > tr > td{ box-sizing:border-box; } table.OpisParametrów > tbody{ display:flex !important; flex-direction:column; width:100%; } table.OpisParametrów > tbody > tr{ display:flex !important; flex-direction:row; flex-wrap:wrap; width:100%; } table.OpisParametrów > tbody > tr> th:not(:first-child), table.OpisParametrów > tbody > tr> td:not(:first-child){ display:block !important; } table.OpisParametrów > tbody > tr > *:first-child{ max-width:2rem !important; width:100% !important; display:flex !important; flex-direction:column; align-items: stretch; justify-content: center; } table.OpisParametrów > tbody > tr:first-child > *:first-child + *{ max-width:5rem !important; width:100% !important; border-left:0; } table.OpisParametrów > tbody > tr:first-child > *:first-child + * ~ *{ border-left:0; } table.OpisParametrów > tbody > tr:first-child > *:first-child + * ~*{ max-width:calc( 100% - 2rem - 5rem) !important; width:100% !important; border-left:0; } table.OpisParametrów > tbody > tr:not(:first-child) > *:first-child + *{ max-width:calc( 100% - 2rem) !important; width:100% !important; border-left:0; } table.OpisParametrów > tbody > tr:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka):last-child > *:first-child, table.OpisParametrów > tbody > tr:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka):last-child > *:first-child + *, table.OpisParametrów > tbody > tr:not(:last-child) > *:first-child, table.OpisParametrów > tbody > tr:not(:last-child) > *:first-child + *, table.OpisParametrów > tbody > tr:not(:last-child) > *:first-child + * ~ *{ border-bottom:0; } table.OpisParametrów > tbody > tr > *:first-child + * ~ *{ width:100% !important; } table.OpisParametrów.Opis-Szerokość-1 > tbody > tr:not(.OpisParametrów-nagłówek) > *:first-child + *{ min-width:auto; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ pkzk4lx70t6ggpl2p0u830p5ow1syuh 559319 559246 2026-10-14T23:40:29Z Persino 2851 559319 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ p5c2fusfyx9kma7utczkuf357yhyw5e 559320 559319 2026-10-14T23:44:29Z Persino 2851 559320 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-1:not(.OpisParametrów-nagłówek), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2:not(.OpisParametrów-nagłówek), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3:not(.OpisParametrów-nagłówek){ background-color:white; color:black; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ g9tc8r59zv14bjpor1zgnrnxe0ssqe6 559321 559320 2026-10-14T23:45:34Z Persino 2851 559321 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ p5c2fusfyx9kma7utczkuf357yhyw5e 559324 559321 2026-10-14T23:51:25Z Persino 2851 559324 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:0; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ nw4dlmab7hdq7x1wpgi2p1y97cto7ip 559325 559324 2026-10-14T23:53:23Z Persino 2851 559325 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ p5c2fusfyx9kma7utczkuf357yhyw5e 559327 559325 2026-10-15T00:03:34Z Persino 2851 559327 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-width:1px; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ hpvlwa7divv0cpc9njz6sjr5kbmck5k 559328 559327 2026-10-15T00:04:05Z Persino 2851 559328 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left-width:1px; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ qloebbz5mg2powyyw1ttlkyp8444fqv 559329 559328 2026-10-15T00:09:36Z Persino 2851 559329 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 9ts4x0dusubrcogg08wespjm7epmy9i 559331 559329 2026-10-15T00:20:16Z Persino 2851 559331 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 9yo0zj5ejbqepdi7oi9kb2m1o88y5xt 559332 559331 2026-10-15T00:26:49Z Persino 2851 559332 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: 2rem minmax(auto,30%) min-content; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ p4mzbj7obqi3d65bxx96pmbj9qhkylt 559333 559332 2026-10-15T00:28:29Z Persino 2851 559333 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: 2rem minmax(auto,30%) minmax(100%,1fr); } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ gly75499tblq9u2yqvmnd01fx5bani7 559334 559333 2026-10-15T00:29:59Z Persino 2851 559334 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: 2rem minmax(auto,30%) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ r6hc5x5l5l2mpxoq621n8xylkxrwbsc 559335 559334 2026-10-15T00:30:52Z Persino 2851 559335 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(auto,2rem) minmax(auto,30%) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 9069epkofltbfcam30zevto16149g57 559336 559335 2026-10-15T00:38:42Z Persino 2851 559336 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: auto auto 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ frywre5p63zjtr92yaki0c90rxcglnu 559337 559336 2026-10-15T00:43:54Z Persino 2851 559337 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2{ max-width:30%; width:auto; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: auto auto 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ amz3dcnsbxasfiizlbw7t1nkuzkjz8p 559338 559337 2026-10-15T00:47:42Z Persino 2851 559338 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2{ max-width:30%; width:auto; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(auto,30%) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ q62ukht4p7dknxtvrm6v6zca43l4lms 559339 559338 2026-10-15T00:49:37Z Persino 2851 559339 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2{ width:auto; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(auto,30%) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ oengu21q3dvt6nxeugbmecevmislcui 559340 559339 2026-10-15T01:03:47Z Persino 2851 559340 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2{ width:auto; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ kjg0lvu117mnw19awdcc8zc60a4hqwp 559341 559340 2026-10-15T01:05:13Z Persino 2851 559341 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2{ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 8ytm1hqnvpx1l8a7voobva9pha6akjk 559342 559341 2026-10-15T01:06:34Z Persino 2851 559342 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 6u2d2f8h24wdcm0x0muys445ldiprni 559343 559342 2026-10-15T01:10:03Z Persino 2851 559343 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 2r805s6g9b7smubfqvp2va1ef8m8csg 559344 559343 2026-10-15T01:13:01Z Persino 2851 559344 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 2px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 1y9zf8u3avw0k1dvtm3mhcr8yz5jkb8 559345 559344 2026-10-15T01:19:20Z Persino 2851 559345 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:5rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 2px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ qegsqmubap0bvoaicgqm82ximf9sv2y 559346 559345 2026-10-15T01:25:24Z Persino 2851 559346 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ kouqzmossglu0qeq1y129taao14el81 559350 559346 2026-10-15T02:03:14Z Persino 2851 559350 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 6l448xyp7abxqjbhl5abi9xjr4aupnz 559351 559350 2026-10-15T02:12:22Z Persino 2851 559351 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-komórka, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ ej828zwck5n40n3bsmognjx6ugcyiu3 559353 559351 2026-10-15T02:40:37Z Persino 2851 559353 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr !important; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-komórka, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ mjlhktzgxu393c5voxndp56tv768k2q 559354 559353 2026-10-15T02:53:25Z Persino 2851 559354 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek:not(.nagłówek-tytuł){ font-weight: lighter; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr !important; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-komórka, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ 9h3js1k0t1n7qyjgsawgptnq61wm55v 559355 559354 2026-10-15T02:54:44Z Persino 2851 559355 sanitized-css text/css div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op{ display:flex; flex-direction:row; width:auto; } div.gridtabela-moduł-op.tabela-brak.OpisParametrów-grid-op > div.gridtabela-moduł.OpisParametrów-grid{ width:100%; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ text-align:center; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-1{ min-width:2rem; } div.gridtabela-moduł.OpisParametrów-grid > div.kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ max-width:30rem; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2, div.gridtabela-moduł.OpisParametrów-grid > div.nagłówek.kolumna-2:not(.nagłówek-tytuł), div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-3{ text-align:left; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-align:center !important; color:white; background-color:black; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a{ text-decoration:underline; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek a:hover, div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek span.link > a:hover{ text-decoration:none; } div.gridtabela-moduł.OpisParametrów-grid > div.komórka.kolumna-2.OpisParametrów-nagłówek code{ color:unset; background-color:unset; } div.gridtabela-moduł.OpisParametrów-grid{ grid-template-columns: minmax(0,2rem) minmax(0,auto) 1fr !important; } @media all and (max-width:745px), all and (max-device-height:745px){ div.gridtabela-moduł.gridtable.OpisParametrów-grid{ display:flex !important; flex-direction:row; flex-wrap:wrap; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).wiersz-1.kolumna-3{ margin-top:-1px; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-1, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-1{ width:2rem; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-2{ width:calc( 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.nagłówek-tytuł.kolumna-3{ width:calc( 100% - 2rem - 5rem + 1px ); } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-nagłówek, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2.OpisParametrów-komórka, div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-2:not(.OpisParametrów-nagłówek):not(.OpisParametrów-komórka){ width: calc( 100% - 2rem + 1px); max-width:none; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div:not(.nagłówek-tytuł).kolumna-3{ width:100%; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ margin-left:0; } div.gridtabela-moduł.gridtable.OpisParametrów-grid > div.komórka:not(.nagłówek-tytuł).kolumna-3{ border-left: 1px #aaaaaa solid; } } /*{{Kategoria|Szablony - arkusze stylów}}*/ mjlhktzgxu393c5voxndp56tv768k2q Moduł:GridTabela 828 64408 559247 2026-10-14T14:01:08Z Persino 2851 Utworzono nową stronę „local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="wikitabela-moduł "..(klasa and kl…” 559247 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="wikitabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") ..(parametry_modul.CzyTak(styl)and " style=\""..styl.."\"" or "") ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") ..((czy_klasa_tytulu)and(" class=\""..klasa_tytulu.."\"") or "") .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik=ColSpanNaglowka(tabnaglowka,numer_kolumny); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") ..(czy_klasa and " class=\""..args["klasa "..numer_kolumny].."\"" or "") ..(czy_styl and " style=\""..args["styl "..numer_kolumny].."\"" or "") ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do local str2="" for numer_kolumny=1,liczba_kolumn,1 do local czypominac=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local kreska_pionowa_czy_wykrzyknik; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then kreska_pionowa_czy_wykrzyknik="!"; else kreska_pionowa_czy_wykrzyknik="|"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str2=str2.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") ..((czy_klasa_komorki) and " class=\""..klasa_komorki.."\"" or "") ..((czy_styl_komorki) and " style=\""..styl_komorki.."\"" or "") ..((czy_opcje) and " "..opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; --[[local czy_puste=(str2==""); if(not czy_puste)then local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); str=str.."|-"..(czy_id and " id=\""..id_wiersza.."\"" or "") ..(czy_klasa and " class=\""..klasa_wiersza.."\"" or "") ..(czy_styl and " style=\""..styl_wiersza.."\"" or "") ..(czy_opcje and " "..opcje_wiersza or "") .."\n" ..str2; else str=str.."|-\n"; end;--]] end; local str_tabela=str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"wikitabela-moduł "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 9uc9pza7ormxtry0z7mixtq2qzklutv 559252 559247 2026-10-14T14:52:50Z Persino 2851 559252 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="wikitabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") ..((czy_klasa_tytulu)and(" class=\""..klasa_tytulu.."\"") or "") .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik=ColSpanNaglowka(tabnaglowka,numer_kolumny); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") ..(czy_klasa and " class=\""..args["klasa "..numer_kolumny].."\"" or "") ..(czy_styl and " style=\""..args["styl "..numer_kolumny].."\"" or "") ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; local str_grid=""; for numer_wiersza=1,liczba_wierszy,1 do local str2=""; local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local kreska_pionowa_czy_wykrzyknik; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then kreska_pionowa_czy_wykrzyknik="!"; else kreska_pionowa_czy_wykrzyknik="|"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str2=str2.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\"wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\"grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..((czy_opcje) and " "..opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; local czy_puste=(str2==""); if(not czy_puste)then local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); str=str --.."|-"..(czy_id and " id=\""..id_wiersza.."\"" or "") ..(czy_klasa and " class=\""..klasa_wiersza.."\"" or "") ..(czy_styl and " style=\""..styl_wiersza.."\"" or "") ..(czy_opcje and " "..opcje_wiersza or "") .."\n" ..str2; else str=str.."|-\n"; end;--]] end; mw.log(str_grid,"TYTAn123bdfhfegjej") local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"wikitabela-moduł "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 8q1tqilwtr6osqe41fg5n9d4uphx17t 559254 559252 2026-10-14T15:28:04Z Persino 2851 559254 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="wikitabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; mw.log(str_grid,"TYTAn123bdfhfegjej") local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"wikitabela-moduł "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 31702ruz4afgvqwpljtkep3jhyaeqg3 559255 559254 2026-10-14T15:34:08Z Persino 2851 559255 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; m2p46nhmu03vd3umh8krrphhzjtrt76 559258 559255 2026-10-14T15:58:00Z Persino 2851 559258 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; ogjfw17vr9qymt2i1vnyowfl3zisf0d 559264 559258 2026-10-14T16:22:42Z Persino 2851 559264 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; tu9i2owoub7119awtzxns84baby96ty 559265 559264 2026-10-14T16:24:20Z Persino 2851 559265 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; h5x6jst1psmvk4ezycujpmiqn0veo7n 559275 559265 2026-10-14T18:42:09Z Persino 2851 Persino przeniósł(-osła) stronę [[Moduł:Brudnopis/Persino/GridTabela]] do [[Moduł:GridTabela]] 559265 Scribunto text/plain local p={}; function p.Tabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; h5x6jst1psmvk4ezycujpmiqn0veo7n 559278 559275 2026-10-14T18:43:33Z Persino 2851 559278 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") ..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}").."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") ..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 0d8tgoppbdjnsvct2vey7icaw0299aq 559285 559278 2026-10-14T19:05:27Z Persino 2851 559285 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 7nok016hpllgt2x08fvgoh2wabdo054 559352 559285 2026-10-15T02:38:54Z Persino 2851 559352 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; if(tytul)then str=str.."<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; bcgaxv4gphq7r6m9s4tkhpudiq4w7d1 559373 559352 2026-10-15T05:09:45Z Persino 2851 559373 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid.." _0"..((numer_kolumny==liczba_kolumn)and "\n" or ""); end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 8wkyjkw2b2ox5lc3equf9bl7s089qbh 559374 559373 2026-10-15T05:12:05Z Persino 2851 559374 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 4hu1c7fwd804gplq7rkmv7cb3yojc1k 559375 559374 2026-10-15T05:13:36Z Persino 2851 559375 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:tytuł;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; do2objfjutzmblsrm7ay19l6ily5suc 559376 559375 2026-10-15T05:14:21Z Persino 2851 559376 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; pagw3lept385k57iqt6srhd3dnjbzhk 559377 559376 2026-10-15T05:16:23Z Persino 2851 559377 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 6u3vm7dcnl3rp6tpchlgf2g0gctx11c 559378 559377 2026-10-15T05:21:37Z Persino 2851 559378 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do --str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; rqglzgh00kcrg621v262705eewn9juf 559379 559378 2026-10-15T05:24:43Z Persino 2851 559379 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").." _0"..((numer_kolumny==liczba_kolumn)and "'\n" or ""); end; end; mw.log(str_grid,"TYTAn123") local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; m31clg4gxsoeans3ddyvslqhvcs51sn 559380 559379 2026-10-15T05:26:16Z Persino 2851 559380 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; bfduou3vwxjdo44uwm5gsd09a4na74q 559381 559380 2026-10-15T05:34:14Z Persino 2851 559381 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid=str_grid..((numer_kolumny==1)and "'" or "").."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; mw.log(str_grid,"TYTAn123"); local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; bhvpjtvbxrrhb9srzwxipz1idrf9mr7 559382 559381 2026-10-15T05:40:45Z Persino 2851 559382 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" ..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul).."\n" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; mw.log(str_grid,"TYTAn123"); local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; tv353bgpo4xx667qbiwibvfzxh8w33k 559383 559382 2026-10-15T05:43:14Z Persino 2851 559383 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; ok6a8zxxt4qpwdfckljwk5rlutgor3w 559393 559383 2026-10-15T07:06:02Z Persino 2851 559393 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellpadding2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..(cellpadding2 or 0).."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; k3rmdc6oo85snm4jtmtw6cwsz5qfbqs 559394 559393 2026-10-15T07:07:03Z Persino 2851 559394 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellpadding2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellpadding2 or 0).."px").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; mtv0lo28rt04sklo2p5e64xdloi9v6g 559395 559394 2026-10-15T07:08:48Z Persino 2851 559395 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellpadding2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellpadding2 or 0).."px")..("padding:"..(cellpadding2 or 0).."px").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; haoc4udcpb7ekqsdwf0iz70caeapjl8 559396 559395 2026-10-15T07:09:40Z Persino 2851 559396 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellpadding2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") ..(parametry_modul.CzyTak(klasa)and " class=\""..klasa.."\"" or "") .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellpadding2 or 0).."px;")..("padding:"..(cellpadding2 or 0).."px;").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 2326jyscradjpujljt8s71cv1v6oytb 559397 559396 2026-10-15T07:13:30Z Persino 2851 559397 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellpadding2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellpadding2)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellpadding2 or 0).."px;")..("padding:"..(cellpadding2 or 0).."px;").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; lb3867tk40rsgagx6d1cq2da9gxv12v 559399 559397 2026-10-15T07:28:59Z Persino 2851 559399 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing2=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..(cellpadding or 0).."px;".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; jmmv442m48iiu8zu4nqrnx71iyor9ek 559400 559399 2026-10-15T07:30:36Z Persino 2851 559400 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..(cellpadding or 0).."px;".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; jvh8x8osb8t86hbmhrvpjh7b3prkmrl 559401 559400 2026-10-15T07:35:16Z Persino 2851 559401 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);"..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..(cellpadding or 0).."px;".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; qbcw0d6prcxfcwetjjcnw3e8dsx3ga9 559402 559401 2026-10-15T07:46:19Z Persino 2851 559402 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"padding:var(--cellpadding,initial);grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"padding:var(--cellpadding,initial);grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\"padding:var(--cellpadding,initial);"..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..(cellpadding or 0).."px;".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; o41hcacmcyn1zth9eez4yt6xq3f1cj1 559403 559402 2026-10-15T07:49:21Z Persino 2851 Anulowano wersję [[Special:Diff/559402|559402]] autorstwa [[Special:Contributions/Persino|Persino]] ([[User talk:Persino|dyskusja]]) 559403 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);"..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..(cellpadding or 0).."px;".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; qbcw0d6prcxfcwetjjcnw3e8dsx3ga9 559404 559403 2026-10-15T07:55:10Z Persino 2851 559404 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\"padding:var(--cellpadding,0.2em);"..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..((cellspacing or 0).."px;")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..((cellpadding and (cellpadding.."px") or "0.2em"))..";".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; e5l35osu2bu7cszete2xfcefxvl77bt 559405 559404 2026-10-15T08:06:52Z Persino 2851 559405 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..(styl or "")..";gap:" ..(cellpadding and ("padding:"..cellpadding.."px;") or "")..("padding:"..(cellspacing or 0).."px;").."--cellpadding:"..((cellpadding and (cellpadding.."px") or "0.2em"))..";".."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; q0ffv7t4cb2v1koaw5bjzmlftdlpp05 559406 559405 2026-10-15T08:14:13Z Persino 2851 559406 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; eembnv9g4zfb1gm7tqu6njudjho5x6j 559407 559406 2026-10-15T08:24:36Z Persino 2851 559407 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local border=atrybuty and (mw.ustring.match(atrybuty,"border%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"border%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"border%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellspacing and "margin:0" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellspacing and "margin:0" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(cellspacing and "margin:0" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; e5yvh53dzpt7pzlt8ora84x0u0e3e70 559408 559407 2026-10-15T08:26:52Z Persino 2851 559408 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local border=atrybuty and (mw.ustring.match(atrybuty,"border%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"border%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"border%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellspacing and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellspacing and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(cellspacing and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(cellspacing and "margin:0" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 1d9zv795lbc44kf3jqea4y25w1edirs 559409 559408 2026-10-15T08:30:33Z Persino 2851 559409 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; cellspacing=tonumber(cellspacing) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local border=atrybuty and (mw.ustring.match(atrybuty,"border%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"border%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"border%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(cellspacing and "margin:0" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; kld5w15zkhzt9qevz08mcxqu3z85yr2 559410 559409 2026-10-15T08:31:40Z Persino 2851 559410 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; cellspacing=tonumber(cellspacing) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local border=atrybuty and (mw.ustring.match(atrybuty,"border%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"border%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"border%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 2nglyzi01dw78suoua8nkgvews0yjw0 559411 559410 2026-10-15T08:38:20Z Persino 2851 559411 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local parametry_modul=require("Module:Parametry"); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- local cellspacing=atrybuty and (mw.ustring.match(atrybuty,"cellspacing%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellspacing%s*=%s*%s*(%d+)%s*") ) or nil; cellspacing=tonumber(cellspacing) or nil; local cellpadding=atrybuty and (mw.ustring.match(atrybuty,"cellpadding%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"cellpadding%s*=%s*%s*(%d+)%s*") ) or nil; local border=atrybuty and (mw.ustring.match(atrybuty,"border%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,"border%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,"border%s*=%s*%s*(%d+)%s*") ) or nil; --- local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(((cellspacing or 0)>0) and "margin:0;" or "")..(border and ("border-width:"..border.."px;") or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; 3rs2elqear96sd9i0nl1a9qxnv6tj69 559413 559411 2026-10-15T10:26:39Z Persino 2851 559413 Scribunto text/plain local p={}; function p.GridTabela(frame) local parametry_modul=require("Module:Parametry"); local args=parametry_modul.PobierzArgsParametry(frame,true); local tab_parametry={} local pozycja=args["pozycja"];tab_parametry["pozycja"]="^prawo$|^lewo$|^centruj$|^brak$"; local styl=args["styl"];tab_parametry["styl"]=""; local klasa=args["klasa"];tab_parametry["klasa"]=""; klasa="gridtabela-moduł "..(klasa and klasa or ""); local id=args["id"];tab_parametry["id"]=""; local atrybuty=args["atrybuty"];tab_parametry["atrybuty"]=""; local kol=tonumber(args["liczba kolumn"]) or 1; local liczba_kolumn=(kol>0)and kol or 0; tab_parametry["liczba kolumn"]="^%d+$!"; local wier=tonumber(args["liczba wierszy"]) or 1; local liczba_wierszy=(wier>0)and wier or 0; tab_parametry["liczba wierszy"]="^%d+$!"; --- --- local function TempFunc(atrybuty,zmienna) if(not parametry_modul.CzyTak(atrybuty))then return atrybuty;end; atrybuty=mw.ustring.gsub(atrybuty,zmienna.."%s*=%s*\"%s*(%d+)%s*\""," "); atrybuty=mw.ustring.gsub(atrybuty,zmienna.."%s*=%s*'%s*(%d+)%s*'"," "); atrybuty=mw.ustring.gsub(atrybuty,zmienna.."%s*=%s*%s*(%d+)%s*"," "); return atrybuty; end; local function TempFunc2(atrybuty,zmienna) local wartosc=atrybuty and (mw.ustring.match(atrybuty,zmienna.."%s*=%s*\"%s*(%d+)%s*\"") or mw.ustring.match(atrybuty,zmienna.."%s*=%s*'%s*(%d+)%s*'") or mw.ustring.match(atrybuty,zmienna.."%s*=%s*%s*(%d+)%s*") ) or nil; return wartosc; end; local cellspacing=TempFunc2(atrybuty,"cellspacing"); cellspacing=tonumber(cellspacing) or nil; local cellpadding=TempFunc2(atrybuty,"cellpadding"); local border=TempFunc2(atrybuty,"border"); --- atrybuty=TempFunc(atrybuty,"cellspacing"); atrybuty=TempFunc(atrybuty,"cellpadding"); atrybuty=TempFunc(atrybuty,"border"); local str=""; -- local id_tytulu=args["id tytułu"];local czy_id_tytulu=parametry_modul.CzyTak(id_tytulu); local klasa_tytulu=args["klasa tytułu"];local czy_klasa_tytulu=parametry_modul.CzyTak(klasa_tytulu); local styl_tytulu=args["styl tytułu"];local czy_styl_tytulu=parametry_modul.CzyTak(styl_tytulu); local opcje_tytulu=args["opcje tytułu"];local czy_opcje_tytulu=parametry_modul.CzyTak(opcje_tytulu); local tytul=args["tytuł"]; local str_tytul; if(tytul)then str_tytul="<div"..((czy_id_tytulu) and(" style=\""..id_tytulu.."\"") or "") .." class=\"tytuł "..(klasa_tytulu or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:_0;"..(styl_tytulu or "")..";\"" ..((czy_opcje_tytulu) and (" "..opcje_tytulu) or "")..">" .."<div class=\"gridtabela-dziecko\">"..(tytul and (mw.ustring.match(tytul,"^{|") or mw.ustring.match(tytul,"^[%*#:;]")) and ("\n"..tytul) or tytul) .."</div>" .."</div>"; if(str_tytul)then tab_parametry["id tytułu"]="";tab_parametry["klasa tytułu"]="";tab_parametry["styl tytułu"]="";tab_parametry["opcje tytułu"]=""; end; tab_parametry["tytuł"]="!"; end; --- local str_grid=""; local str_grid_tytul=""; --- if(str_tytul)then for numer_kolumny=1,liczba_kolumn,1 do str_grid_tytul=((numer_kolumny==1)and "'" or "")..str_grid_tytul.."_0"..((numer_kolumny==liczba_kolumn)and "'\n" or " "); end; end; local czy_naglowki=false; for i=1,liczba_kolumn,1 do if(args["nagłówek "..i])then czy_naglowki=true;break;end;end; if(czy_naglowki)then local id_naglowka=args["id nagłówka"];tab_parametry["id nagłówka"]=""; local klasa_naglowka=args["klasa nagłówka"];tab_parametry["klasa nagłówka"]=""; local styl_naglowka=args["styl nagłówka"];tab_parametry["styl nagłówka"]=""; local opcje_naglowka=args["opcje nagłówka"];tab_parametry["opcje nagłówka"]=""; --[[str=str.."|-"..(parametry_modul.CzyTak(id_naglowka)and " class=\""..id_naglowka.."\"" or "") ..(parametry_modul.CzyTak(klasa_naglowka)and " class=\""..klasa_naglowka.."\"" or "") ..(parametry_modul.CzyTak(styl_naglowka)and " style=\""..styl_naglowka.."\"" or "") ..(parametry_modul.CzyTak(opcje_naglowka)and " "..opcje_naglowka or "") .."\n";]] local function ColSpanNaglowka(tabnaglowka,numer_kolumny) for k=1,#tabnaglowka,1 do local tabnaglowka2=tabnaglowka[k]; if(tabnaglowka2[1]<=numer_kolumny)and(tabnaglowka2[2]>=numer_kolumny)then return true,tabnaglowka2[3]; end; end; return false; end; local tabnaglowka={}; for numer_kolumny=1,liczba_kolumn,1 do local wynik,str_grid2=ColSpanNaglowka(tabnaglowka,numer_kolumny); str_grid=((numer_kolumny==1)and "'" or "")..str_grid..(str_grid2 or ("_"..numer_kolumny))..((numer_kolumny==liczba_kolumn) and "'\n" or " "); if(not wynik)then local opcje=args["opcje "..numer_kolumny]; tab_parametry["opcje "..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local colspan=colspan2 or args["kolumny "..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; local naglowek=args["nagłówek "..numer_kolumny]; tab_parametry["kolumny "..numer_kolumny]="^%d+$"; local col=colspan and tonumber(colspan) or 1; colspan=(col>1) and col or 1; if(colspan>1)then table.insert(tabnaglowka,{numer_kolumny,numer_kolumny+colspan-1,"_"..numer_kolumny}) end; local czy_id=parametry_modul.CzyTak(args["id "..numer_kolumny]); local czy_klasa=parametry_modul.CzyTak(args["klasa "..numer_kolumny]); local czy_styl=parametry_modul.CzyTak(args["styl "..numer_kolumny]); local czy_opcje=parametry_modul.CzyTak(args["opcje "..numer_kolumny]); str=str.."<div" ..(czy_id and " id=\""..args["id "..numer_kolumny].."\"" or "") .." class=\"nagłówek nagłówek-tytuł kolumna-"..numer_kolumny.." "..(args["klasa "..numer_kolumny] or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "").."grid-area:".."_"..numer_kolumny..";"..(args["styl "..numer_kolumny] or "").."\"" ..">" --..(czy_opcje and " "..args["opcje "..numer_kolumny] or "") --..((kolumny and not colspan2) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl or czy_klasa or kolumny) and " | " or " ") .."<div class=\"gridtabela-dziecko\">"..((naglowek and (mw.ustring.match(naglowek,"^{|") or mw.ustring.match(naglowek,"^[%*#:;]")) and ("\n"..naglowek) or naglowek) or "{{{nagłówek "..numer_kolumny.."}}}") .."</div>" .."</div>"; tab_parametry["id "..numer_kolumny]=""; tab_parametry["klasa "..numer_kolumny]=""; tab_parametry["styl "..numer_kolumny]=""; tab_parametry["opcje "..numer_kolumny]=""; tab_parametry["nagłówek "..numer_kolumny]="!"; end; end; end; local function ColAndRowSpan(tab,numer_wiersza,numer_kolumny) for k=1,#tab,1 do local tab2=tab[k]; if(tab2[1]<=numer_wiersza)and(tab2[2]<=numer_kolumny)and(tab2[3]>=numer_wiersza)and(tab2[4]>=numer_kolumny)then return true,tab2[5]; end; end; return false; end; local tab={}; for numer_wiersza=1,liczba_wierszy,1 do --local id_wiersza=args["id wiersza "..numer_wiersza]; local klasa_wiersza=args["klasa wiersza "..numer_wiersza]; local styl_wiersza=args["styl wiersza "..numer_wiersza]; local opcje_wiersza=args["opcje wiersza "..numer_wiersza]; --tab_parametry["id wiersza "..numer_wiersza]=""; tab_parametry["klasa wiersza "..numer_wiersza]=""; tab_parametry["styl wiersza "..numer_wiersza]=""; tab_parametry["opcje wiersza "..numer_wiersza]=""; --local czy_id=parametry_modul.CzyTak(id_wiersza); local czy_klasa=parametry_modul.CzyTak(klasa_wiersza); local czy_styl=parametry_modul.CzyTak(styl_wiersza); local czy_opcje=parametry_modul.CzyTak(opcje_wiersza); local str_grid2=""; for numer_kolumny=1,liczba_kolumn,1 do local czypominac,grid_area=ColAndRowSpan(tab,numer_wiersza,numer_kolumny); str_grid2=""..str_grid2..(grid_area or ("_"..numer_wiersza.."_"..numer_kolumny)).." "; if(not czypominac)then local opcje=args["opcje "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["opcje "..numer_wiersza.."_"..numer_kolumny]=""; local colspan2=opcje and mw.ustring.match(opcje,"colspan%s*=%s*\"%s*(%d+)%s*\"") or nil local colspan=colspan2 or args["kolumny "..numer_wiersza.."_"..numer_kolumny]; local kolumny=parametry_modul.CzyTak(colspan) and colspan or nil; --- local rowspan2=opcje and mw.ustring.match(opcje,"rowspan%s*=%s*\"%s*(%d+)%s*\"") or nil; local rowspan=rowspan2 or args["wiersze "..numer_wiersza.."_"..numer_kolumny]; local wiersze=parametry_modul.CzyTak(rowspan) and rowspan or nil; ---- if(not colspan2)then tab_parametry["kolumny "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if(not rowspan2)then tab_parametry["wiersze "..numer_wiersza.."_"..numer_kolumny]="^%d+$";end; if((not wiersze)and(not kolumny))then local scal=args["scal "..numer_wiersza.."_"..numer_kolumny]; if(parametry_modul.CzyTak(scal))then wiersze,kolumny=mw.ustring.match(scal,"^(%d+)%s+(%d+)$"); end; tab_parametry["scal "..numer_wiersza.."_"..numer_kolumny]="^%d+%s+%d+$"; end; local col=kolumny and tonumber(kolumny) or 1; local row=wiersze and tonumber(wiersze) or 1; colspan=(col>1)and col or 1; rowspan=(row>1) and row or 1; if(((colspan>1)and(rowspan>1))or((colspan>1)and(rowspan==1))or((colspan==1)and(rowspan>1)))then table.insert(tab,{numer_wiersza,numer_kolumny,numer_wiersza+rowspan-1,numer_kolumny+colspan-1,"_"..numer_wiersza.."_"..numer_kolumny}) end; opcje=parametry_modul.CzyTak(opcje)and opcje or nil; local komorka=args["komórka "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["komórka "..numer_wiersza.."_"..numer_kolumny]="!"; tab_parametry["nagłówek "..numer_wiersza.."_"..numer_kolumny]=""; local jaka_komorki; if(parametry_modul.CzyTak(args["nagłówek "..numer_wiersza.."_"..numer_kolumny]))then jaka_komorki="nagłówek"; else jaka_komorki="komórka"; end; local id_komorki=args["id "..numer_wiersza.."_"..numer_kolumny]; local klasa_komorki=args["klasa "..numer_wiersza.."_"..numer_kolumny]; local styl_komorki=args["styl "..numer_wiersza.."_"..numer_kolumny]; local bez_pionu=args["bez pionu "..numer_wiersza.."_"..numer_kolumny]; tab_parametry["id "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["klasa "..numer_wiersza.."_"..numer_kolumny]=""; tab_parametry["styl "..numer_wiersza.."_"..numer_kolumny]="" tab_parametry["bez pionu "..numer_wiersza.."_"..numer_kolumny]=""; local czy_id_komorki=parametry_modul.CzyTak(id_komorki); local czy_klasa_komorki=parametry_modul.CzyTak(klasa_komorki); local czy_styl_komorki=parametry_modul.CzyTak(styl_komorki); local czy_opcje=parametry_modul.CzyTak(opcje); local czy_bez_pionu=parametry_modul.CzyTak(bez_pionu); str=str.."<div" ..((czy_id_komorki) and " id=\""..id_komorki.."\"" or "") .." class=\""..(klasa_wiersza or "").." "..jaka_komorki.." ".."wiersz-"..numer_wiersza.." kolumna-"..numer_kolumny.." "..(klasa_komorki or "").."\"" .." style=\""..(border and ("border-width:"..border.."px;") or "")..(((cellspacing or 0)>0) and "margin:0;" or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl_wiersza or "")..";grid-area:_"..numer_wiersza.."_"..numer_kolumny..";"..(styl_komorki or "").."\"" ..(opcje_wiersza or "").." "..(opcje or "")..">" --..((not rowspan2 and wiersze) and " rowspan=\""..wiersze.."\"" or "") --..((not colspan2 and kolumny) and " colspan=\""..kolumny.."\"" or "") --..((czy_opcje or czy_styl_komorki or czy_klasa_komorki or wiersze or kolumny) and ((not czy_bez_pionu) and " | " or " ") or " ") .."<div class=\"gridtabela-dziecko\">"..((komorka and (mw.ustring.match(komorka,"^{|") or mw.ustring.match(komorka,"^[%*#:;]")) and ("\n"..komorka) or komorka) or "{{{komórka "..numer_wiersza.."_"..numer_kolumny.."}}}") .."</div>" .."</div>"; end; end; str_grid=str_grid.."'"..str_grid2.."'\n"; end; local grid_rozmiar_template="grid-template-columns:"; for numer_kolumny=1,liczba_kolumn,1 do grid_rozmiar_template=grid_rozmiar_template.." auto"; end; local str_tabela="<div"..(parametry_modul.CzyTak(id)and " id=\""..id.."\"" or "") .." class=\""..(((tonumber(cellspacing)or 0) > 0)and "cellspacing " or "")..klasa.."\"" .." style=\"display:grid;grid-template-areas:"..(str_grid_tytul or "")..str_grid..";"..grid_rozmiar_template..";"..";gap:"..(cellspacing or 0).."px;" ..(((cellspacing or 0)>0) and "margin:0;" or "")..(border and ("border-width:"..border.."px;") or "")..(cellpadding and ("padding:"..cellpadding.."px;") or "")..(styl and (styl..";") or "").."\"" ..(parametry_modul.CzyTak(atrybuty)and " "..atrybuty or "") ..">"..(str_tytul or "")..str.."</div>"; if(parametry_modul.CzyTak(pozycja))then local nazwa_klasy="";local tak=false; if(pozycja=="prawo")then nazwa_klasy="tabela-prawo"; tak=true; elseif(pozycja=="lewo")then nazwa_klasy="tabela-lewo"; tak=true; elseif(pozycja=="centruj")then nazwa_klasy="tabela-centruj"; tak=true; elseif(pozycja=="brak")then nazwa_klasy="tabela-brak"; tak=true; end; if(tak)then tab_parametry["id op"]=""; tab_parametry["klasa op"]=""; tab_parametry["styl op"]=""; local id_op=args["id op"]; local klasa_op=args["klasa op"]; local styl_op=args["styl op"]; str_tabela="<div "..((parametry_modul.CzyTak(id_op))and("id=\""..id_op.."\"")or("")).." class=\"gridtabela-moduł-op "..nazwa_klasy.." "..((parametry_modul.CzyTak(klasa_op)) and (klasa_op) or "").."\" "..((parametry_modul.CzyTak(styl_op))and("style=\""..styl_op.."\"") or "")..">\n"..str_tabela.."\n</div>"; end; end; local sprawdz_modul=require("Module:Sprawdź"); tab_parametry[""]="problemy-w-szablonie-%s {{Kategoria|Szablon %s do sprawdzenia}}"; local frame2=frame:getParent():newChild{args=tab_parametry,}; local fun_parametry=sprawdz_modul.Parametry(frame2) or ""; return str_tabela..(((fun_parametry)and(fun_parametry~="")) and ("\n"..fun_parametry) or ""); end; return p; gck73hop7sv0fw325cvhibhe2sbfoj1 Szablon:GridTabela 10 64409 559248 2026-10-14T14:02:15Z Persino 2851 Utworzono nową stronę „{{#invoke:Brudnopis/Persino/GridTabela}}” 559248 wikitext text/x-wiki {{#invoke:Brudnopis/Persino/GridTabela}} i6eg6zyvz62igcpe4iefo77vb34a34a 559249 559248 2026-10-14T14:02:39Z Persino 2851 559249 wikitext text/x-wiki {{#invoke:Brudnopis/Persino/GridTabela|Tabela}} imxie5uwtr0oyxvdl04yroezb5zpuhk 559250 559249 2026-10-14T14:03:11Z Persino 2851 559250 wikitext text/x-wiki <includeonly>{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly> 4yye1cprduxqhilz3avx61da1yzxvpt 559251 559250 2026-10-14T14:05:15Z Persino 2851 559251 wikitext text/x-wiki <includeonly>{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2 |komórka 1_1=1.1 |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> p5r40bq5591s3nbwduglp2dichxbm95 559253 559251 2026-10-14T14:55:10Z Persino 2851 559253 wikitext text/x-wiki <includeonly>{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2 |nagłówek 1=1|nagłówek 2=2 |komórka 1_1=1.1 |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> jqu4a9fcqv8f1tgcwmyvlyzyjhdwqmx 559256 559253 2026-10-14T15:43:11Z Persino 2851 559256 wikitext text/x-wiki <includeonly>{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2 |nagłówek 1=1|nagłówek 2=2 |komórka 1_1=1.1|nagłówek 1_1=tak |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> 69kqgya764ljm9nlpx0wa9p50go9cxy 559257 559256 2026-10-14T15:56:12Z Persino 2851 559257 wikitext text/x-wiki <includeonly>{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2|klasa=gridtable |nagłówek 1=1|nagłówek 2=2 |komórka 1_1=1.1|nagłówek 1_1=tak |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> 1pngzuzfz6seqtrln39zy32epruehf5 559260 559257 2026-10-14T16:04:58Z Persino 2851 559260 wikitext text/x-wiki <includeonly><templatestyles src="Moduł:Brudnopis/Persino/GridTabela/styles.css"/><!-- -->{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2|klasa=gridtable |nagłówek 1=1|nagłówek 2=2 |komórka 1_1=1.1|nagłówek 1_1=tak |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> hnocici3t3rd6q363ryt92o5n8pjelt 559279 559260 2026-10-14T18:44:05Z Persino 2851 Persino przeniósł(-osła) stronę [[Szablon:Brudnopis/Persino/GridTabela]] do [[Szablon:GridTabela]], bez pozostawienia przekierowania pod starym tytułem 559260 wikitext text/x-wiki <includeonly><templatestyles src="Moduł:Brudnopis/Persino/GridTabela/styles.css"/><!-- -->{{#invoke:Brudnopis/Persino/GridTabela|Tabela}}</includeonly><noinclude> {{Brudnopis/Persino/GridTabela|liczba wierszy=2|liczba kolumn=2|klasa=gridtable |nagłówek 1=1|nagłówek 2=2 |komórka 1_1=1.1|nagłówek 1_1=tak |komórka 1_2=1.2 |komórka 2_1=2.1 |komórka 2_2=2.2 }} </noinclude> hnocici3t3rd6q363ryt92o5n8pjelt 559280 559279 2026-10-14T18:45:01Z Persino 2851 559280 wikitext text/x-wiki <includeonly><templatestyles src="Moduł:Brudnopis/Persino/GridTabela/styles.css"/><!-- -->{{#invoke:GridTabela|GridTabela}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> n50dx5ab3xjfnqbnem1ud3isqiksgmd 559282 559280 2026-10-14T18:47:22Z Persino 2851 559282 wikitext text/x-wiki <includeonly><templatestyles src="Module:GridTabela/styles.css"/><!-- -->{{#invoke:GridTabela|GridTabela}}</includeonly><noinclude>{{Dokumentacja}}</noinclude> 23amy329bcw80t3n2wepoo37o8sw3f5 Moduł:GridTabela/styles.css 828 64410 559259 2026-10-14T16:03:24Z Persino 2851 Utworzono nową stronę „div.gridtabela-moduł.gridtable{ width:auto; border: 1px #aaaaaa solid; } div.gridtabela-moduł.gridtable > nagłówek, div.gridtabela-moduł.gridtable > komórka{ border: 1px #aaaaaa solid; padding: 0.2em; }” 559259 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; border: 1px #aaaaaa solid; } div.gridtabela-moduł.gridtable > nagłówek, div.gridtabela-moduł.gridtable > komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } gnc0oz0gvuh9lasudbjzarnh0z8zvjs 559261 559259 2026-10-14T16:05:34Z Persino 2851 559261 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; border: 1px #aaaaaa solid; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } hrt3iqycjdk070i9cppxwuw8b5jual1 559262 559261 2026-10-14T16:17:03Z Persino 2851 559262 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.kolumna-2){ border-left:0; } pfqdvuqhs8nu9zgvi40ytec4x3ylm11 559263 559262 2026-10-14T16:17:31Z Persino 2851 559263 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.kolumna-1){ border-left:0; } 5u6f5f3qf0cat23v7nitlrfpqhhdlie 559266 559263 2026-10-14T16:25:50Z Persino 2851 559266 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } 1eosw54ylv0joqg1v6yh3g89bitho8v 559267 559266 2026-10-14T16:26:58Z Persino 2851 559267 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } rwu9qpob7qkcq9gh8ukfp3k86ta21pw 559268 559267 2026-10-14T16:27:54Z Persino 2851 559268 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } gfrq9zf60f3p6guztupmn679d99t3ej 559269 559268 2026-10-14T16:30:14Z Persino 2851 559269 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } ciqrqclvyehj6vk5l0bnp4li8fppnsl 559277 559269 2026-10-14T18:42:09Z Persino 2851 Persino przeniósł(-osła) stronę [[Moduł:Brudnopis/Persino/GridTabela/styles.css]] do [[Moduł:GridTabela/styles.css]], bez pozostawienia przekierowania pod starym tytułem 559269 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } ciqrqclvyehj6vk5l0bnp4li8fppnsl 559284 559277 2026-10-14T18:57:54Z Persino 2851 559284 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } 2caokntxkd9zzsz2kurnvtbwsh05xtw 559286 559284 2026-10-14T19:11:08Z Persino 2851 559286 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } e7spi25hdd0baudew4dv1wvg8ojquqk 559287 559286 2026-10-14T19:11:55Z Persino 2851 559287 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } iv5t9nt9bxpxl3v0zsdcvkr3k1locap 559288 559287 2026-10-14T19:21:24Z Persino 2851 559288 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable > div.nagłówek > grditabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } lk41d12je9oj3yysqzvpg1aq5yc87kh 559289 559288 2026-10-14T19:23:38Z Persino 2851 559289 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek > gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } h8enpxqx87hc2miga3dulentojeawv6 559290 559289 2026-10-14T19:24:36Z Persino 2851 559290 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } 7wf6b5m93opq6mencqpj5uhcpvsosbv 559308 559290 2026-10-14T23:13:31Z Persino 2851 559308 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } afj6vxedcuqhsb9beuygr7bb015jurm 559312 559308 2026-10-14T23:26:22Z Persino 2851 559312 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } 5w9nba4edzwksknbx0l8t0e7jy3fhzk 559322 559312 2026-10-14T23:47:19Z Persino 2851 559322 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } 87rcd8ep1w37e84ad6hze7f9knx3rqc 559323 559322 2026-10-14T23:48:07Z Persino 2851 559323 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } d0hpn2ozf6q4h7r8fhaz1ty7koy61ja 559326 559323 2026-10-15T00:02:20Z Persino 2851 559326 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ border-bottom:0; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ border-top:0; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ border-left:0; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } oenspc76oqs0qn28g65wemvoan2rori 559330 559326 2026-10-15T00:14:12Z Persino 2851 559330 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } d0hpn2ozf6q4h7r8fhaz1ty7koy61ja 559356 559330 2026-10-15T02:58:23Z Persino 2851 559356 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } q54j8918p2z4kpk3l7rasvgwqwl6ft7 559357 559356 2026-10-15T03:05:36Z Persino 2851 559357 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł), div.gridtabela-moduł.gridtable > div.komórka{ word-wrap: break-word; word-break: normal; hyphens: auto; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } 9cldugqa2gpmt8bb0waztz1xddcond6 559358 559357 2026-10-15T03:06:08Z Persino 2851 559358 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtabela > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtabela > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } q54j8918p2z4kpk3l7rasvgwqwl6ft7 559359 559358 2026-10-15T03:11:22Z Persino 2851 559359 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtablae > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } qwdwxpxot6rjbukbfytth6yi35r3ijd 559360 559359 2026-10-15T03:12:50Z Persino 2851 559360 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } 0f47zvhghrpc9a2n95856b617e939uh 559361 559360 2026-10-15T03:22:34Z Persino 2851 559361 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-modul.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-modul.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ rsp4zuxk3fdnz03px6d0n4shcu1j7ih 559362 559361 2026-10-15T03:34:53Z Persino 2851 559362 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ ba5y4yqwl10hbfxfsu7duwmskv30qrg 559384 559362 2026-10-15T05:46:49Z Persino 2851 559384 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ lpgw3smrp3mwmzm8uob35uww59ve80c 559385 559384 2026-10-15T05:51:56Z Persino 2851 559385 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ fyn62s69afnl3az9ehnlevyie3t0brd 559386 559385 2026-10-15T05:55:33Z Persino 2851 559386 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; font-size:inherit; line-height:inherit; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ 9uge0ygknmdr39fqy01in7p7r7wlwj2 559389 559386 2026-10-15T06:35:07Z Persino 2851 559389 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; /*border: 1px #aaaaaa solid;*/ } div.gridtabela-moduł.gridtable{ border: 1px #aaaaaa solid; margin:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; font-size:inherit; line-height:inherit; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ cv7htksb28t7mk4aedthhnghq8x4rjd 559390 559389 2026-10-15T06:38:43Z Persino 2851 559390 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; } div.gridtabela-moduł.gridtable{ border: 1px #aaaaaa solid; margin:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; font-size:inherit; line-height:inherit; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ o7leewlvxztibxe0rahf0xf53lxjuip 559391 559390 2026-10-15T06:43:25Z Persino 2851 559391 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; } div.gridtabela-moduł.gridtable{ /*border: 1px #aaaaaa solid; margin:-1px;*/ } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; font-size:inherit; line-height:inherit; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ 0do2p6344prcecbeo4bdom0okhayfzn 559398 559391 2026-10-15T07:16:05Z Persino 2851 559398 sanitized-css text/css div.gridtabela-moduł.gridtable{ width:auto; } div.gridtabela-moduł.gridtable.cellspacing{ border: 1px #aaaaaa solid; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ border: 1px #aaaaaa solid; padding: 0.2em; } div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; } div.gridtabela-moduł.gridtable, div.gridtabela-moduł.gridtable > div.tytuł, div.gridtabela-moduł.gridtable > div.nagłówek, div.gridtabela-moduł.gridtable > div.komórka{ box-sizing:border-box; } div.gridtabela-moduł.gridtable > div.tytuł{ display:flex; flex-direction:column; align-items: stretch; justify-content: center; text-align: center; } div.gridtabela-moduł.gridtable > div.tytuł > div.gridtabela-dziecko{ font-weight:bold; font-size:inherit; line-height:inherit; } div.gridtabela-moduł.gridtable > div.nagłówek{ background: #f2f2f2; text-align: center; } div.gridtabela-moduł.gridtable > div.komórka{ background: white; color:black; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł{ margin-bottom:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł:not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka.nagłówek-tytuł:not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.wiersz-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.wiersz-1){ margin-top:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł):not(.kolumna-1), div.gridtabela-moduł.gridtable > div.komórka:not(.nagłówek-tytuł):not(.kolumna-1){ margin-left:-1px; } div.gridtabela-moduł.gridtable > div.nagłówek.nagłówek-tytuł > div.gridtabela-dziecko{ font-weight:bolder; } div.gridtabela-moduł.gridtable > div.nagłówek:not(.nagłówek-tytuł) > div.gridtabela-dziecko{ font-weight:lighter; } div.gridtabela-moduł.gridtable > div.nagłówek > div.gridtabela-dziecko, div.gridtabela-moduł.gridtable > div.komórka > div.gridtabela-dziecko{ word-wrap: break-word; word-break: normal; hyphens: auto; } /*{{Kategoria|Szablony - arkusze stylów}}*/ rohh373rp5lk2z9fknue8vpspixwmij Szablon:Tabela/opis/Zobacz też 10 64414 559363 2026-10-15T03:53:57Z Persino 2851 Utworzono nową stronę „<includeonly> === Szablony generujące lub tworzące tabelę w języku wikikodu === ; Tabelki manualne{{dk}} * {{s|Tytuł}} - szablon tytułu tabeli, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}, * {{s|Komórka}} - szablon komórki wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Wiersz}}, * {{s|Wiersz}} - szablon wiersza wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}…” 559363 wikitext text/x-wiki <includeonly> === Szablony generujące lub tworzące tabelę w języku wikikodu === ; Tabelki manualne{{dk}} * {{s|Tytuł}} - szablon tytułu tabeli, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}, * {{s|Komórka}} - szablon komórki wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Wiersz}}, * {{s|Wiersz}} - szablon wiersza wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}, * {{s|Tabelka}} - szablon generuje tabelkę, używa do tego szablonów: {{s|Komórka}} i {{s|Wiersz}}. ; Tabele automatyczne{{dk}} * {{s|Tabela}} - szablon na podstawie swoich parametrów generuje wiki-tabelę, * {{s|GridTabela}} - szablon na podstawie swoich parametrów generuje grid-tabelkę.<noinclude><!-- -->{{Dokumentacja|zawartość=Szablon powtarzalny do wsadzania pod sekcję: '''Zobacz też''', do opisu szablonów związanych z {{s|Tabela}}.}}<!-- -->{{Kategoria|Szablony pomocnicze potrzebne do dokumentacji szablonów}}<!-- --></noinclude> 7u4x2n11zmp0i6b3z5cl7kjgvr79ak7 559364 559363 2026-10-15T03:54:55Z Persino 2851 559364 wikitext text/x-wiki <includeonly> === Szablony generujące lub tworzące tabelę w języku wikikodu === ; Tabelki manualne{{dk}} * {{s|Tytuł}} - szablon tytułu tabeli, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}, * {{s|Komórka}} - szablon komórki wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Wiersz}}, * {{s|Wiersz}} - szablon wiersza wstawianej, jako część pierwszego parametru numerowanego do szablonu {{s|Tabelka}}, * {{s|Tabelka}} - szablon generuje tabelkę, używa do tego szablonów: {{s|Komórka}} i {{s|Wiersz}}. ; Tabele automatyczne{{dk}} * {{s|Tabela}} - szablon na podstawie swoich parametrów generuje wiki-tabelę, * {{s|GridTabela}} - szablon na podstawie swoich parametrów generuje grid-tabelkę.<!-- --></includeonly><noinclude><!-- -->{{Dokumentacja|zawartość=Szablon powtarzalny do wsadzania pod sekcję: '''Zobacz też''', do opisu szablonów związanych z {{s|Tabela}}.}}<!-- -->{{Kategoria|Szablony pomocnicze potrzebne do dokumentacji szablonów}}<!-- --></noinclude> 6dxiepyal37b1lvlx6hc2o5pltzaoyf Szablon:GridTabela/opis 10 64415 559366 2026-10-15T03:57:02Z Persino 2851 Utworzono nową stronę „{{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻE…” 559366 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> </includeonly> qdjh8gdajtmym6fzx3wqo9gbgazdqkf 559372 559366 2026-10-15T04:09:20Z Persino 2851 /* Zobacz też */ 559372 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek generujące wikikod | Szablony formułujące tabele | Szablony specjalne }} </includeonly> asqmlaajsqw3mzmw6jimd1h7zjierp7 559387 559372 2026-10-15T06:03:37Z Persino 2851 /* Przykład */ 559387 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == ; Przykład pierwszy {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | liczba wierszy = 6 | liczba kolumn = 4 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład pierwszy|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład drugi {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | opcje 1 {{=}} width{{=}}25% | nagłówek 1 {{=}} Nagłówek 1 | opcje 2 {{=}} width{{=}}25% | nagłówek 2 {{=}} Nagłówek 2 | opcje 3 {{=}} width{{=}}25% | nagłówek 3 {{=}} Nagłówek 3 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład drugi|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład trzeci {{Pre| {{s|Tabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | styl nagłówka {{=}} background-color:pink; | opcje 1 {{=}} width{{=}}75% | kolumny 1 {{=}} 3 | nagłówek 1 {{=}} Nagłówek 1 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | styl 4 {{=}} background-color:red; | liczba wierszy {{=}} 7 | liczba kolumn {{=}} 4 | kolumny 1_1 {{=}} 2 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 {{=}} 2 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 {{=}} 3 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | scal 3_1 {{=}} 3 2 | styl 3_1 {{=}} color:red;background-color:yellow;text-align:right; | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | opcje 5_3 {{=}} colspan{{=}}"2" rowspan{{=}}"1" | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 {{=}} 3 | wiersze 6_1 {{=}} 2 | nagłówek 6_1 {{=}} tak | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 {{=}} color:blue; | styl 7_4 {{=}} background-color:grey; | komórka 7_4 {{=}} Komórka - wiersz 7 - kolumna 4 }} }} ; Wynik {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład trzeci|spis= {{PreNowiki| {{Tabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} }} }} == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek generujące wikikod | Szablony formułujące tabele | Szablony specjalne }} </includeonly> 818ll2t6sxkxjuxpjy2je1i6voxrbpc 559388 559387 2026-10-15T06:06:44Z Persino 2851 559388 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == ; Przykład pierwszy {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | liczba wierszy = 6 | liczba kolumn = 4 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład pierwszy|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład drugi {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | opcje 1 {{=}} width{{=}}25% | nagłówek 1 {{=}} Nagłówek 1 | opcje 2 {{=}} width{{=}}25% | nagłówek 2 {{=}} Nagłówek 2 | opcje 3 {{=}} width{{=}}25% | nagłówek 3 {{=}} Nagłówek 3 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład drugi|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład trzeci {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | styl nagłówka {{=}} background-color:pink; | opcje 1 {{=}} width{{=}}75% | kolumny 1 {{=}} 3 | nagłówek 1 {{=}} Nagłówek 1 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | styl 4 {{=}} background-color:red; | liczba wierszy {{=}} 7 | liczba kolumn {{=}} 4 | kolumny 1_1 {{=}} 2 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 {{=}} 2 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 {{=}} 3 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | scal 3_1 {{=}} 3 2 | styl 3_1 {{=}} color:red;background-color:yellow;text-align:right; | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | opcje 5_3 {{=}} colspan{{=}}"2" rowspan{{=}}"1" | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 {{=}} 3 | wiersze 6_1 {{=}} 2 | nagłówek 6_1 {{=}} tak | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 {{=}} color:blue; | styl 7_4 {{=}} background-color:grey; | komórka 7_4 {{=}} Komórka - wiersz 7 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład trzeci|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} }} }} == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek generujące wikikod | Szablony formułujące tabele | Szablony specjalne }} </includeonly> trw7joc4rf3vu9wtpcq7u68send2tke 559392 559388 2026-10-15T06:58:05Z Persino 2851 /* Przykład */ 559392 wikitext text/x-wiki {{Podstrona dokumentacji}} <!-- DODAWAJ KATEGORIE NA DOLE STRONY --> == Użycie == == Opis parametrów == == Przykład == ; Przykład pierwszy {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} cellspacing{{=}}0 cellpadding{{=}}3 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=0 cellpadding=3 | liczba wierszy = 6 | liczba kolumn = 4 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład pierwszy|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład drugi {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} cellspacing{{=}}0 cellpadding{{=}}3 | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | opcje 1 {{=}} width{{=}}25% | nagłówek 1 {{=}} Nagłówek 1 | opcje 2 {{=}} width{{=}}25% | nagłówek 2 {{=}} Nagłówek 2 | opcje 3 {{=}} width{{=}}25% | nagłówek 3 {{=}} Nagłówek 3 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | liczba wierszy {{=}} 6 | liczba kolumn {{=}} 4 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_2 {{=}} Komórka - wiersz 1 - kolumna 2 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | komórka 2_4 {{=}} Komórka - wiersz 2 - kolumna 4 | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_2 {{=}} Komórka - wiersz 3 - kolumna 2 | komórka 3_3 {{=}} Komórka - wiersz 3 - kolumna 3 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_1 {{=}} Komórka - wiersz 4 - kolumna 1 | komórka 4_2 {{=}} Komórka - wiersz 4 - kolumna 2 | komórka 4_3 {{=}} Komórka - wiersz 4 - kolumna 3 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | komórka 5_1 {{=}} Komórka - wiersz 5 - kolumna 1 | komórka 5_2 {{=}} Komórka - wiersz 5 - kolumna 2 | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | komórka 5_4 {{=}} Komórka - wiersz 5 - kolumna 4 | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_2 {{=}} Komórka - wiersz 6 - kolumna 2 | komórka 6_3 {{=}} Komórka - wiersz 6 - kolumna 3 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład drugi|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=0 cellpadding=3 | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | opcje 1 = width=25% | nagłówek 1 = Nagłówek 1 | opcje 2 = width=25% | nagłówek 2 = Nagłówek 2 | opcje 3 = width=25% | nagłówek 3 = Nagłówek 3 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | liczba wierszy = 6 | liczba kolumn = 4 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_2 = Komórka - wiersz 1 - kolumna 2 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | komórka 2_4 = Komórka - wiersz 2 - kolumna 4 | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_2 = Komórka - wiersz 3 - kolumna 2 | komórka 3_3 = Komórka - wiersz 3 - kolumna 3 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_1 = Komórka - wiersz 4 - kolumna 1 | komórka 4_2 = Komórka - wiersz 4 - kolumna 2 | komórka 4_3 = Komórka - wiersz 4 - kolumna 3 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | komórka 5_1 = Komórka - wiersz 5 - kolumna 1 | komórka 5_2 = Komórka - wiersz 5 - kolumna 2 | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | komórka 5_4 = Komórka - wiersz 5 - kolumna 4 | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_2 = Komórka - wiersz 6 - kolumna 2 | komórka 6_3 = Komórka - wiersz 6 - kolumna 3 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 }} }} }} ---- ; Przykład trzeci {{Pre| {{s|GridTabela | styl {{=}} width:100%;text-align:center;margin-right:0; | klasa {{=}} gridtable | atrybuty {{=}} cellspacing{{=}}3 cellpadding{{=}}3 border{{=}}"1" | styl tytułu {{=}} color:white;background-color:black; | tytuł {{=}} Tytuł tabeli | styl nagłówka {{=}} background-color:pink; | opcje 1 {{=}} width{{=}}75% | kolumny 1 {{=}} 3 | nagłówek 1 {{=}} Nagłówek 1 | opcje 4 {{=}} width{{=}}25% | nagłówek 4 {{=}} Nagłówek 4 | styl 4 {{=}} background-color:red; | liczba wierszy {{=}} 7 | liczba kolumn {{=}} 4 | kolumny 1_1 {{=}} 2 | komórka 1_1 {{=}} Komórka - wiersz 1 - kolumna 1 | komórka 1_3 {{=}} Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 {{=}} 2 | komórka 1_4 {{=}} Komórka - wiersz 1 - kolumna 4 | komórka 2_1 {{=}} Komórka - wiersz 2 - kolumna 1 | komórka 2_2 {{=}} Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 {{=}} 3 | komórka 2_3 {{=}} Komórka - wiersz 2 - kolumna 3 | scal 3_1 {{=}} 3 2 | styl 3_1 {{=}} color:red;background-color:yellow;text-align:right; | komórka 3_1 {{=}} Komórka - wiersz 3 - kolumna 1 | komórka 3_4 {{=}} Komórka - wiersz 3 - kolumna 4 | komórka 4_4 {{=}} Komórka - wiersz 4 - kolumna 4 | opcje 5_3 {{=}} colspan{{=}}"2" rowspan{{=}}"1" | komórka 5_3 {{=}} Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 {{=}} 3 | wiersze 6_1 {{=}} 2 | nagłówek 6_1 {{=}} tak | komórka 6_1 {{=}} Komórka - wiersz 6 - kolumna 1 | komórka 6_4 {{=}} Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 {{=}} color:blue; | styl 7_4 {{=}} background-color:grey; | komórka 7_4 {{=}} Komórka - wiersz 7 - kolumna 4 }} }} ; Wynik {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=3 cellpadding=3 border="1" | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} ; Kod {{Tabela nawigacyjna|styl=width:100%|tytuł=Szablon tabela - przykład trzeci|spis= {{PreNowiki| {{GridTabela | styl = width:100%;text-align:center;margin-right:0; | klasa = gridtable | atrybuty = cellspacing=3 cellpadding=3 border="1" | styl tytułu = color:white;background-color:black; | tytuł = Tytuł tabeli | styl nagłówka = background-color:pink; | opcje 1 = width=75% | kolumny 1 = 3 | nagłówek 1 = Nagłówek 1 | opcje 4 = width=25% | nagłówek 4 = Nagłówek 4 | styl 4 = background-color:red; | liczba wierszy = 7 | liczba kolumn = 4 | kolumny 1_1 = 2 | komórka 1_1 = Komórka - wiersz 1 - kolumna 1 | komórka 1_3 = Komórka - wiersz 1 - kolumna 3 | wiersze 1_4 = 2 | komórka 1_4 = Komórka - wiersz 1 - kolumna 4 | komórka 2_1 = Komórka - wiersz 2 - kolumna 1 | komórka 2_2 = Komórka - wiersz 2 - kolumna 2 | wiersze 2_3 = 3 | komórka 2_3 = Komórka - wiersz 2 - kolumna 3 | scal 3_1 = 3 2 | styl 3_1 = color:red;background-color:yellow;text-align:right; | komórka 3_1 = Komórka - wiersz 3 - kolumna 1 | komórka 3_4 = Komórka - wiersz 3 - kolumna 4 | komórka 4_4 = Komórka - wiersz 4 - kolumna 4 | opcje 5_3 = colspan="2" rowspan="1" | komórka 5_3 = Komórka - wiersz 5 - kolumna 3 | kolumny 6_1 = 3 | wiersze 6_1 = 2 | nagłówek 6_1 = tak | komórka 6_1 = Komórka - wiersz 6 - kolumna 1 | komórka 6_4 = Komórka - wiersz 6 - kolumna 4 | styl wiersza 7 = color:blue; | styl 7_4 = background-color:grey; | komórka 7_4 = Komórka - wiersz 7 - kolumna 4 }} }} }} == Błędy == Błędy należy zgłaszać na stronie {{Kwestie techniczne}}. == Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) == <templatedata> { "params": { } } </templatedata> == Zobacz też == {{Tabela/opis/Zobacz też}} {{Szablony ramek formułujące kod}} {{BrClear}} <includeonly><!-- ++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII --> {{Kategorie | Szablony pudełek opartych o tabelki | Szablony pudełek tworzące tabele | Szablony ramek generujące wikikod | Szablony formułujące tabele | Szablony specjalne }} </includeonly> 2jyxjf9a9vmwvl96ix5mdv3xq5gfb0f