Wikibooks
plwikibooks
https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna
MediaWiki 1.47.0-wmf.7
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
Dyskusja:C/Czego potrzebujesz
1
28535
547069
504922
2026-06-20T15:29:08Z
Jsonformatter
37825
/* */ Odpowiedź
547069
wikitext
text/x-wiki
* Wie ktoś, gdzie można ściągnąć czysty gcc/MinGW, bez IDE? Wszystko miałem i tak pisać w vimie, chce tylko dodać funkcję kompilacji. naprawdę szukałem długo, ale ani na stronie producenta (która notabene odsyła do sourceforge) czy też nie daj boże na agregatorach zbierających oprogramowanie (softpedia) nie mogę niczego znaleźć. Z tego co wiem to waży co najmniej 100 MB, ale wszędzie są jakiś szajs z web-instalatorem po 100 KB, nieraz z badware w pakiecie. A ja nie mam na to ani pakietu internetowego ani chęci by z tego własnościowego akceleratora pobierania plików z ich serwerów korzystać. [[Wikipedysta:Kompowiec2|Kompowiec2]] ([[Dyskusja wikipedysty:Kompowiec2|dyskusja]]) 20:48, 6 lis 2014 (CET)
** Tzn. używasz MS Windows? Dawno nie ściągałem MinGW ani żadnego innego kompilatora pod windę. Może spróbuj [http://llvm.org/releases/download.html LLVM], to konkurencja dla GCC, ostatnio całkiem modna. Może opiszę ją w artykule. --[[Wikipedysta:Derbeth|Derbeth]] [[Dyskusja Wikipedysty:Derbeth|<sup>talk</sup>]] 11:50, 8 lis 2014 (CET)
**:LLVM is a solid alternative, but a standalone MinGW package would better suit users wanting a lightweight GCC setup.play [https://the-false-sun.org/] [[Wikipedysta:Jsonformatter|Jsonformatter]] ([[Dyskusja wikipedysty:Jsonformatter|dyskusja]]) 17:29, 20 cze 2026 (CEST)
39z2ortfcl244grlayz3k0wag68ci4p
Moduł:StronicowyParser/ZbieranieDanychStron
828
55009
547073
547049
2026-06-20T20:18:36Z
Persino
2851
547073
Scribunto
text/plain
local p={};
function p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,lista_dwuelementowa,kod)
if(lista_dwuelementowa)then
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then
tabela_elementow_strony_kodow[nazwa_obiektu]={};
tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(not uchwyty_bez_numeracji)then
tab_obiekt.uchwyty_bez_numeracji={};
uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
end;
uchwyty_bez_numeracji[kod]=lista_dwuelementowa;
end;
end;
function p.WydobywanieUchwytuZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,kod)
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then return nil;end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(uchwyty_bez_numeracji)then
return uchwyty_bez_numeracji[kod];
end;
end;
function p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
kod_uchwytu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(kod_uchwytu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or kod_uchwytu;
local html_modul=require("Module:Html");
kod_uchwytu=html_modul.DecodeHtml(kod_uchwytu,true);
if(kod_uchwytu~="")then
KtorySzablonMaZwracacKategorie(kod_uchwytu);
local lista_dwuelementowa={};
lista_dwuelementowa[1]=kod_uchwytu;
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_obiektu)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu])))then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_obiektu=true;
end;
if(tab_numer)then
tab_numer[nazwa_obiektu]=tab_numer[nazwa_obiektu]+1;
local numer=tab_numer[nazwa_obiektu];
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],numer,lista_dwuelementowa);
else
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],lista_dwuelementowa);
end;
return lista_dwuelementowa;
end;
end;
function p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,nazwa_obiektu, czy_artykul_korzystany,numer_numeracji,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local kod_uchwytu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[numer_numeracji];
if(kod_uchwytu)then
local lista_dwuelementowa=p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return lista_dwuelementowa;
end;
end;
function p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(nazwa_artykulu=="")then return;end;
local czy_element_wystepuje_w_tablicy=false;
local tablica_przestrzeni_wszystkiego=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron;
if(tablica_przestrzeni_wszystkiego)then
local tabela_przestrzeni_ksiazek=tablica_przestrzeni_wszystkiego[nazwa_przestrzeni];
if(tabela_przestrzeni_ksiazek)then
local tabela_ksiazek=tabela_przestrzeni_ksiazek[nazwa_przestrzeni_ksiazki]
if(tabela_ksiazek)then
local tab_ksiazki=tabela_ksiazek[nazwa_ksiazki];
if(tab_ksiazki)then
if(tab_ksiazki.spis)then
--czy_lista_niepusta=true;
for _,tab_value1 in ipairs(tab_ksiazki.spis)do
if(tab_value1[2])then
for _,nazwa_artykulu1 in ipairs(tab_value1[2])do
if(nazwa_artykulu1[1]==nazwa_artykulu)then
czy_element_wystepuje_w_tablicy=true;
break;
end;
end;
end;
if(czy_element_wystepuje_w_tablicy)then break;end;
end;
end;
end;
end;
end;
end;
if(not czy_element_wystepuje_w_tablicy)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwa_przestrzeni)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu~=nazwa_przestrzeni_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu~=nazwa_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=nazwa_artykulu))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni,nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych stron",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisu treści do korzystanych stron"))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisu treści do korzystanych stron");
end;
end;
end;
end;
end;
function p.PusteParametryReferencji(self, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu)
local czy_ksiazka_z_tylko_odstepami_lub_pusty=(nazwa_ksiazki)and (nazwa_ksiazki=="") or nil;
local czy_artykul_z_tylko_odstepami_lub_pusty=(nazwa_artykulu)and (nazwa_artykulu=="") or nil;
local czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty=(uchwyt_obiektu)and (uchwyt_obiektu=="") or nil;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1);
end;
end;
if(czy_artykul_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2);
end;
end;
if(czy_ksiazka_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3);
end;
end;
end;
function p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie,czy_inna_wartosc_tekst)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca,((not czy_inna_wartosc_tekst)and true or false));
--local ksiazkowe_modul=require("Module:Książkowe");
--pelna_nazwa_ksiazki=pelna_nazwa_ksiazki or ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"]();
--nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"]();
if((nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki)or(nazwa_artykulu))then
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwa_przestrzeni_ksiazki or ksiazkowe_modul["NazwaPrzestrzeniKsiążki"](nil,tabela_nazw);
local nazwa_ksiazki=nazwa_ksiazki or ksiazkowe_modul["NazwaTytułuKsiążki"](nil,tabela_nazw);
local nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"](nil,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false);
end;
end;
function p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,czy_szablon_pudelkowy_strony_zbiorczej,KtorySzablonMaZwracacKategorie)
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not nazwa_przestrzeni)and(not nazwa_jednostki))then return;end;
local parametry_modul=require("Module:Parametry");
if((nazwa_jednostki) and (nazwa_jednostki==""))then return;end;
local szablonowe_modul=require("Module:Szablonowe");
if((nazwa_jednostki and mw.ustring.match(nazwa_jednostki,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
or (nazwa_przestrzeni and mw.ustring.match(nazwa_przestrzeni,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
)then return;end;
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local html_modul=require("Module:Html");
if(nazwa_jednostki)then
nazwa_jednostki=html_modul.DecodeHtml(nazwa_jednostki,true);
end;
local tabela_nazw_art={};
local nazwa_jednostki=(nazwa_jednostki
and mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1")
or nil
) or ksiazkowe_modul["NazwaArtykułu"](nil,tabela_nazw_art);
if(nazwa_przestrzeni)then
nazwa_przestrzeni=html_modul.DecodeHtml(nazwa_przestrzeni,true);
end;
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw_art);
local strona=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local techniczne_modul=require("Module:Techniczne");
strona=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=strona,[2]=self.nazwa_modulu_biezaca,};
--strona=ksiazkowe_modul["PEŁNANAZWASTRONY"](strona);
local tabela_nazw={};
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
local nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw)));
local nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,nil,czy_szablon_pudelkowy_strony_zbiorczej);
end;
function p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_aktualna,bezuchwytowe)
local nazwa_artykulu=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[bezuchwytowe and 1 or 2];
local pelna_nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[bezuchwytowe and 2 or 3];
local parametry_modul=require("Module:Parametry");
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
if(nazwa_artykulu)then
nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",};
end;
local nazwa_ksiazki;local nazwa_przestrzeni_ksiazki;local nazwa_przestrzeni;
if(pelna_nazwa_ksiazki)then
pelna_nazwa_ksiazki=html_modul.DecodeHtml(pelna_nazwa_ksiazki,true);
local techniczne_modul=require("Module:Techniczne");
pelna_nazwa_ksiazki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=pelna_nazwa_ksiazki,[2]=nazwa_aktualna,};
----
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
pelna_nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)));
--pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
end;
return nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu;
end;
function p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_modulu_aktualna);
local nazwy_modul=require("Module:Nazwy");
local czy_inna_wartosc_tekst=true;
if((nazwa_artykulu)and(nazwa_ksiazki))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwy_modul["NazwaModułu"]("",nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or (ksiazkowe_modul["NazwaKsiążki"]()..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""));
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((not nazwa_artykulu)and(nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or ksiazkowe_modul["NazwaKsiążki"]();
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
else
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
end;
end;
function p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,nazwa_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,czy_pobierz)
local uchwyt_obiektu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[1];
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca);
----
local parametry_modul=require("Module:Parametry");
if(parametry_modul.CzyTak(uchwyt_obiektu))then
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
uchwyt_obiektu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(uchwyt_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or uchwyt_obiektu;
local html_modul=require("Module:Html");
uchwyt_obiektu=html_modul.DecodeHtml(uchwyt_obiektu,true);
end;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(parametry_modul.CzyTak(uchwyt_obiektu))then
nazwa_artykulu=(nazwa_artykulu or (nazwa_ksiazki and "" or nil));
if(nazwa_artykulu)then
if(nazwa_artykulu~="")then
if(not nazwa_ksiazki)then
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
elseif(nazwa_ksiazki=="")then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
end;
elseif((nazwa_ksiazki)and(nazwa_ksiazki~=""))then
nazwa_artykulu="";
elseif((nazwa_ksiazki)and(nazwa_ksiazki==""))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
else
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
end;
if((nazwa_przestrzeni~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)
or(nazwa_przestrzeni_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)
or(nazwa_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)
or(nazwa_artykulu~=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz);
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
elseif((uchwyt_obiektu)and(uchwyt_obiektu==""))then
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,nil);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu);
end;
KtorySzablonMaZwracacKategorie(uchwyt_obiektu);
end;
function p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
local linkobiekttab=tablica_zmiennych.linkobiekt[nazwa_obiektu];
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_linku)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](linkobiekttab)))then
local parametry_modul=require("Module:Parametry");
local nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
local nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
local nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
local nazwa_artykulu=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu;
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_linku=true;
end;
table.insert(linkobiekttab,uchwyt_obiektu);
if(czy_pobierz)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane)then
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane={};
end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane,{{nazwa_obiektu,uchwyt_obiektu,},{obiekt,kod,},});
end;
end;
function p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,__FUNKCJA)
local pudelko_modul=require("Module:Pudełko");
if(((nazwa_przestrzeni)and(((nazwa_przestrzeni~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni)))or(nazwa_przestrzeni=="")))
and((nazwa_przestrzeni_ksiazki)and(((nazwa_przestrzeni_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni_ksiazki)))or(nazwa_przestrzeni_ksiazki=="")))
and((nazwa_ksiazki)and(nazwa_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_ksiazki)))
and((nazwa_artykulu)and(((nazwa_artykulu~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_artykulu)))or(nazwa_artykulu=="")))
)then
if(__FUNKCJA)then
__FUNKCJA(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron"))then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron");
else
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy stron dołączanych do stron");
end;
end;
end;
end;
function p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz)
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,function()
local parametry_modul=require("Module:Parametry");
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(parametry_modul.CzyTak(nazwa_ksiazki))and(nazwa_artykulu))then
local tablica_zmiennych2={};
tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2={}
local tabela_listy_danych_analizy_ksiazki0,tablica_zmiennych2,czy_inna=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,tablica_zmiennych2);
if(tabela_listy_danych_analizy_ksiazki0)then
if((not czy_inna)or(not tablica_zmiennych2))then return;end;
local stronicowyparser_szablony_tekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
local JuzPoliczone=function()
if(czy_pobierz)then
stronicowyparser_szablony_tekstu_modul.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,false);
end;
if(not tablica_zmiennych2.dane_juz_policzone)then tablica_zmiennych2.dane_juz_policzone={};end;
local tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
if(not tab_nazwa_obiektu)then
tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]={};
tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
end;
local tab_uchwyt=tab_nazwa_obiektu[uchwyt_obiektu];
if(tab_uchwyt)then
return true;
end;
tab_nazwa_obiektu[uchwyt_obiektu]=true;
return false;
end;
if(not parametry_modul.CzyTak(tabela_listy_danych_analizy_ksiazki0))then
local czy_policzone=JuzPoliczone();
if(czy_policzone)then
return;
end;
else
JuzPoliczone();
end;
stronicowyparser_szablony_tekstu_modul.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2);
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
local czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2=tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu];
local CzyLink=czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2.CzyLink;
local ile_razy=0;
if(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2)then
for _, parametry_obiektu in ipairs(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2) do
if(parametry_obiektu[1]==uchwyt_obiektu)then
ile_razy=ile_razy+1;
if(ile_razy>1)then break;end;
end;
end;
end
if(ile_razy~=1)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu);
end;
p.PusteParametryReferencji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera");
end;
end;
else
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
end);
end;
function p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, czy_artykul_korzystany,tablica_zmiennych,czy_szablon_pudelkowy_strony_zbiorczej)
local function __FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni])then self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]={};end;
local tablica_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(not tablica_przestrzeni[nazwa_przestrzeni_ksiazki])then tablica_przestrzeni[nazwa_przestrzeni_ksiazki]={};end;
local tablica_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki];
if(not tablica_przestrzeni_ksiazki[nazwa_ksiazki])then tablica_przestrzeni_ksiazki[nazwa_ksiazki]={};end;
local tablica_ksiazki=tablica_przestrzeni_ksiazki[nazwa_ksiazki];
if(not tablica_ksiazki.lista_podstron_woluminu)then tablica_ksiazki.lista_podstron_woluminu={};end;
if(nazwa_artykulu)then
if(not tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu])then tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu]={};end;
local artykul_analizowany=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu];
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany;
else
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki;
end;
end;
local function __FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not czy_artykul_korzystany)then
if(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni and self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu)then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
return 0,nil,nil,nil,nil,nil,self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron,false;
else
if(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=true;
end;
end;
else
return nil;
end;
end;
if(self.tabela_listy_danych_analizy_ksiazki)then
if(self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron)then
local tabela_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(tabela_przestrzeni)then
local tabela_przestrzeni_ksiazki=tabela_przestrzeni[nazwa_przestrzeni_ksiazki];
if(tabela_przestrzeni_ksiazki)then
local tabela_ksiazka=tabela_przestrzeni_ksiazki[nazwa_ksiazki];
if(tabela_ksiazka)then
local lista_artykolow=tabela_ksiazka.lista_podstron_woluminu;
if(lista_artykolow)then
local tabela_artykul=lista_artykolow[nazwa_artykulu];
if(tabela_artykul)then
local dane_zebrane_ze_stron=tabela_artykul.dane_zebrane_ze_stron;
return 0,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,true;
end;
end;
end;
end;
end;
else
return nil;
end;
else
return nil;
end;
return true;
end;
local nazwy_modul=require("Module:Nazwy");
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,czy_inna=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local function StronaSubstFunkcja(tabela_artykul,spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((czy_szablon_pudelkowy_strony_zbiorczej)and(not czy_artykul_korzystany)and(tabela_artykul)and(not tabela_artykul.strona_zbiorcza))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return "tak";end;local NieFun=function(frame) return "";end;
tabela_artykul.strona_zbiorcza=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
end;
if(not wartosc_wyniku)then
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
end;
----
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((nazwa_przestrzeni~=nazwy_np_modul.Main)
and(nazwa_przestrzeni~=nazwy_np_modul.Wikijunior)
and((nazwa_przestrzeni~=nazwy_np_modul.User)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^([^/]+)$")))
and((nazwa_przestrzeni~=nazwy_np_modul.Wikibooks)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^%s*[Bb]rudnopis/([^/]+)$")))
)then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
----
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local parametry_modul=require("Module:Parametry");
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
----
local tekst_rozwiniety_calego_artykulu_ref=nil;
local tablica_analizy_obiektow_strony_dany_modul_ref=nil;
local tablica_danych_parametrow_szablonu_strony_ref=nil;
----
local function InneInformacjePrzebneDoAnalizowanejKsiazki()
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"])then self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"]="tak";end;
end;
local czy_ksiazka_istnieje_w_tablicy=((tablica_ksiazki)and(tablica_ksiazki.czy_spis_analizowano))and true or false;
if(not czy_ksiazka_istnieje_w_tablicy)then
tablica_ksiazki.czy_spis_analizowano=true;
local stronicowyparser_spistresci_modul=require("Module:StronicowyParser/SpisTreści");
local nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp;
local tabela_artykulow,tabela_licencji_spisu_tresci,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,adres_ksiazki_glownego_spisu_tresci=stronicowyparser_spistresci_modul.ZbieranieInformacjiSpisuRzeczyWoluminuEwentualnieWedleAutonawigacji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,czy_artykul_korzystany,function(nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona)
local tablica_przestrzeni_strona=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni_strona];
if(tablica_przestrzeni_strona)then
local tablica_przestrzeni_ksiazki_strona=tablica_przestrzeni_strona[nazwa_przestrzeni_ksiazki_strona];
if(tablica_przestrzeni_ksiazki_strona)then
local tablica_ksiazki_strona=tablica_przestrzeni_ksiazki_strona[nazwa_ksiazki_strona];
if(tablica_ksiazki_strona)then
if(tablica_ksiazki_strona.spis)then
nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp=nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona;
tablica_ksiazki.spis=tablica_ksiazki_strona.spis;
tablica_ksiazki.licencja=tablica_ksiazki_strona.licencja;
tablica_ksiazki.nazwa_bazowego_spisu=tablica_ksiazki_strona.nazwa_bazowego_spisu;
tablica_ksiazki.tab_inne_spisy=tablica_ksiazki_strona.tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=tablica_ksiazki_strona.dodatkowe_strony_woluminu;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=tablica_ksiazki_strona.adres_woluminu_bazowego_spisu_rzeczy;
tablica_ksiazki.referencja_do_nowej_formy_spisu={tablica_przestrzeni_strona,tablica_przestrzeni_ksiazki_strona,tablica_ksiazki_strona,};
return 1;
end;
end;
end
end;
end,function(tekst_rozwiniety_calego_artykulu_ref_spis,nazwa_przestrzeni_ref_spis,nazwa_przestrzeni_ksiazki_ref_spis,nazwa_ksiazki_ref_spis,nazwa_artykulu_ref_spis,tablica_analizy_obiektow_strony_dany_modul_ref_spis,tablica_danych_parametrow_szablonu_strony_ref_spis)
----
if((nazwa_przestrzeni==nazwa_przestrzeni_ref_spis)and(nazwa_przestrzeni_ksiazki==nazwa_przestrzeni_ksiazki_ref_spis)and(nazwa_ksiazki==nazwa_ksiazki_ref_spis)and(nazwa_artykulu==nazwa_artykulu_ref_spis))then
tekst_rozwiniety_calego_artykulu_ref=tekst_rozwiniety_calego_artykulu_ref_spis;
local parametry_modul=require("Module:Parametry");
tablica_analizy_obiektow_strony_dany_modul_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_analizy_obiektow_strony_dany_modul_ref_spis);
tablica_danych_parametrow_szablonu_strony_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_danych_parametrow_szablonu_strony_ref_spis);
end;
----
end);
local function __FUNKCJA_SPISU(tablica_ksiazki,czy_podac_adres)
tablica_ksiazki.spis=tabela_artykulow;
if(czy_artykul_korzystany)then
tablica_ksiazki.licencja=tabela_licencji_spisu_tresci;
end;
tablica_ksiazki.nazwa_bazowego_spisu=nazwa_glownego_spisu;
tablica_ksiazki.tab_inne_spisy=tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=dodatkowe_artykuly;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=czy_podac_adres and adres_ksiazki_glownego_spisu_tresci or nil;
end;
if(tabela_artykulow==0)then
if(czy_artykul_korzystany)then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"korzystana strona główna nie istnieje");
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"dołączone strony główne nie istnieją",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(tabela_artykulow)then
if(parametry_modul.TypeTable(tabela_artykulow))then
if(adres_ksiazki_glownego_spisu_tresci)then
__FUNKCJA_SPISU(tablica_ksiazki,true);
local tablica_ksiazki_stara=tablica_ksiazki;
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local nazwa_przestrzeni=adres_ksiazki_glownego_spisu_tresci[1];
local nazwa_przestrzeni_ksiazki=adres_ksiazki_glownego_spisu_tresci[2];
local nazwa_ksiazki=adres_ksiazki_glownego_spisu_tresci[3];
if((kod_wyniku==1)or(kod_wyniku==4))then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
local nazwa_artykulu=artykul;
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni ,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==2)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==3)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nil);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
end;
else
__FUNKCJA_SPISU(tablica_ksiazki,false);
end;
elseif(tabela_artykulow~=1)then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
end;
else
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych"))then
if(((self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=="")and(nazwa_artykulu~=""))or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=""))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych książek na ich stronach głównych",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
end;
end;
end;
end;
end;
----
local wartosc_wyniku,wynik_bledu,artykul_bazowy,kod_wyniku_bazowy=InneInformacjePrzebneDoAnalizowanejKsiazki();
if(wynik_bledu)then return wartosc_wyniku;end;
local kod_wyniku_przekierowan=kod_wyniku_bazowy;
----
--if((not tablica_przestrzeni)or(not tablica_przestrzeni_ksiazki)or(not tablica_ksiazki)or(not artykul_analizowany))then
-- tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
--end;
----
if(tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy)and((kod_wyniku_bazowy==1)or(kod_wyniku_bazowy==4))then
----
nazwa_przestrzeni=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[1];
nazwa_przestrzeni_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[2];
nazwa_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[3];
nazwa_artykulu=artykul_bazowy;
----
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=tablica_ksiazki.referencja_do_nowej_formy_spisu[1],tablica_ksiazki.referencja_do_nowej_formy_spisu[2],tablica_ksiazki.referencja_do_nowej_formy_spisu[3];
end;
local tabela_artykulow=tablica_ksiazki.spis;
if(tabela_artykulow)then
local nazwa_glownego_spisu=tablica_ksiazki.nazwa_bazowego_spisu;
local tab_inne_spisy=tablica_ksiazki.tab_inne_spisy;
local dodatkowe_artykuly=tablica_ksiazki.dodatkowe_strony_woluminu
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,false);
if(kod_wyniku==1)then
nazwa_artykulu=artykul;
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
elseif(kod_wyniku==2)then
local nazwa_artykulu=artykul;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
kod_wyniku_przekierowan=kod_wyniku_przekierowan or kod_wyniku;
end;
local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local PrzekierownieAwaryjne=function()
if((not kod_wyniku_przekierowan)or(kod_wyniku_bazowy==4))then
--local artykul2,kod_wyniku2=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_modulu);
if(strona)then
if(strona~=nazwa_modulu)then
----
local tabela_nazw={};
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw) or nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw));
nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazwa);
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
nazwa_modulu=strona;
else
return 0;
end;
end;
end;
end;
local wynik=PrzekierownieAwaryjne();
if(czy_artykul_korzystany)then
self.nazwa_modulu_biezaca=nazwa_modulu;
end;
if(wynik)then return wynik;end;
----
if(czy_artykul_korzystany)then
if((not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni=nazwa_przestrzeni;
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu=nazwa_przestrzeni_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu=nazwa_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=nazwa_artykulu;
end;
end;
local nazwa_modulu_aktualna_czy_biezaca=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu) or nazwa_modulu;
-- przydzielanie tablicy
if(czy_artykul_korzystany)then
artykul_analizowany.artykul_biezacy=true;
tablica_ksiazki.ksiazka_analizowana=true;
end;
--koniec
--local iterator=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,"{{[^{}]-}}");
if(not tablica_zmiennych)then tablica_zmiennych={};end;
if(not tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2)then tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2={};end;
local stronicowyparser_obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
for _,element_w_tablicy_obiekt in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do
local CzyLink=element_w_tablicy_obiekt.CzyLink;
local CzyNum=element_w_tablicy_obiekt.CzyNum;
local wartosc=element_w_tablicy_obiekt[1];
tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum,};
if(czy_artykul_korzystany)then tablica_zmiennych.linkobiekt[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum;};end;
end;
local function StronaZbiorcza()
if(czy_artykul_korzystany)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return true;end;local NieFun=function(frame) return nil;end;
local wynik=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,tablica_ksiazki.spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
artykul_analizowany.strona_zbiorcza=(wynik and "tak" or "");
return wynik;
end;
return nil;
end;
local strona_zbiorcza=StronaZbiorcza();
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local stronicowyparser_tekst_modul=require("Module:StronicowyParser/Tekst");
----
local tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony;
if((not tekst_rozwiniety_calego_artykulu_ref)or(not tablica_analizy_obiektow_strony_dany_modul_ref)or(not tablica_danych_parametrow_szablonu_strony_ref))then
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=stronicowyparser_tekst_modul.RekurencyjnyZakodowanoSpreparowanyWikikodStrony(self,nazwa_modulu_aktualna_czy_biezaca,(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))and true or nil),
nil)
else
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=tekst_rozwiniety_calego_artykulu_ref,tablica_analizy_obiektow_strony_dany_modul_ref,tablica_danych_parametrow_szablonu_strony_ref;
end;
----
if(not czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then return 0;end;
end;
if(czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then
if(strona_zbiorcza)then
self.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"]="tak";
end;
return nil;
end;
end;
local szablonowe_modul=require("Module:Szablonowe");
local parametry_modul=require("Module:Parametry");
if((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))then
local aktualna_nazwa_modulu=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwa_modulu_aktualna_czy_biezaca or nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu);
local tekst=stronicowyparser_tekst_modul.SpreparowanyWikikodStrony(self,aktualna_nazwa_modulu);
if(tekst)then
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst,aktualna_nazwa_modulu);
local tablica_danych_parametrow_szablonu_strony={};
for szablon,obiekt,kod in iterator do
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,aktualna_nazwa_modulu,function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return true;
elseif(stronicowyparser_obiekty_modul.strona_start[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return true;
end;
end);
if(wynik)then break;end;
end;
end;
end;
end;
local uzyskano_w_wyniku_parsowania_wywolanie_szablonu;
local analiza_stron_korzystanych_zbiorczych=nil;
local stronastart=nil;
----
local tablica_obiekty=stronicowyparser_obiekty_modul.obiekty;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local format_elementowy_referencji_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_referencji_obiektowy;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
local szablony_wykorzystywane_przez_strony_zbiorcze=stronicowyparser_obiekty_modul.szablony_wykorzystywane_przez_strony_zbiorcze;
local format_elementowy_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_obiektowy;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
----
local strona_start=stronicowyparser_obiekty_modul.strona_start;
local strona_start_ze_spisem_rzeczy_strony=stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony;
local strona_start_inne=stronicowyparser_obiekty_modul.strona_start_inne;
local szablony_strony_zbiorczej=stronicowyparser_obiekty_modul.strona_zbiorcza;
----
local tab_szablony=stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_kontenerowe;
local tab_szablony_stronicowe_niekontenerowe=stronicowyparser_obiekty_modul.szablony_stronicowe_niekontenerowe;
local tab_szablony_stronicowe_formatowania_tekstu=stronicowyparser_obiekty_modul.szablony_stronicowe_formatowania_tekstu;
local tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego=stronicowyparser_obiekty_modul.szablony_stronicowe_kontenerowe_formatowania_wzorowego;
----
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
local tabela_elementow_strony_kodow={};
-- for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
local function AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego(tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
if(czy_artykul_korzystany)then
if(tabela_parametrow_szablonu)then
if((not stronastart)and(self.tabela_listy_danych_analizy_ksiazki.formatowanie==nil))then
if(strona_start[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
stronastart=true;
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
stronastart=true;
return;
elseif(strona_start_inne[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
stronastart=true;
return;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_prestreni_nazw))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_przestrzeni))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
end;
end;
local plik=mw.ustring.match(nazwa_szablonu_wywolania,"^:");
if(plik==nil)then
if(tabela_parametrow_szablonu)then
if(not parametry_modul.CzyTak(tabela_parametrow_szablonu["bez automatu"]))then
local czy_wypowiedzenie=(nazwa_szablonu_wywolania=="Wypowiedzenie");
local czy_linkobiekt;
local czy_link;local czy_pobierz;
local czy_wypowiedzenie_z_parametrami;
local czy_linkobiekt_z_parametrami;
if(czy_wypowiedzenie)then
czy_linkobiekt=false;
czy_link=false;
czy_pobierz=false;
czy_wypowiedzenie_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["rodzaj"]);
else
czy_linkobiekt=(nazwa_szablonu_wywolania=="LinkObiekt");
if(czy_linkobiekt)then
czy_link=true;
czy_pobierz=false;
czy_linkobiekt_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["typ"]);
else
czy_link=mw.ustring.match(nazwa_szablonu_wywolania,"^Link");
czy_pobierz=(not czy_link) and mw.ustring.match(nazwa_szablonu_wywolania,"^Pobierz") or nil;
end;
end;
if((not czy_link)and(not czy_pobierz))then
local wartosc_elementu;local numer_uchwytu;
if(not czy_wypowiedzenie_z_parametrami) then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
else
local rodzaj=tabela_parametrow_szablonu["rodzaj"];
if(rodzaj)then
wartosc_elementu=format_elementowy_obiektowy[rodzaj] and rodzaj or nil;
if(wartosc_elementu)then
numer_uchwytu=tablica_obiekty[5];
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
end;
elseif(czy_artykul_korzystany)then
if(czy_link)then
local wartosc_elementu;
if(not czy_linkobiekt_z_parametrami)then
wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
else
local typ=tabela_parametrow_szablonu["typ"];
if(typ)then
typ=format_elementowy_referencji_obiektowy[typ] and typ or nil;
if(typ)then
wartosc_elementu=mw.getContentLanguage():ucfirst(typ);
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Link"..wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
end;
end;
elseif(czy_pobierz)then
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,true);
return;
end;
end;
end;
if(czy_wypowiedzenie)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Obiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,"Obiekt", czy_artykul_korzystany,tablica_obiekty[5],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_wprowadzenia_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,wartosc_elementu,lista_dwuelementowa,kod);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
if(lista_dwuelementowa)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
local tekst=stronicowyparser_szablonytekstu_modul.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu);
local bez_preprocess=stronicowyparser_szablonytekstu_modul.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu);
local czy_bez_preprocess=parametry_modul.CzyTak(bez_preprocess);
if(tekst)then
local czy_szablon_wszystko=false;
tekst=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul,
function(szablon,obiekt,kod)
if(czy_bez_preprocess)then return nil;end;
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,nazwa_modulu,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(
(tab_szablony[nazwa_szablonu])
or(tab_szablony_stronicowe_niekontenerowe[nazwa_szablonu])
or(tab_szablony_stronicowe_formatowania_tekstu[nazwa_szablonu])
or(tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego[nazwa_szablonu])
)then
if(not czy_artykul_korzystany)then
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=tabela_parametrow_szablonu["nazwa jednostki"] or (((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""))
if(self)then
local czy_link_lub_pobierz=mw.ustring.match(nazwa_szablonu,"^Link") or mw.ustring.match(nazwa_szablonu,"^Pobierz");
if(czy_link_lub_pobierz)then
p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu);
end;
end;
end;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end;
return nil;
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- instrukcje warunkowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- wywołania ramek Lua w Scribunto
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- tagi szablonowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end);
czy_szablon_wszystko=czy_szablon_wszystko or true;
if(wynik)then return wynik;end;
elseif(obiekt=="ZMIENNA")then
czy_szablon_wszystko=czy_szablon_wszystko or true;
local zawartosc=mw.ustring.match(szablon,"^{{{(.*)}}}$");
if(zawartosc)then
zawartosc=mw.ustring.gsub(zawartosc,"|","{{!}}");
return "{{(((}}"..zawartosc.."{{)))}}";
end;
end;
end);
if((czy_szablon_wszystko)and(not bez_preprocess))then
local frame=mw.getCurrentFrame();
tekst=frame:preprocess(tekst);
end;
lista_dwuelementowa[2]=tekst;
end;
--local __metatabelka=getmetatable(tabela_parametrow_szablonu);
--if(__metatabelka)then setmetatable(tabela_parametrow_szablonu,nil);end;
stronicowyparser_szablonytekstu_modul.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany);
end;
return;
elseif(czy_artykul_korzystany)then
if(czy_linkobiekt)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="LinkObiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,"Obiekt",nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
if(stronicowyparser_obiekty_modul.szablony_z_lokalnym_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return;
elseif(stronicowyparser_obiekty_modul.bez_uchwytow_spis_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[2] or "";
local artykul=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[1] or "";
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..nazwa_ksiazki..((artykul)and ("/"..artykul) or "")
end;
end;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
else
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or "";
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or "";
local nazwa_symulacyjnej_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local uchwyt=nazwa_szablonu_wywolania..":"..nazwa_symulacyjnej_strony;
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=uchwyt;
end;
end;
if((stronicowyparser_obiekty_modul.szablony_kontenerowe[nazwa_szablonu_wywolania])
or(szablony_strony_zbiorczej[nazwa_szablonu_wywolania])
)then
if(szablony_wykorzystywane_przez_strony_zbiorcze[nazwa_szablonu_wywolania])then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,nil,KtorySzablonMaZwracacKategorie);
end;
return;
elseif((strona_zbiorcza)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
return;
end;
end;
end;
end;
end;
end;
end;
end;
----
local function GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
stronicowyparser_potrzebne_modul:AnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_danych_parametrow_szablonu_strony,AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego);
end;
local function IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu,tab_numer)
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul);
for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer);
end;
end;
IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu);
----
local tablica_danych_nazwy_artykulu=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu] or {};
tablica_danych_nazwy_artykulu.uchwyty_i_numeracje=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
----
local wiki_modul=require("Module:Wiki");
tablica_danych_nazwy_artykulu.link_wikidane={wiki_modul.KodyKlasStronyNaDanejWiki{["strona"]=nazwa_modulu_aktualna_czy_biezaca,["nagłówek"]=true,["aktywny"]=true,},};
----
if(czy_artykul_korzystany)then
if(analiza_stron_korzystanych_zbiorczych)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
tekst_rozwiniety_calego_artykulu=stronicowyparser_stronasubst_modul.LiczOperacjeStronZbiorczych(self,tekst_rozwiniety_calego_artykulu,tablica_ksiazki.spis,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
end;
end;
local strona;
if(czy_artykul_korzystany)then strona="";else strona=nazwa_modulu;end;
----
if(czy_artykul_korzystany)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
stronicowyparser_szablonytekstu_modul.UstawPobierzKorzystanie(tablica_zmiennych);
tekst_rozwiniety_calego_artykulu=stronicowyparser_szablonytekstu_modul.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych,IterowaniePoElementachTekstu) or tekst_rozwiniety_calego_artykulu;
end;
----
local toc;
if(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane))
or((not czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)))then
----
local tablica_obiektow_strony_danych_kodow_specjalnych_modul=nil;
----
tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_danych_kodow_specjalnych_modul=szablonowe_modul:KodowanieInaczejZakodowanychNormKodowychTekstuWedleJegoTablicyKodowania(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,false);
----
local function KtorySzablonMaZwracacKategorieNaglowek(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"powtórka nagłówek w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function KtorySzablonMaZwracacKategorieTekst(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"nagłowek w tekście rozdziału w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function CzyJestTakiProblemJakoElementTablicy()
return stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
end;
local nazwa_naglowka=stronicowyparser_obiekty_modul.nazwa_szablonu_wprowadzenia_tekstu;
local stronicowyparser_glownafunkcjazbieraniadanych_modul=require("Module:StronicowyParser/GłównaFunkcjaZbieraniaDanychStron");
local tablica_naglowka_obiekty=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_naglowka];
tablica_naglowka_obiekty.uchwyty_bez_numeracji={};
local toc=stronicowyparser_glownafunkcjazbieraniadanych_modul.SpisRzeczyWedlePodanegoTekstu(self,tekst_rozwiniety_calego_artykulu,strona, czy_artykul_korzystany,nil,tablica_naglowka_obiekty.uchwyty_bez_numeracji, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki, nazwa_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_obiektow_strony_danych_kodow_specjalnych_modul,{KtorySzablonMaZwracacKategorieNaglowek,KtorySzablonMaZwracacKategorieTekst,CzyJestTakiProblemJakoElementTablicy},nil,tabela_elementow_strony_kodow);
tablica_danych_nazwy_artykulu.TOC=toc;
end;
StronaSubstFunkcja(tablica_danych_nazwy_artykulu,tablica_ksiazki.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.link_wikidane=tablica_danych_nazwy_artykulu.link_wikidane;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykulu=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw[nazwa_przestrzeni_ksiazki];
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki[nazwa_ksiazki];
--self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron=tablica_zmiennych;
end;
if(not czy_artykul_korzystany)then
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=tablica_zmiennych;
if(not self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista)then self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista={};end;
table.insert(self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista,tablica_danych_nazwy_artykulu);
else
local dane_zebrane_ze_stron_lista=self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista;
if(dane_zebrane_ze_stron_lista)then
for _,tablica_danych_nazwy_artykulu in ipairs(dane_zebrane_ze_stron_lista)do
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=nil;
end;
end;
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane=nil;
end;
return self.tabela_listy_danych_analizy_ksiazki,tablica_zmiennych,true;
end;
return p;
b9ez5hkujl07llfbyca0dfr8j55y01h
547074
547073
2026-06-20T20:25:57Z
Persino
2851
Anulowano wersję [[Special:Diff/547073|547073]] autorstwa [[Special:Contributions/Persino|Persino]] ([[User talk:Persino|dyskusja]])
547074
Scribunto
text/plain
local p={};
function p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,lista_dwuelementowa,kod)
if(lista_dwuelementowa)then
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then
tabela_elementow_strony_kodow[nazwa_obiektu]={};
tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(not uchwyty_bez_numeracji)then
tab_obiekt.uchwyty_bez_numeracji={};
uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
end;
uchwyty_bez_numeracji[kod]=lista_dwuelementowa;
end;
end;
function p.WydobywanieUchwytuZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,kod)
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then return nil;end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(uchwyty_bez_numeracji)then
return uchwyty_bez_numeracji[kod];
end;
end;
function p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
kod_uchwytu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(kod_uchwytu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or kod_uchwytu;
local html_modul=require("Module:Html");
kod_uchwytu=html_modul.DecodeHtml(kod_uchwytu,true);
if(kod_uchwytu~="")then
KtorySzablonMaZwracacKategorie(kod_uchwytu);
local lista_dwuelementowa={};
lista_dwuelementowa[1]=kod_uchwytu;
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_obiektu)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu])))then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_obiektu=true;
end;
if(tab_numer)then
tab_numer[nazwa_obiektu]=tab_numer[nazwa_obiektu]+1;
local numer=tab_numer[nazwa_obiektu];
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],numer,lista_dwuelementowa);
else
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],lista_dwuelementowa);
end;
return lista_dwuelementowa;
end;
end;
function p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,nazwa_obiektu, czy_artykul_korzystany,numer_numeracji,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local kod_uchwytu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[numer_numeracji];
if(kod_uchwytu)then
local lista_dwuelementowa=p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return lista_dwuelementowa;
end;
end;
function p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(nazwa_artykulu=="")then return;end;
local czy_element_wystepuje_w_tablicy=false;
local tablica_przestrzeni_wszystkiego=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron;
if(tablica_przestrzeni_wszystkiego)then
local tabela_przestrzeni_ksiazek=tablica_przestrzeni_wszystkiego[nazwa_przestrzeni];
if(tabela_przestrzeni_ksiazek)then
local tabela_ksiazek=tabela_przestrzeni_ksiazek[nazwa_przestrzeni_ksiazki]
if(tabela_ksiazek)then
local tab_ksiazki=tabela_ksiazek[nazwa_ksiazki];
if(tab_ksiazki)then
if(tab_ksiazki.spis)then
--czy_lista_niepusta=true;
for _,tab_value1 in ipairs(tab_ksiazki.spis)do
if(tab_value1[2])then
for _,nazwa_artykulu1 in ipairs(tab_value1[2])do
if(nazwa_artykulu1[1]==nazwa_artykulu)then
czy_element_wystepuje_w_tablicy=true;
break;
end;
end;
end;
if(czy_element_wystepuje_w_tablicy)then break;end;
end;
end;
end;
end;
end;
end;
if(not czy_element_wystepuje_w_tablicy)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwa_przestrzeni)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu~=nazwa_przestrzeni_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu~=nazwa_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=nazwa_artykulu))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni,nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych stron",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisu treści do korzystanych stron"))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisu treści do korzystanych stron");
end;
end;
end;
end;
end;
function p.PusteParametryReferencji(self, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu)
local czy_ksiazka_z_tylko_odstepami_lub_pusty=(nazwa_ksiazki)and (nazwa_ksiazki=="") or nil;
local czy_artykul_z_tylko_odstepami_lub_pusty=(nazwa_artykulu)and (nazwa_artykulu=="") or nil;
local czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty=(uchwyt_obiektu)and (uchwyt_obiektu=="") or nil;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1);
end;
end;
if(czy_artykul_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2);
end;
end;
if(czy_ksiazka_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3);
end;
end;
end;
function p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie,czy_inna_wartosc_tekst)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca,((not czy_inna_wartosc_tekst)and true or false));
--local ksiazkowe_modul=require("Module:Książkowe");
--pelna_nazwa_ksiazki=pelna_nazwa_ksiazki or ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"]();
--nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"]();
if((nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki)or(nazwa_artykulu))then
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwa_przestrzeni_ksiazki or ksiazkowe_modul["NazwaPrzestrzeniKsiążki"](nil,tabela_nazw);
local nazwa_ksiazki=nazwa_ksiazki or ksiazkowe_modul["NazwaTytułuKsiążki"](nil,tabela_nazw);
local nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"](nil,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false);
end;
end;
function p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,czy_szablon_pudelkowy_strony_zbiorczej,KtorySzablonMaZwracacKategorie)
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not nazwa_przestrzeni)and(not nazwa_jednostki))then return;end;
local parametry_modul=require("Module:Parametry");
if((nazwa_jednostki) and (nazwa_jednostki==""))then return;end;
local szablonowe_modul=require("Module:Szablonowe");
if((nazwa_jednostki and mw.ustring.match(nazwa_jednostki,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
or (nazwa_przestrzeni and mw.ustring.match(nazwa_przestrzeni,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
)then return;end;
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local html_modul=require("Module:Html");
if(nazwa_jednostki)then
nazwa_jednostki=html_modul.DecodeHtml(nazwa_jednostki,true);
end;
local tabela_nazw_art={};
local nazwa_jednostki=(nazwa_jednostki
and mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1")
or nil
) or ksiazkowe_modul["NazwaArtykułu"](nil,tabela_nazw_art);
if(nazwa_przestrzeni)then
nazwa_przestrzeni=html_modul.DecodeHtml(nazwa_przestrzeni,true);
end;
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw_art);
local strona=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local techniczne_modul=require("Module:Techniczne");
strona=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=strona,[2]=self.nazwa_modulu_biezaca,};
--strona=ksiazkowe_modul["PEŁNANAZWASTRONY"](strona);
local tabela_nazw={};
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
local nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw)));
local nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,nil,czy_szablon_pudelkowy_strony_zbiorczej);
end;
function p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_aktualna,bezuchwytowe)
local nazwa_artykulu=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[bezuchwytowe and 1 or 2];
local pelna_nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[bezuchwytowe and 2 or 3];
local parametry_modul=require("Module:Parametry");
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
if(nazwa_artykulu)then
nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",};
end;
local nazwa_ksiazki;local nazwa_przestrzeni_ksiazki;local nazwa_przestrzeni;
if(pelna_nazwa_ksiazki)then
pelna_nazwa_ksiazki=html_modul.DecodeHtml(pelna_nazwa_ksiazki,true);
local techniczne_modul=require("Module:Techniczne");
pelna_nazwa_ksiazki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=pelna_nazwa_ksiazki,[2]=nazwa_aktualna,};
----
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
pelna_nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)));
--pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
end;
return nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu;
end;
function p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_modulu_aktualna);
local nazwy_modul=require("Module:Nazwy");
local czy_inna_wartosc_tekst=true;
if((nazwa_artykulu)and(nazwa_ksiazki))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwy_modul["NazwaModułu"]("",nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or (ksiazkowe_modul["NazwaKsiążki"]()..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""));
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((not nazwa_artykulu)and(nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or ksiazkowe_modul["NazwaKsiążki"]();
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
else
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
end;
end;
function p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,nazwa_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,czy_pobierz)
local uchwyt_obiektu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[1];
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca);
----
local parametry_modul=require("Module:Parametry");
if(parametry_modul.CzyTak(uchwyt_obiektu))then
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
uchwyt_obiektu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(uchwyt_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or uchwyt_obiektu;
local html_modul=require("Module:Html");
uchwyt_obiektu=html_modul.DecodeHtml(uchwyt_obiektu,true);
end;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(parametry_modul.CzyTak(uchwyt_obiektu))then
nazwa_artykulu=(nazwa_artykulu or (nazwa_ksiazki and "" or nil));
if(nazwa_artykulu)then
if(nazwa_artykulu~="")then
if(not nazwa_ksiazki)then
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
elseif(nazwa_ksiazki=="")then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
end;
elseif((nazwa_ksiazki)and(nazwa_ksiazki~=""))then
nazwa_artykulu="";
elseif((nazwa_ksiazki)and(nazwa_ksiazki==""))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
else
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
end;
if((nazwa_przestrzeni~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)
or(nazwa_przestrzeni_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)
or(nazwa_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)
or(nazwa_artykulu~=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz);
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
elseif((uchwyt_obiektu)and(uchwyt_obiektu==""))then
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,nil);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu);
end;
KtorySzablonMaZwracacKategorie(uchwyt_obiektu);
end;
function p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
local linkobiekttab=tablica_zmiennych.linkobiekt[nazwa_obiektu];
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_linku)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](linkobiekttab)))then
local parametry_modul=require("Module:Parametry");
local nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
local nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
local nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
local nazwa_artykulu=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu;
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_linku=true;
end;
table.insert(linkobiekttab,uchwyt_obiektu);
if(czy_pobierz)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane)then
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane={};
end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane,{{nazwa_obiektu,uchwyt_obiektu,},{obiekt,kod,},});
end;
end;
function p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,__FUNKCJA)
local pudelko_modul=require("Module:Pudełko");
if(((nazwa_przestrzeni)and(((nazwa_przestrzeni~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni)))or(nazwa_przestrzeni=="")))
and((nazwa_przestrzeni_ksiazki)and(((nazwa_przestrzeni_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni_ksiazki)))or(nazwa_przestrzeni_ksiazki=="")))
and((nazwa_ksiazki)and(nazwa_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_ksiazki)))
and((nazwa_artykulu)and(((nazwa_artykulu~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_artykulu)))or(nazwa_artykulu=="")))
)then
if(__FUNKCJA)then
__FUNKCJA(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron"))then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron");
else
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy stron dołączanych do stron");
end;
end;
end;
end;
function p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz)
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,function()
local parametry_modul=require("Module:Parametry");
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(parametry_modul.CzyTak(nazwa_ksiazki))and(nazwa_artykulu))then
local tablica_zmiennych2={};
tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2={}
local tabela_listy_danych_analizy_ksiazki0,tablica_zmiennych2,czy_inna=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,tablica_zmiennych2);
if(tabela_listy_danych_analizy_ksiazki0)then
if((not czy_inna)or(not tablica_zmiennych2))then return;end;
local JuzPoliczone=function()
if(not tablica_zmiennych2.dane_juz_policzone)then tablica_zmiennych2.dane_juz_policzone={};end;
local tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
if(not tab_nazwa_obiektu)then
tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]={};
tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
end;
local tab_uchwyt=tab_nazwa_obiektu[uchwyt_obiektu];
if(tab_uchwyt)then
return true;
end;
tab_nazwa_obiektu[uchwyt_obiektu]=true;
return false;
end;
if(not parametry_modul.CzyTak(tabela_listy_danych_analizy_ksiazki0))then
local czy_policzone=JuzPoliczone();
if(czy_policzone)then
return;
end;
else
JuzPoliczone();
end;
local stronicowyparser_szablony_tekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
if(czy_pobierz)then
stronicowyparser_szablony_tekstu_modul.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,false);
end;
stronicowyparser_szablony_tekstu_modul.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2);
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
local czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2=tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu];
local CzyLink=czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2.CzyLink;
local ile_razy=0;
if(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2)then
for _, parametry_obiektu in ipairs(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2) do
if(parametry_obiektu[1]==uchwyt_obiektu)then
ile_razy=ile_razy+1;
if(ile_razy>1)then break;end;
end;
end;
end
if(ile_razy~=1)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu);
end;
p.PusteParametryReferencji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera");
end;
end;
else
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
end);
end;
function p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, czy_artykul_korzystany,tablica_zmiennych,czy_szablon_pudelkowy_strony_zbiorczej)
local function __FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni])then self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]={};end;
local tablica_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(not tablica_przestrzeni[nazwa_przestrzeni_ksiazki])then tablica_przestrzeni[nazwa_przestrzeni_ksiazki]={};end;
local tablica_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki];
if(not tablica_przestrzeni_ksiazki[nazwa_ksiazki])then tablica_przestrzeni_ksiazki[nazwa_ksiazki]={};end;
local tablica_ksiazki=tablica_przestrzeni_ksiazki[nazwa_ksiazki];
if(not tablica_ksiazki.lista_podstron_woluminu)then tablica_ksiazki.lista_podstron_woluminu={};end;
if(nazwa_artykulu)then
if(not tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu])then tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu]={};end;
local artykul_analizowany=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu];
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany;
else
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki;
end;
end;
local function __FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not czy_artykul_korzystany)then
if(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni and self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu)then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
return 0,nil,nil,nil,nil,nil,self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron,false;
else
if(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=true;
end;
end;
else
return nil;
end;
end;
if(self.tabela_listy_danych_analizy_ksiazki)then
if(self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron)then
local tabela_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(tabela_przestrzeni)then
local tabela_przestrzeni_ksiazki=tabela_przestrzeni[nazwa_przestrzeni_ksiazki];
if(tabela_przestrzeni_ksiazki)then
local tabela_ksiazka=tabela_przestrzeni_ksiazki[nazwa_ksiazki];
if(tabela_ksiazka)then
local lista_artykolow=tabela_ksiazka.lista_podstron_woluminu;
if(lista_artykolow)then
local tabela_artykul=lista_artykolow[nazwa_artykulu];
if(tabela_artykul)then
local dane_zebrane_ze_stron=tabela_artykul.dane_zebrane_ze_stron;
return 0,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,true;
end;
end;
end;
end;
end;
else
return nil;
end;
else
return nil;
end;
return true;
end;
local nazwy_modul=require("Module:Nazwy");
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,czy_inna=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local function StronaSubstFunkcja(tabela_artykul,spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((czy_szablon_pudelkowy_strony_zbiorczej)and(not czy_artykul_korzystany)and(tabela_artykul)and(not tabela_artykul.strona_zbiorcza))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return "tak";end;local NieFun=function(frame) return "";end;
tabela_artykul.strona_zbiorcza=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
end;
if(not wartosc_wyniku)then
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
end;
----
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((nazwa_przestrzeni~=nazwy_np_modul.Main)
and(nazwa_przestrzeni~=nazwy_np_modul.Wikijunior)
and((nazwa_przestrzeni~=nazwy_np_modul.User)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^([^/]+)$")))
and((nazwa_przestrzeni~=nazwy_np_modul.Wikibooks)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^%s*[Bb]rudnopis/([^/]+)$")))
)then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
----
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local parametry_modul=require("Module:Parametry");
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
----
local tekst_rozwiniety_calego_artykulu_ref=nil;
local tablica_analizy_obiektow_strony_dany_modul_ref=nil;
local tablica_danych_parametrow_szablonu_strony_ref=nil;
----
local function InneInformacjePrzebneDoAnalizowanejKsiazki()
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"])then self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"]="tak";end;
end;
local czy_ksiazka_istnieje_w_tablicy=((tablica_ksiazki)and(tablica_ksiazki.czy_spis_analizowano))and true or false;
if(not czy_ksiazka_istnieje_w_tablicy)then
tablica_ksiazki.czy_spis_analizowano=true;
local stronicowyparser_spistresci_modul=require("Module:StronicowyParser/SpisTreści");
local nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp;
local tabela_artykulow,tabela_licencji_spisu_tresci,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,adres_ksiazki_glownego_spisu_tresci=stronicowyparser_spistresci_modul.ZbieranieInformacjiSpisuRzeczyWoluminuEwentualnieWedleAutonawigacji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,czy_artykul_korzystany,function(nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona)
local tablica_przestrzeni_strona=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni_strona];
if(tablica_przestrzeni_strona)then
local tablica_przestrzeni_ksiazki_strona=tablica_przestrzeni_strona[nazwa_przestrzeni_ksiazki_strona];
if(tablica_przestrzeni_ksiazki_strona)then
local tablica_ksiazki_strona=tablica_przestrzeni_ksiazki_strona[nazwa_ksiazki_strona];
if(tablica_ksiazki_strona)then
if(tablica_ksiazki_strona.spis)then
nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp=nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona;
tablica_ksiazki.spis=tablica_ksiazki_strona.spis;
tablica_ksiazki.licencja=tablica_ksiazki_strona.licencja;
tablica_ksiazki.nazwa_bazowego_spisu=tablica_ksiazki_strona.nazwa_bazowego_spisu;
tablica_ksiazki.tab_inne_spisy=tablica_ksiazki_strona.tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=tablica_ksiazki_strona.dodatkowe_strony_woluminu;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=tablica_ksiazki_strona.adres_woluminu_bazowego_spisu_rzeczy;
tablica_ksiazki.referencja_do_nowej_formy_spisu={tablica_przestrzeni_strona,tablica_przestrzeni_ksiazki_strona,tablica_ksiazki_strona,};
return 1;
end;
end;
end
end;
end,function(tekst_rozwiniety_calego_artykulu_ref_spis,nazwa_przestrzeni_ref_spis,nazwa_przestrzeni_ksiazki_ref_spis,nazwa_ksiazki_ref_spis,nazwa_artykulu_ref_spis,tablica_analizy_obiektow_strony_dany_modul_ref_spis,tablica_danych_parametrow_szablonu_strony_ref_spis)
----
if((nazwa_przestrzeni==nazwa_przestrzeni_ref_spis)and(nazwa_przestrzeni_ksiazki==nazwa_przestrzeni_ksiazki_ref_spis)and(nazwa_ksiazki==nazwa_ksiazki_ref_spis)and(nazwa_artykulu==nazwa_artykulu_ref_spis))then
tekst_rozwiniety_calego_artykulu_ref=tekst_rozwiniety_calego_artykulu_ref_spis;
local parametry_modul=require("Module:Parametry");
tablica_analizy_obiektow_strony_dany_modul_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_analizy_obiektow_strony_dany_modul_ref_spis);
tablica_danych_parametrow_szablonu_strony_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_danych_parametrow_szablonu_strony_ref_spis);
end;
----
end);
local function __FUNKCJA_SPISU(tablica_ksiazki,czy_podac_adres)
tablica_ksiazki.spis=tabela_artykulow;
if(czy_artykul_korzystany)then
tablica_ksiazki.licencja=tabela_licencji_spisu_tresci;
end;
tablica_ksiazki.nazwa_bazowego_spisu=nazwa_glownego_spisu;
tablica_ksiazki.tab_inne_spisy=tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=dodatkowe_artykuly;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=czy_podac_adres and adres_ksiazki_glownego_spisu_tresci or nil;
end;
if(tabela_artykulow==0)then
if(czy_artykul_korzystany)then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"korzystana strona główna nie istnieje");
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"dołączone strony główne nie istnieją",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(tabela_artykulow)then
if(parametry_modul.TypeTable(tabela_artykulow))then
if(adres_ksiazki_glownego_spisu_tresci)then
__FUNKCJA_SPISU(tablica_ksiazki,true);
local tablica_ksiazki_stara=tablica_ksiazki;
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local nazwa_przestrzeni=adres_ksiazki_glownego_spisu_tresci[1];
local nazwa_przestrzeni_ksiazki=adres_ksiazki_glownego_spisu_tresci[2];
local nazwa_ksiazki=adres_ksiazki_glownego_spisu_tresci[3];
if((kod_wyniku==1)or(kod_wyniku==4))then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
local nazwa_artykulu=artykul;
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni ,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==2)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==3)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nil);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
end;
else
__FUNKCJA_SPISU(tablica_ksiazki,false);
end;
elseif(tabela_artykulow~=1)then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
end;
else
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych"))then
if(((self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=="")and(nazwa_artykulu~=""))or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=""))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych książek na ich stronach głównych",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
end;
end;
end;
end;
end;
----
local wartosc_wyniku,wynik_bledu,artykul_bazowy,kod_wyniku_bazowy=InneInformacjePrzebneDoAnalizowanejKsiazki();
if(wynik_bledu)then return wartosc_wyniku;end;
local kod_wyniku_przekierowan=kod_wyniku_bazowy;
----
--if((not tablica_przestrzeni)or(not tablica_przestrzeni_ksiazki)or(not tablica_ksiazki)or(not artykul_analizowany))then
-- tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
--end;
----
if(tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy)and((kod_wyniku_bazowy==1)or(kod_wyniku_bazowy==4))then
----
nazwa_przestrzeni=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[1];
nazwa_przestrzeni_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[2];
nazwa_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[3];
nazwa_artykulu=artykul_bazowy;
----
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=tablica_ksiazki.referencja_do_nowej_formy_spisu[1],tablica_ksiazki.referencja_do_nowej_formy_spisu[2],tablica_ksiazki.referencja_do_nowej_formy_spisu[3];
end;
local tabela_artykulow=tablica_ksiazki.spis;
if(tabela_artykulow)then
local nazwa_glownego_spisu=tablica_ksiazki.nazwa_bazowego_spisu;
local tab_inne_spisy=tablica_ksiazki.tab_inne_spisy;
local dodatkowe_artykuly=tablica_ksiazki.dodatkowe_strony_woluminu
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,false);
if(kod_wyniku==1)then
nazwa_artykulu=artykul;
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
elseif(kod_wyniku==2)then
local nazwa_artykulu=artykul;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
kod_wyniku_przekierowan=kod_wyniku_przekierowan or kod_wyniku;
end;
local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local PrzekierownieAwaryjne=function()
if((not kod_wyniku_przekierowan)or(kod_wyniku_bazowy==4))then
--local artykul2,kod_wyniku2=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_modulu);
if(strona)then
if(strona~=nazwa_modulu)then
----
local tabela_nazw={};
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw) or nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw));
nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazwa);
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
nazwa_modulu=strona;
else
return 0;
end;
end;
end;
end;
local wynik=PrzekierownieAwaryjne();
if(czy_artykul_korzystany)then
self.nazwa_modulu_biezaca=nazwa_modulu;
end;
if(wynik)then return wynik;end;
----
if(czy_artykul_korzystany)then
if((not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni=nazwa_przestrzeni;
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu=nazwa_przestrzeni_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu=nazwa_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=nazwa_artykulu;
end;
end;
local nazwa_modulu_aktualna_czy_biezaca=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu) or nazwa_modulu;
-- przydzielanie tablicy
if(czy_artykul_korzystany)then
artykul_analizowany.artykul_biezacy=true;
tablica_ksiazki.ksiazka_analizowana=true;
end;
--koniec
--local iterator=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,"{{[^{}]-}}");
if(not tablica_zmiennych)then tablica_zmiennych={};end;
if(not tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2)then tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2={};end;
local stronicowyparser_obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
for _,element_w_tablicy_obiekt in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do
local CzyLink=element_w_tablicy_obiekt.CzyLink;
local CzyNum=element_w_tablicy_obiekt.CzyNum;
local wartosc=element_w_tablicy_obiekt[1];
tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum,};
if(czy_artykul_korzystany)then tablica_zmiennych.linkobiekt[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum;};end;
end;
local function StronaZbiorcza()
if(czy_artykul_korzystany)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return true;end;local NieFun=function(frame) return nil;end;
local wynik=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,tablica_ksiazki.spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
artykul_analizowany.strona_zbiorcza=(wynik and "tak" or "");
return wynik;
end;
return nil;
end;
local strona_zbiorcza=StronaZbiorcza();
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local stronicowyparser_tekst_modul=require("Module:StronicowyParser/Tekst");
----
local tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony;
if((not tekst_rozwiniety_calego_artykulu_ref)or(not tablica_analizy_obiektow_strony_dany_modul_ref)or(not tablica_danych_parametrow_szablonu_strony_ref))then
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=stronicowyparser_tekst_modul.RekurencyjnyZakodowanoSpreparowanyWikikodStrony(self,nazwa_modulu_aktualna_czy_biezaca,(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))and true or nil),
nil)
else
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=tekst_rozwiniety_calego_artykulu_ref,tablica_analizy_obiektow_strony_dany_modul_ref,tablica_danych_parametrow_szablonu_strony_ref;
end;
----
if(not czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then return 0;end;
end;
if(czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then
if(strona_zbiorcza)then
self.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"]="tak";
end;
return nil;
end;
end;
local szablonowe_modul=require("Module:Szablonowe");
local parametry_modul=require("Module:Parametry");
if((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))then
local aktualna_nazwa_modulu=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwa_modulu_aktualna_czy_biezaca or nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu);
local tekst=stronicowyparser_tekst_modul.SpreparowanyWikikodStrony(self,aktualna_nazwa_modulu);
if(tekst)then
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst,aktualna_nazwa_modulu);
local tablica_danych_parametrow_szablonu_strony={};
for szablon,obiekt,kod in iterator do
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,aktualna_nazwa_modulu,function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return true;
elseif(stronicowyparser_obiekty_modul.strona_start[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return true;
end;
end);
if(wynik)then break;end;
end;
end;
end;
end;
local uzyskano_w_wyniku_parsowania_wywolanie_szablonu;
local analiza_stron_korzystanych_zbiorczych=nil;
local stronastart=nil;
----
local tablica_obiekty=stronicowyparser_obiekty_modul.obiekty;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local format_elementowy_referencji_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_referencji_obiektowy;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
local szablony_wykorzystywane_przez_strony_zbiorcze=stronicowyparser_obiekty_modul.szablony_wykorzystywane_przez_strony_zbiorcze;
local format_elementowy_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_obiektowy;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
----
local strona_start=stronicowyparser_obiekty_modul.strona_start;
local strona_start_ze_spisem_rzeczy_strony=stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony;
local strona_start_inne=stronicowyparser_obiekty_modul.strona_start_inne;
local szablony_strony_zbiorczej=stronicowyparser_obiekty_modul.strona_zbiorcza;
----
local tab_szablony=stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_kontenerowe;
local tab_szablony_stronicowe_niekontenerowe=stronicowyparser_obiekty_modul.szablony_stronicowe_niekontenerowe;
local tab_szablony_stronicowe_formatowania_tekstu=stronicowyparser_obiekty_modul.szablony_stronicowe_formatowania_tekstu;
local tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego=stronicowyparser_obiekty_modul.szablony_stronicowe_kontenerowe_formatowania_wzorowego;
----
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
local tabela_elementow_strony_kodow={};
-- for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
local function AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego(tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
if(czy_artykul_korzystany)then
if(tabela_parametrow_szablonu)then
if((not stronastart)and(self.tabela_listy_danych_analizy_ksiazki.formatowanie==nil))then
if(strona_start[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
stronastart=true;
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
stronastart=true;
return;
elseif(strona_start_inne[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
stronastart=true;
return;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_prestreni_nazw))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_przestrzeni))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
end;
end;
local plik=mw.ustring.match(nazwa_szablonu_wywolania,"^:");
if(plik==nil)then
if(tabela_parametrow_szablonu)then
if(not parametry_modul.CzyTak(tabela_parametrow_szablonu["bez automatu"]))then
local czy_wypowiedzenie=(nazwa_szablonu_wywolania=="Wypowiedzenie");
local czy_linkobiekt;
local czy_link;local czy_pobierz;
local czy_wypowiedzenie_z_parametrami;
local czy_linkobiekt_z_parametrami;
if(czy_wypowiedzenie)then
czy_linkobiekt=false;
czy_link=false;
czy_pobierz=false;
czy_wypowiedzenie_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["rodzaj"]);
else
czy_linkobiekt=(nazwa_szablonu_wywolania=="LinkObiekt");
if(czy_linkobiekt)then
czy_link=true;
czy_pobierz=false;
czy_linkobiekt_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["typ"]);
else
czy_link=mw.ustring.match(nazwa_szablonu_wywolania,"^Link");
czy_pobierz=(not czy_link) and mw.ustring.match(nazwa_szablonu_wywolania,"^Pobierz") or nil;
end;
end;
if((not czy_link)and(not czy_pobierz))then
local wartosc_elementu;local numer_uchwytu;
if(not czy_wypowiedzenie_z_parametrami) then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
else
local rodzaj=tabela_parametrow_szablonu["rodzaj"];
if(rodzaj)then
wartosc_elementu=format_elementowy_obiektowy[rodzaj] and rodzaj or nil;
if(wartosc_elementu)then
numer_uchwytu=tablica_obiekty[5];
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
end;
elseif(czy_artykul_korzystany)then
if(czy_link)then
local wartosc_elementu;
if(not czy_linkobiekt_z_parametrami)then
wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
else
local typ=tabela_parametrow_szablonu["typ"];
if(typ)then
typ=format_elementowy_referencji_obiektowy[typ] and typ or nil;
if(typ)then
wartosc_elementu=mw.getContentLanguage():ucfirst(typ);
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Link"..wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
end;
end;
elseif(czy_pobierz)then
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,true);
return;
end;
end;
end;
if(czy_wypowiedzenie)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Obiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,"Obiekt", czy_artykul_korzystany,tablica_obiekty[5],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_wprowadzenia_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,wartosc_elementu,lista_dwuelementowa,kod);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
if(lista_dwuelementowa)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
local tekst=stronicowyparser_szablonytekstu_modul.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu);
local bez_preprocess=stronicowyparser_szablonytekstu_modul.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu);
local czy_bez_preprocess=parametry_modul.CzyTak(bez_preprocess);
if(tekst)then
local czy_szablon_wszystko=false;
tekst=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul,
function(szablon,obiekt,kod)
if(czy_bez_preprocess)then return nil;end;
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,nazwa_modulu,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(
(tab_szablony[nazwa_szablonu])
or(tab_szablony_stronicowe_niekontenerowe[nazwa_szablonu])
or(tab_szablony_stronicowe_formatowania_tekstu[nazwa_szablonu])
or(tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego[nazwa_szablonu])
)then
if(not czy_artykul_korzystany)then
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=tabela_parametrow_szablonu["nazwa jednostki"] or (((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""))
if(self)then
local czy_link_lub_pobierz=mw.ustring.match(nazwa_szablonu,"^Link") or mw.ustring.match(nazwa_szablonu,"^Pobierz");
if(czy_link_lub_pobierz)then
p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu);
end;
end;
end;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end;
return nil;
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- instrukcje warunkowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- wywołania ramek Lua w Scribunto
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- tagi szablonowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end);
czy_szablon_wszystko=czy_szablon_wszystko or true;
if(wynik)then return wynik;end;
elseif(obiekt=="ZMIENNA")then
czy_szablon_wszystko=czy_szablon_wszystko or true;
local zawartosc=mw.ustring.match(szablon,"^{{{(.*)}}}$");
if(zawartosc)then
zawartosc=mw.ustring.gsub(zawartosc,"|","{{!}}");
return "{{(((}}"..zawartosc.."{{)))}}";
end;
end;
end);
if((czy_szablon_wszystko)and(not bez_preprocess))then
local frame=mw.getCurrentFrame();
tekst=frame:preprocess(tekst);
end;
lista_dwuelementowa[2]=tekst;
end;
--local __metatabelka=getmetatable(tabela_parametrow_szablonu);
--if(__metatabelka)then setmetatable(tabela_parametrow_szablonu,nil);end;
stronicowyparser_szablonytekstu_modul.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany);
end;
return;
elseif(czy_artykul_korzystany)then
if(czy_linkobiekt)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="LinkObiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,"Obiekt",nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
if(stronicowyparser_obiekty_modul.szablony_z_lokalnym_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return;
elseif(stronicowyparser_obiekty_modul.bez_uchwytow_spis_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[2] or "";
local artykul=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[1] or "";
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..nazwa_ksiazki..((artykul)and ("/"..artykul) or "")
end;
end;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
else
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or "";
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or "";
local nazwa_symulacyjnej_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local uchwyt=nazwa_szablonu_wywolania..":"..nazwa_symulacyjnej_strony;
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=uchwyt;
end;
end;
if((stronicowyparser_obiekty_modul.szablony_kontenerowe[nazwa_szablonu_wywolania])
or(szablony_strony_zbiorczej[nazwa_szablonu_wywolania])
)then
if(szablony_wykorzystywane_przez_strony_zbiorcze[nazwa_szablonu_wywolania])then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,nil,KtorySzablonMaZwracacKategorie);
end;
return;
elseif((strona_zbiorcza)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
return;
end;
end;
end;
end;
end;
end;
end;
end;
----
local function GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
stronicowyparser_potrzebne_modul:AnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_danych_parametrow_szablonu_strony,AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego);
end;
local function IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu,tab_numer)
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul);
for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer);
end;
end;
IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu);
----
local tablica_danych_nazwy_artykulu=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu] or {};
tablica_danych_nazwy_artykulu.uchwyty_i_numeracje=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
----
local wiki_modul=require("Module:Wiki");
tablica_danych_nazwy_artykulu.link_wikidane={wiki_modul.KodyKlasStronyNaDanejWiki{["strona"]=nazwa_modulu_aktualna_czy_biezaca,["nagłówek"]=true,["aktywny"]=true,},};
----
if(czy_artykul_korzystany)then
if(analiza_stron_korzystanych_zbiorczych)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
tekst_rozwiniety_calego_artykulu=stronicowyparser_stronasubst_modul.LiczOperacjeStronZbiorczych(self,tekst_rozwiniety_calego_artykulu,tablica_ksiazki.spis,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
end;
end;
local strona;
if(czy_artykul_korzystany)then strona="";else strona=nazwa_modulu;end;
----
if(czy_artykul_korzystany)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
stronicowyparser_szablonytekstu_modul.UstawPobierzKorzystanie(tablica_zmiennych);
tekst_rozwiniety_calego_artykulu=stronicowyparser_szablonytekstu_modul.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych,IterowaniePoElementachTekstu) or tekst_rozwiniety_calego_artykulu;
end;
----
local toc;
if(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane))
or((not czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)))then
----
local tablica_obiektow_strony_danych_kodow_specjalnych_modul=nil;
----
tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_danych_kodow_specjalnych_modul=szablonowe_modul:KodowanieInaczejZakodowanychNormKodowychTekstuWedleJegoTablicyKodowania(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,false);
----
local function KtorySzablonMaZwracacKategorieNaglowek(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"powtórka nagłówek w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function KtorySzablonMaZwracacKategorieTekst(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"nagłowek w tekście rozdziału w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function CzyJestTakiProblemJakoElementTablicy()
return stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
end;
local nazwa_naglowka=stronicowyparser_obiekty_modul.nazwa_szablonu_wprowadzenia_tekstu;
local stronicowyparser_glownafunkcjazbieraniadanych_modul=require("Module:StronicowyParser/GłównaFunkcjaZbieraniaDanychStron");
local tablica_naglowka_obiekty=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_naglowka];
tablica_naglowka_obiekty.uchwyty_bez_numeracji={};
local toc=stronicowyparser_glownafunkcjazbieraniadanych_modul.SpisRzeczyWedlePodanegoTekstu(self,tekst_rozwiniety_calego_artykulu,strona, czy_artykul_korzystany,nil,tablica_naglowka_obiekty.uchwyty_bez_numeracji, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki, nazwa_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_obiektow_strony_danych_kodow_specjalnych_modul,{KtorySzablonMaZwracacKategorieNaglowek,KtorySzablonMaZwracacKategorieTekst,CzyJestTakiProblemJakoElementTablicy},nil,tabela_elementow_strony_kodow);
tablica_danych_nazwy_artykulu.TOC=toc;
end;
StronaSubstFunkcja(tablica_danych_nazwy_artykulu,tablica_ksiazki.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.link_wikidane=tablica_danych_nazwy_artykulu.link_wikidane;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykulu=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw[nazwa_przestrzeni_ksiazki];
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki[nazwa_ksiazki];
--self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron=tablica_zmiennych;
end;
if(not czy_artykul_korzystany)then
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=tablica_zmiennych;
if(not self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista)then self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista={};end;
table.insert(self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista,tablica_danych_nazwy_artykulu);
else
local dane_zebrane_ze_stron_lista=self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista;
if(dane_zebrane_ze_stron_lista)then
for _,tablica_danych_nazwy_artykulu in ipairs(dane_zebrane_ze_stron_lista)do
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=nil;
end;
end;
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane=nil;
end;
return self.tabela_listy_danych_analizy_ksiazki,tablica_zmiennych,true;
end;
return p;
6ztuyz9n1j47jic0slvpsf9h5o9098w
547075
547074
2026-06-20T20:31:51Z
Persino
2851
547075
Scribunto
text/plain
local p={};
function p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,lista_dwuelementowa,kod)
if(lista_dwuelementowa)then
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then
tabela_elementow_strony_kodow[nazwa_obiektu]={};
tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(not uchwyty_bez_numeracji)then
tab_obiekt.uchwyty_bez_numeracji={};
uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
end;
uchwyty_bez_numeracji[kod]=lista_dwuelementowa;
end;
end;
function p.WydobywanieUchwytuZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,kod)
local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu];
if(not tab_obiekt)then return nil;end;
local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji;
if(uchwyty_bez_numeracji)then
return uchwyty_bez_numeracji[kod];
end;
end;
function p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
kod_uchwytu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(kod_uchwytu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or kod_uchwytu;
local html_modul=require("Module:Html");
kod_uchwytu=html_modul.DecodeHtml(kod_uchwytu,true);
if(kod_uchwytu~="")then
KtorySzablonMaZwracacKategorie(kod_uchwytu);
local lista_dwuelementowa={};
lista_dwuelementowa[1]=kod_uchwytu;
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_obiektu)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu])))then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_obiektu=true;
end;
if(tab_numer)then
tab_numer[nazwa_obiektu]=tab_numer[nazwa_obiektu]+1;
local numer=tab_numer[nazwa_obiektu];
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],numer,lista_dwuelementowa);
else
table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],lista_dwuelementowa);
end;
return lista_dwuelementowa;
end;
end;
function p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,nazwa_obiektu, czy_artykul_korzystany,numer_numeracji,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie)
local kod_uchwytu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[numer_numeracji];
if(kod_uchwytu)then
local lista_dwuelementowa=p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return lista_dwuelementowa;
end;
end;
function p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(nazwa_artykulu=="")then return;end;
local czy_element_wystepuje_w_tablicy=false;
local tablica_przestrzeni_wszystkiego=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron;
if(tablica_przestrzeni_wszystkiego)then
local tabela_przestrzeni_ksiazek=tablica_przestrzeni_wszystkiego[nazwa_przestrzeni];
if(tabela_przestrzeni_ksiazek)then
local tabela_ksiazek=tabela_przestrzeni_ksiazek[nazwa_przestrzeni_ksiazki]
if(tabela_ksiazek)then
local tab_ksiazki=tabela_ksiazek[nazwa_ksiazki];
if(tab_ksiazki)then
if(tab_ksiazki.spis)then
--czy_lista_niepusta=true;
for _,tab_value1 in ipairs(tab_ksiazki.spis)do
if(tab_value1[2])then
for _,nazwa_artykulu1 in ipairs(tab_value1[2])do
if(nazwa_artykulu1[1]==nazwa_artykulu)then
czy_element_wystepuje_w_tablicy=true;
break;
end;
end;
end;
if(czy_element_wystepuje_w_tablicy)then break;end;
end;
end;
end;
end;
end;
end;
if(not czy_element_wystepuje_w_tablicy)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwa_przestrzeni)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu~=nazwa_przestrzeni_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu~=nazwa_ksiazki)
or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=nazwa_artykulu))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni,nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych stron",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisu treści do korzystanych stron"))then
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisu treści do korzystanych stron");
end;
end;
end;
end;
end;
function p.PusteParametryReferencji(self, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu)
local czy_ksiazka_z_tylko_odstepami_lub_pusty=(nazwa_ksiazki)and (nazwa_ksiazki=="") or nil;
local czy_artykul_z_tylko_odstepami_lub_pusty=(nazwa_artykulu)and (nazwa_artykulu=="") or nil;
local czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty=(uchwyt_obiektu)and (uchwyt_obiektu=="") or nil;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1);
end;
end;
if(czy_artykul_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2);
end;
end;
if(czy_ksiazka_z_tylko_odstepami_lub_pusty)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3);
end;
end;
end;
function p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie,czy_inna_wartosc_tekst)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca,((not czy_inna_wartosc_tekst)and true or false));
--local ksiazkowe_modul=require("Module:Książkowe");
--pelna_nazwa_ksiazki=pelna_nazwa_ksiazki or ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"]();
--nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"]();
if((nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki)or(nazwa_artykulu))then
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwa_przestrzeni_ksiazki or ksiazkowe_modul["NazwaPrzestrzeniKsiążki"](nil,tabela_nazw);
local nazwa_ksiazki=nazwa_ksiazki or ksiazkowe_modul["NazwaTytułuKsiążki"](nil,tabela_nazw);
local nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"](nil,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false);
end;
end;
function p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,czy_szablon_pudelkowy_strony_zbiorczej,KtorySzablonMaZwracacKategorie)
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not nazwa_przestrzeni)and(not nazwa_jednostki))then return;end;
local parametry_modul=require("Module:Parametry");
if((nazwa_jednostki) and (nazwa_jednostki==""))then return;end;
local szablonowe_modul=require("Module:Szablonowe");
if((nazwa_jednostki and mw.ustring.match(nazwa_jednostki,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
or (nazwa_przestrzeni and mw.ustring.match(nazwa_przestrzeni,szablonowe_modul.NormaWzoruKodowaniaTekstu()))
)then return;end;
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local html_modul=require("Module:Html");
if(nazwa_jednostki)then
nazwa_jednostki=html_modul.DecodeHtml(nazwa_jednostki,true);
end;
local tabela_nazw_art={};
local nazwa_jednostki=(nazwa_jednostki
and mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1")
or nil
) or ksiazkowe_modul["NazwaArtykułu"](nil,tabela_nazw_art);
if(nazwa_przestrzeni)then
nazwa_przestrzeni=html_modul.DecodeHtml(nazwa_przestrzeni,true);
end;
local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw_art);
local strona=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local techniczne_modul=require("Module:Techniczne");
strona=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=strona,[2]=self.nazwa_modulu_biezaca,};
--strona=ksiazkowe_modul["PEŁNANAZWASTRONY"](strona);
local tabela_nazw={};
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
local nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
local nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw)));
local nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazw);
if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end;
local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,nil,czy_szablon_pudelkowy_strony_zbiorczej);
end;
function p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_aktualna,bezuchwytowe)
local nazwa_artykulu=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[bezuchwytowe and 1 or 2];
local pelna_nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[bezuchwytowe and 2 or 3];
local parametry_modul=require("Module:Parametry");
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
if(nazwa_artykulu)then
nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",};
end;
local nazwa_ksiazki;local nazwa_przestrzeni_ksiazki;local nazwa_przestrzeni;
if(pelna_nazwa_ksiazki)then
pelna_nazwa_ksiazki=html_modul.DecodeHtml(pelna_nazwa_ksiazki,true);
local techniczne_modul=require("Module:Techniczne");
pelna_nazwa_ksiazki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=pelna_nazwa_ksiazki,[2]=nazwa_aktualna,};
----
local tabela_nazw={};
local ksiazkowe_modul=require("Module:Książkowe");
pelna_nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)));
--pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
end;
return nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu;
end;
function p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna)
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_modulu_aktualna);
local nazwy_modul=require("Module:Nazwy");
local czy_inna_wartosc_tekst=true;
if((nazwa_artykulu)and(nazwa_ksiazki))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwy_modul["NazwaModułu"]("",nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or (ksiazkowe_modul["NazwaKsiążki"]()..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""));
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
elseif((not nazwa_artykulu)and(nazwa_ksiazki))then
local ksiazkowe_modul=require("Module:Książkowe");
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"]();
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or ksiazkowe_modul["NazwaKsiążki"]();
----
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
else
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst);
end;
end;
function p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,nazwa_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,czy_pobierz)
local uchwyt_obiektu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[1];
local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca);
----
local parametry_modul=require("Module:Parametry");
if(parametry_modul.CzyTak(uchwyt_obiektu))then
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
uchwyt_obiektu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(uchwyt_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or uchwyt_obiektu;
local html_modul=require("Module:Html");
uchwyt_obiektu=html_modul.DecodeHtml(uchwyt_obiektu,true);
end;
----
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
----
if(parametry_modul.CzyTak(uchwyt_obiektu))then
nazwa_artykulu=(nazwa_artykulu or (nazwa_ksiazki and "" or nil));
if(nazwa_artykulu)then
if(nazwa_artykulu~="")then
if(not nazwa_ksiazki)then
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
elseif(nazwa_ksiazki=="")then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
end;
elseif((nazwa_ksiazki)and(nazwa_ksiazki~=""))then
nazwa_artykulu="";
elseif((nazwa_ksiazki)and(nazwa_ksiazki==""))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
return;
else
nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
end;
if((nazwa_przestrzeni~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)
or(nazwa_przestrzeni_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)
or(nazwa_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)
or(nazwa_artykulu~=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz);
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
elseif((uchwyt_obiektu)and(uchwyt_obiektu==""))then
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,nil);
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu))then
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu);
end;
KtorySzablonMaZwracacKategorie(uchwyt_obiektu);
end;
function p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz)
local linkobiekttab=tablica_zmiennych.linkobiekt[nazwa_obiektu];
local parametry_modul=require("Module:Parametry");
if((not tablica_zmiennych.sprawdzenie_dokonane_linku)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](linkobiekttab)))then
local parametry_modul=require("Module:Parametry");
local nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
local nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
local nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
local nazwa_artykulu=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu;
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
tablica_zmiennych.sprawdzenie_dokonane_linku=true;
end;
table.insert(linkobiekttab,uchwyt_obiektu);
if(czy_pobierz)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane)then
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane={};
end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane,{{nazwa_obiektu,uchwyt_obiektu,},{obiekt,kod,},});
end;
end;
function p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,__FUNKCJA)
local pudelko_modul=require("Module:Pudełko");
if(((nazwa_przestrzeni)and(((nazwa_przestrzeni~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni)))or(nazwa_przestrzeni=="")))
and((nazwa_przestrzeni_ksiazki)and(((nazwa_przestrzeni_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni_ksiazki)))or(nazwa_przestrzeni_ksiazki=="")))
and((nazwa_ksiazki)and(nazwa_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_ksiazki)))
and((nazwa_artykulu)and(((nazwa_artykulu~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_artykulu)))or(nazwa_artykulu=="")))
)then
if(__FUNKCJA)then
__FUNKCJA(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron"))then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)
and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron");
else
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy stron dołączanych do stron");
end;
end;
end;
end;
function p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz)
p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,function()
local parametry_modul=require("Module:Parametry");
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(parametry_modul.CzyTak(nazwa_ksiazki))and(nazwa_artykulu))then
local tablica_zmiennych2={};
tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2={}
local tabela_listy_danych_analizy_ksiazki0,tablica_zmiennych2,czy_inna=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,tablica_zmiennych2);
if(tabela_listy_danych_analizy_ksiazki0)then
if((not czy_inna)or(not tablica_zmiennych2))then return;end;
local stronicowyparser_szablony_tekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
local JuzPoliczone=function()
if(czy_pobierz)then
stronicowyparser_szablony_tekstu_modul.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,false);
end;
if(not tablica_zmiennych2.dane_juz_policzone)then tablica_zmiennych2.dane_juz_policzone={};end;
local tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
if(not tab_nazwa_obiektu)then
tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]={};
tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu];
end;
local tab_uchwyt=tab_nazwa_obiektu[uchwyt_obiektu];
if(tab_uchwyt)then
return true;
end;
tab_nazwa_obiektu[uchwyt_obiektu]=true;
return false;
end;
if(not parametry_modul.CzyTak(tabela_listy_danych_analizy_ksiazki0))then
local czy_policzone=JuzPoliczone();
if(czy_policzone)then
return;
end;
else
JuzPoliczone();
end;
stronicowyparser_szablony_tekstu_modul.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2);
p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu);
local czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2=tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu];
local CzyLink=czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2.CzyLink;
local ile_razy=0;
if(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2)then
for _, parametry_obiektu in ipairs(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2) do
if(parametry_obiektu[1]==uchwyt_obiektu)then
ile_razy=ile_razy+1;
if(ile_razy>1)then break;end;
end;
end;
end
if(ile_razy~=1)then
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu);
end;
p.PusteParametryReferencji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
else
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera");
end;
end;
else
p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu);
end;
end);
end;
function p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, czy_artykul_korzystany,tablica_zmiennych,czy_szablon_pudelkowy_strony_zbiorczej)
local function __FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni])then self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]={};end;
local tablica_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(not tablica_przestrzeni[nazwa_przestrzeni_ksiazki])then tablica_przestrzeni[nazwa_przestrzeni_ksiazki]={};end;
local tablica_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki];
if(not tablica_przestrzeni_ksiazki[nazwa_ksiazki])then tablica_przestrzeni_ksiazki[nazwa_ksiazki]={};end;
local tablica_ksiazki=tablica_przestrzeni_ksiazki[nazwa_ksiazki];
if(not tablica_ksiazki.lista_podstron_woluminu)then tablica_ksiazki.lista_podstron_woluminu={};end;
if(nazwa_artykulu)then
if(not tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu])then tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu]={};end;
local artykul_analizowany=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu];
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany;
else
return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki;
end;
end;
local function __FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if(not czy_artykul_korzystany)then
if(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni and self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu)then
if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then
return 0,nil,nil,nil,nil,nil,self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron,false;
else
if(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=true;
end;
end;
else
return nil;
end;
end;
if(self.tabela_listy_danych_analizy_ksiazki)then
if(self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron)then
local tabela_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
if(tabela_przestrzeni)then
local tabela_przestrzeni_ksiazki=tabela_przestrzeni[nazwa_przestrzeni_ksiazki];
if(tabela_przestrzeni_ksiazki)then
local tabela_ksiazka=tabela_przestrzeni_ksiazki[nazwa_ksiazki];
if(tabela_ksiazka)then
local lista_artykolow=tabela_ksiazka.lista_podstron_woluminu;
if(lista_artykolow)then
local tabela_artykul=lista_artykolow[nazwa_artykulu];
if(tabela_artykul)then
local dane_zebrane_ze_stron=tabela_artykul.dane_zebrane_ze_stron;
return 0,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,true;
end;
end;
end;
end;
end;
else
return nil;
end;
else
return nil;
end;
return true;
end;
local nazwy_modul=require("Module:Nazwy");
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,czy_inna=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local function StronaSubstFunkcja(tabela_artykul,spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu)
if((czy_szablon_pudelkowy_strony_zbiorczej)and(not czy_artykul_korzystany)and(tabela_artykul)and(not tabela_artykul.strona_zbiorcza))then
--local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return "tak";end;local NieFun=function(frame) return "";end;
tabela_artykul.strona_zbiorcza=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
end;
if(not wartosc_wyniku)then
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna;
end;
----
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy");
if((nazwa_przestrzeni~=nazwy_np_modul.Main)
and(nazwa_przestrzeni~=nazwy_np_modul.Wikijunior)
and((nazwa_przestrzeni~=nazwy_np_modul.User)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^([^/]+)$")))
and((nazwa_przestrzeni~=nazwy_np_modul.Wikibooks)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^%s*[Bb]rudnopis/([^/]+)$")))
)then
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
----
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local parametry_modul=require("Module:Parametry");
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
----
local tekst_rozwiniety_calego_artykulu_ref=nil;
local tablica_analizy_obiektow_strony_dany_modul_ref=nil;
local tablica_danych_parametrow_szablonu_strony_ref=nil;
----
local function InneInformacjePrzebneDoAnalizowanejKsiazki()
if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then
if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"])then self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"]="tak";end;
end;
local czy_ksiazka_istnieje_w_tablicy=((tablica_ksiazki)and(tablica_ksiazki.czy_spis_analizowano))and true or false;
if(not czy_ksiazka_istnieje_w_tablicy)then
tablica_ksiazki.czy_spis_analizowano=true;
local stronicowyparser_spistresci_modul=require("Module:StronicowyParser/SpisTreści");
local nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp;
local tabela_artykulow,tabela_licencji_spisu_tresci,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,adres_ksiazki_glownego_spisu_tresci=stronicowyparser_spistresci_modul.ZbieranieInformacjiSpisuRzeczyWoluminuEwentualnieWedleAutonawigacji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,czy_artykul_korzystany,function(nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona)
local tablica_przestrzeni_strona=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni_strona];
if(tablica_przestrzeni_strona)then
local tablica_przestrzeni_ksiazki_strona=tablica_przestrzeni_strona[nazwa_przestrzeni_ksiazki_strona];
if(tablica_przestrzeni_ksiazki_strona)then
local tablica_ksiazki_strona=tablica_przestrzeni_ksiazki_strona[nazwa_ksiazki_strona];
if(tablica_ksiazki_strona)then
if(tablica_ksiazki_strona.spis)then
nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp=nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona;
tablica_ksiazki.spis=tablica_ksiazki_strona.spis;
tablica_ksiazki.licencja=tablica_ksiazki_strona.licencja;
tablica_ksiazki.nazwa_bazowego_spisu=tablica_ksiazki_strona.nazwa_bazowego_spisu;
tablica_ksiazki.tab_inne_spisy=tablica_ksiazki_strona.tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=tablica_ksiazki_strona.dodatkowe_strony_woluminu;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=tablica_ksiazki_strona.adres_woluminu_bazowego_spisu_rzeczy;
tablica_ksiazki.referencja_do_nowej_formy_spisu={tablica_przestrzeni_strona,tablica_przestrzeni_ksiazki_strona,tablica_ksiazki_strona,};
return 1;
end;
end;
end
end;
end,function(tekst_rozwiniety_calego_artykulu_ref_spis,nazwa_przestrzeni_ref_spis,nazwa_przestrzeni_ksiazki_ref_spis,nazwa_ksiazki_ref_spis,nazwa_artykulu_ref_spis,tablica_analizy_obiektow_strony_dany_modul_ref_spis,tablica_danych_parametrow_szablonu_strony_ref_spis)
----
if((nazwa_przestrzeni==nazwa_przestrzeni_ref_spis)and(nazwa_przestrzeni_ksiazki==nazwa_przestrzeni_ksiazki_ref_spis)and(nazwa_ksiazki==nazwa_ksiazki_ref_spis)and(nazwa_artykulu==nazwa_artykulu_ref_spis))then
tekst_rozwiniety_calego_artykulu_ref=tekst_rozwiniety_calego_artykulu_ref_spis;
local parametry_modul=require("Module:Parametry");
tablica_analizy_obiektow_strony_dany_modul_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_analizy_obiektow_strony_dany_modul_ref_spis);
tablica_danych_parametrow_szablonu_strony_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_danych_parametrow_szablonu_strony_ref_spis);
end;
----
end);
local function __FUNKCJA_SPISU(tablica_ksiazki,czy_podac_adres)
tablica_ksiazki.spis=tabela_artykulow;
if(czy_artykul_korzystany)then
tablica_ksiazki.licencja=tabela_licencji_spisu_tresci;
end;
tablica_ksiazki.nazwa_bazowego_spisu=nazwa_glownego_spisu;
tablica_ksiazki.tab_inne_spisy=tab_inne_spisy;
tablica_ksiazki.dodatkowe_strony_woluminu=dodatkowe_artykuly;
tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=czy_podac_adres and adres_ksiazki_glownego_spisu_tresci or nil;
end;
if(tabela_artykulow==0)then
if(czy_artykul_korzystany)then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"korzystana strona główna nie istnieje");
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"dołączone strony główne nie istnieją",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
elseif(tabela_artykulow)then
if(parametry_modul.TypeTable(tabela_artykulow))then
if(adres_ksiazki_glownego_spisu_tresci)then
__FUNKCJA_SPISU(tablica_ksiazki,true);
local tablica_ksiazki_stara=tablica_ksiazki;
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local nazwa_przestrzeni=adres_ksiazki_glownego_spisu_tresci[1];
local nazwa_przestrzeni_ksiazki=adres_ksiazki_glownego_spisu_tresci[2];
local nazwa_ksiazki=adres_ksiazki_glownego_spisu_tresci[3];
if((kod_wyniku==1)or(kod_wyniku==4))then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
local nazwa_artykulu=artykul;
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni ,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==2)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
elseif(kod_wyniku==3)then
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nil);
tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,};
__FUNKCJA_SPISU(tablica_ksiazki,false);
return nil,nil,artykul,kod_wyniku;
end;
else
__FUNKCJA_SPISU(tablica_ksiazki,false);
end;
elseif(tabela_artykulow~=1)then
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku,true;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku,true;
end;
end;
else
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych"))then
if(((self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=="")and(nazwa_artykulu~=""))or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=""))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych książek na ich stronach głównych",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
end;
end;
end;
end;
end;
end;
----
local wartosc_wyniku,wynik_bledu,artykul_bazowy,kod_wyniku_bazowy=InneInformacjePrzebneDoAnalizowanejKsiazki();
if(wynik_bledu)then return wartosc_wyniku;end;
local kod_wyniku_przekierowan=kod_wyniku_bazowy;
----
--if((not tablica_przestrzeni)or(not tablica_przestrzeni_ksiazki)or(not tablica_ksiazki)or(not artykul_analizowany))then
-- tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
--end;
----
if(tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy)and((kod_wyniku_bazowy==1)or(kod_wyniku_bazowy==4))then
----
nazwa_przestrzeni=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[1];
nazwa_przestrzeni_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[2];
nazwa_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[3];
nazwa_artykulu=artykul_bazowy;
----
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=tablica_ksiazki.referencja_do_nowej_formy_spisu[1],tablica_ksiazki.referencja_do_nowej_formy_spisu[2],tablica_ksiazki.referencja_do_nowej_formy_spisu[3];
end;
local tabela_artykulow=tablica_ksiazki.spis;
if(tabela_artykulow)then
local nazwa_glownego_spisu=tablica_ksiazki.nazwa_bazowego_spisu;
local tab_inne_spisy=tablica_ksiazki.tab_inne_spisy;
local dodatkowe_artykuly=tablica_ksiazki.dodatkowe_strony_woluminu
local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,false);
if(kod_wyniku==1)then
nazwa_artykulu=artykul;
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
elseif(kod_wyniku==2)then
local nazwa_artykulu=artykul;
local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
end;
kod_wyniku_przekierowan=kod_wyniku_przekierowan or kod_wyniku;
end;
local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
local PrzekierownieAwaryjne=function()
if((not kod_wyniku_przekierowan)or(kod_wyniku_bazowy==4))then
--local artykul2,kod_wyniku2=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true);
local techniczne_modul=require("Module:Techniczne");
local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_modulu);
if(strona)then
if(strona~=nazwa_modulu)then
----
local tabela_nazw={};
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw);
nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw);
nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw) or nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw));
nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazwa);
local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(not wartosc_wyniku)then
return wartosc_wyniku;
elseif((wartosc_wyniku==0)and(tabela_artykul))then
StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
return wartosc_wyniku;
end;
tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
nazwa_modulu=strona;
else
return 0;
end;
end;
end;
end;
local wynik=PrzekierownieAwaryjne();
if(czy_artykul_korzystany)then
self.nazwa_modulu_biezaca=nazwa_modulu;
end;
if(wynik)then return wynik;end;
----
if(czy_artykul_korzystany)then
if((not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni=nazwa_przestrzeni;
self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu=nazwa_przestrzeni_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu=nazwa_ksiazki;
self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=nazwa_artykulu;
end;
end;
local nazwa_modulu_aktualna_czy_biezaca=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu) or nazwa_modulu;
-- przydzielanie tablicy
if(czy_artykul_korzystany)then
artykul_analizowany.artykul_biezacy=true;
tablica_ksiazki.ksiazka_analizowana=true;
end;
--koniec
--local iterator=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,"{{[^{}]-}}");
if(not tablica_zmiennych)then tablica_zmiennych={};end;
if(not tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2)then tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2={};end;
local stronicowyparser_obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
for _,element_w_tablicy_obiekt in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do
local CzyLink=element_w_tablicy_obiekt.CzyLink;
local CzyNum=element_w_tablicy_obiekt.CzyNum;
local wartosc=element_w_tablicy_obiekt[1];
tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum,};
if(czy_artykul_korzystany)then tablica_zmiennych.linkobiekt[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum;};end;
end;
local function StronaZbiorcza()
if(czy_artykul_korzystany)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
local TakFun=function(frame) return true;end;local NieFun=function(frame) return nil;end;
local wynik=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,tablica_ksiazki.spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
artykul_analizowany.strona_zbiorcza=(wynik and "tak" or "");
return wynik;
end;
return nil;
end;
local strona_zbiorcza=StronaZbiorcza();
local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,"");
local stronicowyparser_tekst_modul=require("Module:StronicowyParser/Tekst");
----
local tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony;
if((not tekst_rozwiniety_calego_artykulu_ref)or(not tablica_analizy_obiektow_strony_dany_modul_ref)or(not tablica_danych_parametrow_szablonu_strony_ref))then
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=stronicowyparser_tekst_modul.RekurencyjnyZakodowanoSpreparowanyWikikodStrony(self,nazwa_modulu_aktualna_czy_biezaca,(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))and true or nil),
nil)
else
tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=tekst_rozwiniety_calego_artykulu_ref,tablica_analizy_obiektow_strony_dany_modul_ref,tablica_danych_parametrow_szablonu_strony_ref;
end;
----
if(not czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then return 0;end;
end;
if(czy_artykul_korzystany)then
if(not tekst_rozwiniety_calego_artykulu)then
if(strona_zbiorcza)then
self.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"]="tak";
end;
return nil;
end;
end;
local szablonowe_modul=require("Module:Szablonowe");
local parametry_modul=require("Module:Parametry");
if((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))then
local aktualna_nazwa_modulu=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwa_modulu_aktualna_czy_biezaca or nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu);
local tekst=stronicowyparser_tekst_modul.SpreparowanyWikikodStrony(self,aktualna_nazwa_modulu);
if(tekst)then
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst,aktualna_nazwa_modulu);
local tablica_danych_parametrow_szablonu_strony={};
for szablon,obiekt,kod in iterator do
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,aktualna_nazwa_modulu,function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return true;
elseif(stronicowyparser_obiekty_modul.strona_start[nazwa_szablonu])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return true;
end;
end);
if(wynik)then break;end;
end;
end;
end;
end;
local uzyskano_w_wyniku_parsowania_wywolanie_szablonu;
local analiza_stron_korzystanych_zbiorczych=nil;
local stronastart=nil;
----
local tablica_obiekty=stronicowyparser_obiekty_modul.obiekty;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local format_elementowy_referencji_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_referencji_obiektowy;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
local szablony_wykorzystywane_przez_strony_zbiorcze=stronicowyparser_obiekty_modul.szablony_wykorzystywane_przez_strony_zbiorcze;
local format_elementowy_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_obiektowy;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu;
local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
----
local strona_start=stronicowyparser_obiekty_modul.strona_start;
local strona_start_ze_spisem_rzeczy_strony=stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony;
local strona_start_inne=stronicowyparser_obiekty_modul.strona_start_inne;
local szablony_strony_zbiorczej=stronicowyparser_obiekty_modul.strona_zbiorcza;
----
local tab_szablony=stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_kontenerowe;
local tab_szablony_stronicowe_niekontenerowe=stronicowyparser_obiekty_modul.szablony_stronicowe_niekontenerowe;
local tab_szablony_stronicowe_formatowania_tekstu=stronicowyparser_obiekty_modul.szablony_stronicowe_formatowania_tekstu;
local tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego=stronicowyparser_obiekty_modul.szablony_stronicowe_kontenerowe_formatowania_wzorowego;
----
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
local tabela_elementow_strony_kodow={};
-- for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
local function AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego(tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
if(czy_artykul_korzystany)then
if(tabela_parametrow_szablonu)then
if((not stronastart)and(self.tabela_listy_danych_analizy_ksiazki.formatowanie==nil))then
if(strona_start[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"];
stronastart=true;
local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or "";
local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC";
if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
stronastart=true;
return;
elseif(strona_start_inne[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak";
self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak";
stronastart=true;
return;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_prestreni_nazw))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
analiza_stron_korzystanych_zbiorczych=true;
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"];
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"];
if((not parametry_modul.CzyTak(nazwa_przestrzeni))and(not parametry_modul.CzyTak(nazwa_jednostki)))then
return;
end;
end;
end;
end;
local plik=mw.ustring.match(nazwa_szablonu_wywolania,"^:");
if(plik==nil)then
if(tabela_parametrow_szablonu)then
if(not parametry_modul.CzyTak(tabela_parametrow_szablonu["bez automatu"]))then
local czy_wypowiedzenie=(nazwa_szablonu_wywolania=="Wypowiedzenie");
local czy_linkobiekt;
local czy_link;local czy_pobierz;
local czy_wypowiedzenie_z_parametrami;
local czy_linkobiekt_z_parametrami;
if(czy_wypowiedzenie)then
czy_linkobiekt=false;
czy_link=false;
czy_pobierz=false;
czy_wypowiedzenie_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["rodzaj"]);
else
czy_linkobiekt=(nazwa_szablonu_wywolania=="LinkObiekt");
if(czy_linkobiekt)then
czy_link=true;
czy_pobierz=false;
czy_linkobiekt_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["typ"]);
else
czy_link=mw.ustring.match(nazwa_szablonu_wywolania,"^Link");
czy_pobierz=(not czy_link) and mw.ustring.match(nazwa_szablonu_wywolania,"^Pobierz") or nil;
end;
end;
if((not czy_link)and(not czy_pobierz))then
local wartosc_elementu;local numer_uchwytu;
if(not czy_wypowiedzenie_z_parametrami) then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
else
local rodzaj=tabela_parametrow_szablonu["rodzaj"];
if(rodzaj)then
wartosc_elementu=format_elementowy_obiektowy[rodzaj] and rodzaj or nil;
if(wartosc_elementu)then
numer_uchwytu=tablica_obiekty[5];
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
end;
elseif(czy_artykul_korzystany)then
if(czy_link)then
local wartosc_elementu;
if(not czy_linkobiekt_z_parametrami)then
wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania];
else
local typ=tabela_parametrow_szablonu["typ"];
if(typ)then
typ=format_elementowy_referencji_obiektowy[typ] and typ or nil;
if(typ)then
wartosc_elementu=mw.getContentLanguage():ucfirst(typ);
end;
end;
end;
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Link"..wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
end;
end;
elseif(czy_pobierz)then
local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
if(wartosc_elementu)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,true);
return;
end;
end;
end;
if(czy_wypowiedzenie)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Obiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,"Obiekt", czy_artykul_korzystany,tablica_obiekty[5],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_wprowadzenia_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,wartosc_elementu,lista_dwuelementowa,kod);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
end;
return;
elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_tekstu[nazwa_szablonu_wywolania])then
local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania];
local wartosc_elementu;local numer_uchwytu;
if(tab_wartosc_elementu)then
wartosc_elementu=tab_wartosc_elementu[1];
numer_uchwytu=tab_wartosc_elementu[2];
end;
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(czy_artykul_korzystany)then
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
if(uchwyt_obiektu and (uchwyt_obiektu~=""))then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
end;
end;
local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
if(lista_dwuelementowa)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
local tekst=stronicowyparser_szablonytekstu_modul.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu);
local bez_preprocess=stronicowyparser_szablonytekstu_modul.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu);
local czy_bez_preprocess=parametry_modul.CzyTak(bez_preprocess);
if(tekst)then
local czy_szablon_wszystko=false;
tekst=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul,
function(szablon,obiekt,kod)
if(czy_bez_preprocess)then return nil;end;
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,nazwa_modulu,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
if(
(tab_szablony[nazwa_szablonu])
or(tab_szablony_stronicowe_niekontenerowe[nazwa_szablonu])
or(tab_szablony_stronicowe_formatowania_tekstu[nazwa_szablonu])
or(tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego[nazwa_szablonu])
)then
if(not czy_artykul_korzystany)then
tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or nazwa_przestrzeni;
tabela_parametrow_szablonu["nazwa jednostki"]=tabela_parametrow_szablonu["nazwa jednostki"] or (((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or ""))
if(self)then
local czy_link_lub_pobierz=mw.ustring.match(nazwa_szablonu,"^Link") or mw.ustring.match(nazwa_szablonu,"^Pobierz");
if(czy_link_lub_pobierz)then
p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu);
end;
end;
end;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end;
return nil;
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- instrukcje warunkowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- wywołania ramek Lua w Scribunto
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end,
function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod)
---- tagi szablonowe;
return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true);
end);
czy_szablon_wszystko=czy_szablon_wszystko or true;
if(wynik)then return wynik;end;
elseif(obiekt=="ZMIENNA")then
czy_szablon_wszystko=czy_szablon_wszystko or true;
local zawartosc=mw.ustring.match(szablon,"^{{{(.*)}}}$");
if(zawartosc)then
zawartosc=mw.ustring.gsub(zawartosc,"|","{{!}}");
return "{{(((}}"..zawartosc.."{{)))}}";
end;
end;
end);
if((czy_szablon_wszystko)and(not bez_preprocess))then
local frame=mw.getCurrentFrame();
tekst=frame:preprocess(tekst);
end;
lista_dwuelementowa[2]=tekst;
end;
--local __metatabelka=getmetatable(tabela_parametrow_szablonu);
--if(__metatabelka)then setmetatable(tabela_parametrow_szablonu,nil);end;
stronicowyparser_szablonytekstu_modul.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany);
end;
return;
elseif(czy_artykul_korzystany)then
if(czy_linkobiekt)then
local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="LinkObiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or "");
end;
end;
p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,"Obiekt",nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie);
return;
else
if(stronicowyparser_obiekty_modul.szablony_z_lokalnym_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
return;
elseif(stronicowyparser_obiekty_modul.bez_uchwytow_spis_rzeczy_strony[nazwa_szablonu_wywolania])then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[2] or "";
local artykul=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[1] or "";
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..nazwa_ksiazki..((artykul)and ("/"..artykul) or "")
end;
end;
p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie);
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil;
if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true;
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
else
self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil;
end;
return;
else
local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or "";
local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or "";
local nazwa_symulacyjnej_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
local uchwyt=nazwa_szablonu_wywolania..":"..nazwa_symulacyjnej_strony;
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=uchwyt;
end;
end;
if((stronicowyparser_obiekty_modul.szablony_kontenerowe[nazwa_szablonu_wywolania])
or(szablony_strony_zbiorczej[nazwa_szablonu_wywolania])
)then
if(szablony_wykorzystywane_przez_strony_zbiorcze[nazwa_szablonu_wywolania])then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
else
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,nil,KtorySzablonMaZwracacKategorie);
end;
return;
elseif((strona_zbiorcza)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then
p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie);
return;
end;
end;
end;
end;
end;
end;
end;
end;
----
local function GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer)
stronicowyparser_potrzebne_modul:AnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_danych_parametrow_szablonu_strony,AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego);
end;
local function IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu,tab_numer)
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul);
for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do
GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer);
end;
end;
IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu);
----
local tablica_danych_nazwy_artykulu=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu] or {};
tablica_danych_nazwy_artykulu.uchwyty_i_numeracje=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
----
local wiki_modul=require("Module:Wiki");
tablica_danych_nazwy_artykulu.link_wikidane={wiki_modul.KodyKlasStronyNaDanejWiki{["strona"]=nazwa_modulu_aktualna_czy_biezaca,["nagłówek"]=true,["aktywny"]=true,},};
----
if(czy_artykul_korzystany)then
if(analiza_stron_korzystanych_zbiorczych)then
local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst");
tekst_rozwiniety_calego_artykulu=stronicowyparser_stronasubst_modul.LiczOperacjeStronZbiorczych(self,tekst_rozwiniety_calego_artykulu,tablica_ksiazki.spis,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony);
end;
end;
local strona;
if(czy_artykul_korzystany)then strona="";else strona=nazwa_modulu;end;
----
if(czy_artykul_korzystany)then
local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu");
stronicowyparser_szablonytekstu_modul.UstawPobierzKorzystanie(tablica_zmiennych);
tekst_rozwiniety_calego_artykulu=stronicowyparser_szablonytekstu_modul.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych,IterowaniePoElementachTekstu) or tekst_rozwiniety_calego_artykulu;
end;
----
local toc;
if(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane))
or((not czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)))then
----
local tablica_obiektow_strony_danych_kodow_specjalnych_modul=nil;
----
tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_danych_kodow_specjalnych_modul=szablonowe_modul:KodowanieInaczejZakodowanychNormKodowychTekstuWedleJegoTablicyKodowania(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,false);
----
local function KtorySzablonMaZwracacKategorieNaglowek(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"powtórka nagłówek w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function KtorySzablonMaZwracacKategorieTekst(numeracja_aktualna,nazwa_szablonu)
if(czy_artykul_korzystany)then
if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"))then
stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
else
stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"nagłowek w tekście rozdziału w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki);
if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then
self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or "");
end;
end;
end;
local function CzyJestTakiProblemJakoElementTablicy()
return stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej");
end;
local nazwa_naglowka=stronicowyparser_obiekty_modul.nazwa_szablonu_wprowadzenia_tekstu;
local stronicowyparser_glownafunkcjazbieraniadanych_modul=require("Module:StronicowyParser/GłównaFunkcjaZbieraniaDanychStron");
local tablica_naglowka_obiekty=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_naglowka];
tablica_naglowka_obiekty.uchwyty_bez_numeracji={};
local toc=stronicowyparser_glownafunkcjazbieraniadanych_modul.SpisRzeczyWedlePodanegoTekstu(self,tekst_rozwiniety_calego_artykulu,strona, czy_artykul_korzystany,nil,tablica_naglowka_obiekty.uchwyty_bez_numeracji, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki, nazwa_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_obiektow_strony_danych_kodow_specjalnych_modul,{KtorySzablonMaZwracacKategorieNaglowek,KtorySzablonMaZwracacKategorieTekst,CzyJestTakiProblemJakoElementTablicy},nil,tabela_elementow_strony_kodow);
tablica_danych_nazwy_artykulu.TOC=toc;
end;
StronaSubstFunkcja(tablica_danych_nazwy_artykulu,tablica_ksiazki.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
if(czy_artykul_korzystany)then
self.tabela_listy_danych_analizy_ksiazki.link_wikidane=tablica_danych_nazwy_artykulu.link_wikidane;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykulu=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2;
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni];
self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw[nazwa_przestrzeni_ksiazki];
self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki[nazwa_ksiazki];
--self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron=tablica_zmiennych;
end;
if(not czy_artykul_korzystany)then
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=tablica_zmiennych;
if(not self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista)then self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista={};end;
table.insert(self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista,tablica_danych_nazwy_artykulu);
else
local dane_zebrane_ze_stron_lista=self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista;
if(dane_zebrane_ze_stron_lista)then
for _,tablica_danych_nazwy_artykulu in ipairs(dane_zebrane_ze_stron_lista)do
tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=nil;
end;
end;
tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane=nil;
end;
return self.tabela_listy_danych_analizy_ksiazki,tablica_zmiennych,true;
end;
return p;
b9ez5hkujl07llfbyca0dfr8j55y01h
Wikipedysta:Persino/brudnopis8
2
61075
547072
499804
2026-06-20T18:55:44Z
Persino
2851
547072
wikitext
text/x-wiki
{{PobierzŚródtekst|uchwyt=patrz|nazwa artykułu=|nazwa książki=Szablon:Śródtekst}}
{{PobierzŚródtekst|uchwyt=patrz|nazwa artykułu=|nazwa książki=Szablon:Śródtekst}}
cil3ov61ha4ru604tl7c0au73enxfrk
Moduł:StronicowyParser/SzablonyTekstu
828
63668
547070
547058
2026-06-20T18:15:48Z
Persino
2851
547070
Scribunto
text/plain
local p={};
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)
local tekst=tabela_parametrow_szablonu["tekst"] or tabela_parametrow_szablonu["treść"] or tabela_parametrow_szablonu[1];
return tekst;
end;
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)
return tabela_parametrow_szablonu["bez preprocess"];
end;
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)
if(tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
for _,pozycja in ipairs(tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych)do
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,pozycja);
end;
end;
end;
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
end;
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)
local tablica_szablonu_tekstu;
if(czy_artykul_korzystany)then
tablica_szablonu_tekstu=tablica_zmiennych2.tablica_szablonu_tekstu_korzystanych;
else
tablica_szablonu_tekstu=tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych;
end;
if(tablica_szablonu_tekstu)then
for _,pozycja in ipairs(tablica_szablonu_tekstu)do
local nazwa_obiektu_tekstu=pozycja[1][1];
local uchwyt_obiektu_tekstu=pozycja[1][2][1];
if((nazwa_obiektu_tekstu==nazwa_obiektu)and(uchwyt_obiektu_tekstu==uchwyt_obiektu))then
local dodatkowe_elementy=pozycja[2];
local czy_tak=false;
for _,pozycja_dodatkowe in ipairs(dodatkowe_elementy)do
if((pozycja_dodatkowe[1]==obiekt)and(pozycja_dodatkowe[2]==kod))then
czy_tak=true;
break;
end;
end;
if(not czy_tak)then
local tab_numer;
if(tablica_zmiennych)then
tab_numer={};
for name,value in pairs(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2)do
tab_numer[name]=#tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[name];
end;
end;
table.insert(dodatkowe_elementy,{obiekt,kod,tab_numer});
break;
end;
end;
end;
end;
end;
function p.UstawPobierzKorzystanie(tablica_zmiennych2)
if(tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane)then
for _,pozycja in ipairs(tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane)do
if(not pozycja[3])then
pozycja[3]=true;
local nazwa_obiektu=pozycja[1][1];
local uchwyt_obiektu=pozycja[1][2];
local obiekt=pozycja[2][1];
local kod=pozycja[2][2];
p.UstawianiePobierz(nil,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,true);
end;
end;
end;
end;
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)
local __tablica_analizy_obiektow_strony_dany_modul=(pozycja[4] or{})[1] or tablica_analizy_obiektow_strony_dany_modul;
local __tablica_danych_parametrow_szablonu_strony=(pozycja[4] or {})[2] or tablica_danych_parametrow_szablonu_strony;
local tabela_parametrow_szablonu=pozycja[3][1][1];
----
local tekst=p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu);
if(tekst)then
local szablonowe_modul=require("Module:Szablonowe");
----
local tab_analiza=szablonowe_modul.LiczbyParametroweInformacjiBazyKodowaniaWikikodu();
--local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst,nil,__tablica_analizy_obiektow_strony_dany_modul);
local tab_numer={};
local tab_tak={};
local szablonowe_modul=require("Module:Szablonowe");
tekst=szablonowe_modul:ModyfikowanieKodowoSzablonoweZakodowanegoTekstu(tekst,nil,__tablica_analizy_obiektow_strony_dany_modul,
function(szablon,obiekt,kod,poziom_iteracji,_,obiekt_rodzica,kod_rodzica,szablon_rodzica,_,_,poziom_iteracji_rodzica)
obiekt_rodzica=obiekt_rodzica or true;
kod_rodzica=kod_rodzica or true;
local tab_tak_obiekt_rodzica=tab_tak[obiekt_rodzica];
if(not tab_tak_obiekt_rodzica)then tab_tak[obiekt_rodzica]={};tab_tak_obiekt_rodzica=tab_tak[obiekt_rodzica]end;
local tab_tak_kod_rodzica=tab_tak_obiekt_rodzica[kod_rodzica];
if(not tab_tak_kod_rodzica)then tab_tak_obiekt_rodzica[kod_rodzica]={};tab_tak_kod_rodzica=tab_tak_obiekt_rodzica[kod_rodzica]end;
local czy_tak=tab_tak_kod_rodzica[obiekt];
tab_tak_kod_rodzica[obiekt]=true;
tab_numer[obiekt]=tab_numer[obiekt] or szablonowe_modul.NumerSzablonuObiektu(tablica_analizy_obiektow_strony_dany_modul,obiekt);
local max_numer=tab_numer[obiekt];
local kod_temp=kod+max_numer;
--tablica_analizy_obiektow_strony_dany_modul[obiekt][kod_temp]=szablon;
local ile;
if(not czy_tak)then
szablon_rodzica,ile=mw.ustring.gsub(szablon_rodzica,szablonowe_modul.NormaWzoruKodowaniaTekstu(obiekt),function(kod)
kod=tonumber(kod) or nil;
return szablonowe_modul.NormaKoduKodowaniaTekstu(obiekt,kod+max_numer);
end);
end;
local tab_obiekt=tab_analiza[obiekt];
if(tab_obiekt)then
for _, wartosc in pairs(tab_obiekt)do
local tab_wartosc=tablica_danych_parametrow_szablonu_strony[wartosc];
if(not tab_wartosc)then
tablica_danych_parametrow_szablonu_strony[wartosc]={};
end;
tablica_danych_parametrow_szablonu_strony[wartosc][kod_temp]=(__tablica_danych_parametrow_szablonu_strony[wartosc] or {})[kod];
end;
end;
if(poziom_iteracji>0)then
tab_numer[obiekt_rodzica]=tab_numer[obiekt_rodzica] or szablonowe_modul.NumerSzablonuObiektu(tablica_analizy_obiektow_strony_dany_modul,obiekt_rodzica);
local max_numer_rodzica=tab_numer[obiekt_rodzica];
kod_rodzica=kod_rodzica+max_numer_rodzica;
end;
if(not czy_tak)then
return nil,szablon,obiekt,kod_temp,szablon_rodzica,obiekt_rodzica,kod_rodzica,tablica_analizy_obiektow_strony_dany_modul,max_numer_rodzica;
else
return nil,szablon,obiekt,kod_temp,nil,nil,nil,tablica_analizy_obiektow_strony_dany_modul,max_numer_rodzica;
end;
return;
end);
return tekst;
----
end;
return;
end;
function p.EdytowanieSzablonoweTekstuTypuPobierz(szablon,obiekt,kod,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych)
local function TempFunc(tablica_szablonu_tekstu,__funkcja,czy_korzystane)
for _,pozycja in ipairs(tablica_szablonu_tekstu)do
local tab_obiekty=pozycja[2];
for _,pozycja2 in ipairs(tab_obiekty)do
local __obiekt=pozycja2[1];
local __kod=pozycja2[2];
if((__obiekt==obiekt)and(__kod==kod))then
local szablon=__funkcja(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane);
if(szablon)then
tab_numer=pozycja2[3];
return szablon,tab_numer;
end;
return;
end;
end;
end;
end;
local szablon;local tab_numer;
if(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then
szablon,tab_numer=TempFunc(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,p.ZamienianiePobierzNaKod,true);
end;
if(not szablon)then
if(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then
szablon,tab_numer=TempFunc(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,p.ZamienianiePobierzNaKod,false);
end;
end;
if(szablon)then return szablon,tab_numer;end;
return nil;
end;
function p.EdytowanieSzablonoweTekstuTypuNiePobierz(szablon,obiekt,kod,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych)
local tablica_szablonu_tekstu_korzystanych=tablica_zmiennych.tablica_szablonu_tekstu_korzystanych;
for _,pozycja in ipairs(tablica_szablonu_tekstu_korzystanych)do
local __obiekt=pozycja[3][2];
local __kod=pozycja[3][3];
if((obiekt==__obiekt)and(kod==__kod))then
local tabela_parametrow_szablonu=pozycja[3][1][1];
local tekst=p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu);
if(tekst)then return tekst;end;
return nil;
end;
end;
return nil;
end;
function p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych,IterowaniePoElementachTekstu)
if((not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)and(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych))then return nil;end;
if(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then
local function TempFunc(tablica_szablonu_tekstu)
for _,pozycja in ipairs(tablica_szablonu_tekstu)do
local tab_pobierz=pozycja[2];
for _,value in ipairs(tab_pobierz)do
return true;
end;
end;
return nil;
end;
if((not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)and(not TempFunc(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)))then return nil;end;
end;
local stronicowyparser_obiekty_modul=require("Module:StronicowyParser/obiekty");
local tab_pobierz_szablonu_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu;
local tab_szablony_tekstu=stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_tekstu;
local czy_pobierz=nil;
local szablonowe_modul=require("Module:Szablonowe");
tekst_rozwiniety_calego_artykulu=szablonowe_modul:ModyfikowanieKodowoSzablonoweZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nil,tablica_analizy_obiektow_strony_dany_modul,function(szablon,obiekt,kod,poziom_iteracji)
if(czy_pobierz)then
szablon,tab_numer=p.EdytowanieSzablonoweTekstuTypuPobierz(szablon,obiekt,kod,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych);
if(szablon)then
IterowaniePoElementachTekstu(szablon,tab_numer);
end;
else
szablon=p.EdytowanieSzablonoweTekstuTypuNiePobierz(szablon,obiekt,kod,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych)
end;
if(szablon)then return szablon;end;
return nil;
end,nil,
function(szablon,obiekt,kod,poziom_iteracji)
if(obiekt=="SZABLON")then
local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,pelna_nazwa_spisu_tresci_szablonowa,function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow)
----
if(tab_pobierz_szablonu_tekstu[nazwa_szablonu])then
czy_pobierz=true;
return true;
elseif(tab_szablony_tekstu[nazwa_szablonu])then
czy_pobierz=false;
return true;
end;
return nil;
end);
if(wynik)then return wynik;end;
end;
return nil;
end);
return tekst_rozwiniety_calego_artykulu;
end;
return p;
hyek8b0ja3yg01uksy61cz0wh0yx64q
Wikibooks:Moduły/StronicowyParser/SzablonyTekstu
4
63669
547066
547065
2026-06-20T12:23:48Z
Persino
2851
/* {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} */
547066
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jaki {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
c0k4j613sq89r7ou0t48mfm0yb10xnc
547067
547066
2026-06-20T14:33:11Z
Persino
2851
/* {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} */
547067
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jaki {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być z wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
3zi9j6egf8hb9ms3z4vmq6qs5m9xgtl
547068
547067
2026-06-20T14:46:22Z
Persino
2851
/* {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} */
547068
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jaki {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa[1],},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
kiim6s9xhw60w8s7izde6ot5ukpch9j
547071
547068
2026-06-20T18:17:31Z
Persino
2851
547071
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jaki {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ppxc1gemzwh4b0aar1lklfjrcrxccz4
547076
547071
2026-06-21T08:40:43Z
Persino
2851
547076
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
c6gnku9zoih2du5ouzqogw48fc1pnot
547077
547076
2026-06-21T08:56:36Z
Persino
2851
/* {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} */
547077
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
s96tlhgqjyen8x4g869zwnoxhzf9qfa
547078
547077
2026-06-21T09:03:16Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547078
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{LinkPatrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
pyzhng1jqczy03mbm5ikskrj6i2so4x
547079
547078
2026-06-21T09:03:44Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547079
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
r9omqnlvdwr390211loooj2z90exm4m
547080
547079
2026-06-21T09:15:42Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547080
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
qntfszbn55hujk3amu9uzo8j7tfhqgz
547081
547080
2026-06-21T09:28:36Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547081
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane drugiej podtablicy w tablicy dodawanej w {{ZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
sz8c7otyb39w3azf6ms9slhdp2c2hax
547082
547081
2026-06-21T09:29:03Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547082
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
6diqlalnl214kqrjs4wea4purhx6diw
547083
547082
2026-06-21T09:29:33Z
Persino
2851
/* {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} */
547083
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
ap4cbfxc2592agmael39m7nvk5rum32
547084
547083
2026-06-21T09:48:08Z
Persino
2851
/* {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} */
547084
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
iu8eq50auvha0rcmda8zwbl2roaxzz7
547085
547084
2026-06-21T10:18:22Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547085
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
jdrj4rjawlxwiy7yz7hlfbes7bjv4yj
547086
547085
2026-06-21T10:35:01Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547086
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{LinkPatrz|tekst}}, {{Linkpatrz|treść}} lub {{Code|1}}, występujących w tabeli: {{Patrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
b3gbujps469t973i8midzsk7o6argl3
547087
547086
2026-06-21T10:35:36Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547087
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{Code|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
71qs0ztc4v0ad627bbc61mcyyhdxbyx
547088
547087
2026-06-21T10:43:03Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547088
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
7kn383o0vut7fs4ohtg59hv6iwn9l4c
547089
547088
2026-06-21T11:06:45Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547089
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{ZobaczTeż|tekst}}: {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element {{ZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}}: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
Funkcja wykorzystuje do modyfikacji funkcję: {{Code|{{sr|#p.ModyfikowanieKodowoSzablonoweZakodowanegoTekstu|p=Szablonowe}}}}, ona seryjnie modyfikuje całe elementy tekstu {{LinkZobaczTeż|tekst}} lub elementy bazy {{LinkZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}} o pewnych dwuwymiarowych nazwach, co do kodów bazy. Element tekstu do modyfikacji jest uzyskiwany z funkcji: {{LinkPatrz|p.ParametrTekstowySzablonuTekstu}}, jeżeli ten tekst istnieje, a gdy nie, to funkcja nie zwraca żadnej wartości, a jak jest, to ten tekst, ze zmodyfikowaną tabelą bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, też ze zmodyfikowaną tabelą parametrów {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
sdtzzzwuzmx3dcalm6zwj0f6kru798s
547090
547089
2026-06-21T11:07:34Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547090
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{ZobaczTeż|tekst}}: {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element {{ZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}}: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
Funkcja wykorzystuje do modyfikacji funkcję: {{Code|{{sr|#p.ModyfikowanieKodowoSzablonoweZakodowanegoTekstu|p=Szablonowe}}}}, ona seryjnie modyfikuje całe elementy tekstu {{LinkZobaczTeż|tekst}} lub elementy bazy {{LinkZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}} o pewnych dwuwymiarowych nazwach, co do kodów bazy. Element tekstu do modyfikacji jest uzyskiwany z funkcji: {{LinkŚródtytuł|p.ParametrTekstowySzablonuTekstu}}, jeżeli ten tekst istnieje, a gdy nie, to funkcja nie zwraca żadnej wartości, a jak jest, to ten tekst, ze zmodyfikowaną tabelą bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, też ze zmodyfikowaną tabelą parametrów {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
jqax7erfbk8z0agqh0a1kpa077dj1tr
547091
547090
2026-06-21T11:24:40Z
Persino
2851
547091
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}, czy {{m|StronicowyParser/}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{ZobaczTeż|tekst}}: {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdeefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element {{ZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}}: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
Funkcja wykorzystuje do modyfikacji funkcję: {{Code|{{sr|#p.ModyfikowanieKodowoSzablonoweZakodowanegoTekstu|p=Szablonowe}}}}, ona seryjnie modyfikuje całe elementy tekstu {{LinkZobaczTeż|tekst}} lub elementy bazy {{LinkZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}} o pewnych dwuwymiarowych nazwach, co do kodów bazy. Element tekstu do modyfikacji jest uzyskiwany z funkcji: {{LinkŚródtytuł|p.ParametrTekstowySzablonuTekstu}}, jeżeli ten tekst istnieje, a gdy nie, to funkcja nie zwraca żadnej wartości, a jak jest, to ten tekst, ze zmodyfikowaną tabelą bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, też ze zmodyfikowaną tabelą parametrów {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
lu8yjxl07z3xgu4dgm101ir1z4gfgea
547092
547091
2026-06-21T11:36:34Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547092
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}, czy {{m|StronicowyParser/}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{ZobaczTeż|tekst}}: {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element {{ZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}}: {{Code|(pozycja[4] or{})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
Funkcja wykorzystuje do modyfikacji funkcję: {{Code|{{sr|#p.ModyfikowanieKodowoSzablonoweZakodowanegoTekstu|p=Szablonowe}}}}, ona seryjnie modyfikuje całe elementy tekstu {{LinkZobaczTeż|tekst}} lub elementy bazy {{LinkZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}} o pewnych dwuwymiarowych nazwach, co do kodów bazy. Element tekstu do modyfikacji jest uzyskiwany z funkcji: {{LinkŚródtytuł|p.ParametrTekstowySzablonuTekstu}}, jeżeli ten tekst istnieje, a gdy nie, to funkcja nie zwraca żadnej wartości, a jak jest, to ten tekst, ze zmodyfikowaną tabelą bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, też ze zmodyfikowaną tabelą parametrów {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
6rxciupfu0gtuhzgu1mv6ej6ysbvuo2
547093
547092
2026-06-21T11:58:12Z
Persino
2851
/* {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} */
547093
wikitext
text/x-wiki
<noinclude>{{ProstaStronaStart
| nagłówek = {{Podrozdział|{{ld2|StronicowyParser/SzablonyTekstu}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}}
| stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}}
}}</noinclude>
{{Spis treści}}
Ten moduł służy do obsługi szablonów: {{s|Śródtekst}} i {{s|PobierzŚródtekst}}.
Stronicowy parser jak napotka szablon {{s|Śródtekst}}, to generuje tworzenie następujących tablic: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, dla tych szablonów w artykule niekorzystanej, lub korzystanej według: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}} {{Patrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, jako {{ZobaczTeż|tabele szablonu tekstu}}:
<syntaxhighlight lang="lua">
if(not czy_artykul_korzystany)then
if(not tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
{tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,},
});
else
if(not tablica_zmiennych.tablica_szablonu_tekstu_korzystanych)then tablica_zmiennych.tablica_szablonu_tekstu_korzystanych={};end;
table.insert(tablica_zmiennych.tablica_szablonu_tekstu_korzystanych,{
{wartosc_elementu,lista_dwuelementowa,},
{},
{{tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,},obiekt,kod,},
});
end;
</syntaxhighlight>
Z tych tabel korzysta, nie tylko, szablon: {{s|Śródtekst}}, ale też i: {{s|PobierzŚródtekst}}, przy pomocy oprogramowania modułu {{m|StronicowyParser}}, czy {{m|StronicowyParser/}}.
== {{Śródtytuł|p.ParametrTekstowySzablonuTekstu}}{{Code|p.ParametrTekstowySzablonuTekstu}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|tekst}} {{Patrz|tekst}}, {{Code|treść}} {{Patrz|treść}} lub {{Code|1}} {{Patrz|1}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{LinkPatrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o różnych parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.SzablonTekstuBezPreProcess}}{{Code|p.SzablonTekstuBezPreProcess}} ==
Funkcja liczy element tablicy: {{LinkPatrz|tabela_parametrow_szablonu}}, o nazwie {{Code|bez preprocess}} {{Patrz|bez preprocess}}, i go zwraca:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tabela_parametrow_szablonu}} {{Patrz|tabela_parametrow_szablonu}} - parametry szablonu {{s|Śródtekst}}, o parametrach nazwanych lub nienazwanych.
== {{Śródtytuł|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}}{{Code|p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony}} ==
Funkcja elementy tablicy: {{Code|tablica_zmiennych2}} {{Patrz|tablica_zmiennych2}}, przypisuje tablicy: {{Code|tablica_zmiennych}} {{Patrz|tablica_zmiennych}}, czyli do tego pierwszego dodaje elementy o nazwie: {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_niekorzystanych}}, do tablicy o nazwie: {{Code|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}} {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, a jeżeli ta tablica nie istnieje, to jest tworzona:
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}}, jest to tablica dla strony niekorzystanej,
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}, jest to tablica dla strony korzystanej, aktualnej strony, która jest wyświetlana na ekranie.
== {{Śródtytuł|p.DodawanieDoBazyStronySzablonuTekstu}}{{Code|p.DodawanieDoBazyStronySzablonuTekstu}} ==
Szablon dodający elementy do tablicy bazy: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}}, szablonu: {{LinkPatrz|Śródtekst}}, tzn. do tablicy: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, gdy {{LinkPatrz|czy_artykul_korzystany}}, jest równy wartości fałszywej, przeciwnie do: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}. Te elementy są dodawane według następującego kodu: {{LinkZobaczTeż|tabele szablonu tekstu}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}} lub {{LinkPatrz|tablica_zmiennych2}},
* {{Code|wartosc_elementu}} {{Patrz|wartosc_elementu}} - rodzaj elementu, jak: {{Code|Śródtekst}} {{Patrz|rodzaj: Śródtekst}}, dla jednego z szablonów tekstu,
* {{Code|lista_dwuelementowa}} {{Patrz|lista_dwuelementowa}} - tablica elementu tablicy zbierającej dane, element posiada tylko pierwszy element, który jest uchwytem,
* {{Code|obiekt}} {{Patrz|obiekt}} i {{Code|kod}} {{Patrz|kod}} - obiekt i kod, szablonu typu {{s|Śródtekst}} {{Patrz|Śródtekst}} w tekście zakodowanym,
* {{Code|tabela_parametrow_szablonu}} - jak w: {{LinkPatrz|tabela_parametrow_szablonu}},
* {{Code|nazwa_szablonu_wywolania}} {{Patrz|nazwa_szablonu_wywolania}} - nazwa szablonu tekstu, typu, dla {{LinkPatrz|Śródtekst}},
* {{Code|modyfikatory_wywolania}} {{Patrz|modyfikatory_wywolania}} - tablica modyfikatorów uruchmienia szablonu {{LinkPatrz|Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} {{Patrz|tablica_analizy_obiektow_strony_dany_modul}} - tablica bazy kodów modułu {{m|Szablonowe}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} {{Patrz|tablica_danych_parametrow_szablonu_strony}} - tablica rozkładu na czynniki pierwsze, elementów bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|czy_artykul_korzystany}} {{Patrz|czy_artykul_korzystany}} - {{Code|true}}, gdy artykuł jest taki sam,jak strona w przeglądarce.
Tablica jako drugi element dodawanej tablicy w kodzie: {{LinkZobaczTeż|tabele szablonu tekstu}}, to są tam podtablice, które są tablicami składających się z obiektu i kodu elementu {{s|PobierzŚródtekst}} {{Patrz|PobierzŚródtekst}}, tych podtablic może być wiele dla różnych tych.
== {{Śródtytuł|p.UstawianiePobierz}}{{Code|p.UstawianiePobierz}} ==
Funkcja dodaje do danego elementu typu: {{LinkPatrz|rodzaj: Śródtekst}}, utworzonego na podstawie obiektów nie typu {{LinkPatrz|Pobierz}}, w postaci tablicy utworzonego z trzech elementów, tzn.: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}, a trzeci element tablicy jest numerkiem nazwanym, ile w danym elemencie było wtedy aktualnie elenetów przed wywołaniem szablonu typu {{LinkPatrz|Pobierz}}, dla zmiennych w tablicach: {{LinkPatrz|tablica_zmiennych}}. Ten element służy do wstawiania innych elementów do tablic nazwanych uchwytów oraz ich numerków (dla elementów numerowanych) lub nie, aby przesunąc od pewnego momentu ich zawartości do przodu.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,czy_artykul_korzystany)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych}} - jak w: {{LinkPatrz|tablica_zmiennych}},
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}},
* {{Code|obiekt}} {{Patrz|Pobierz: obiekt}} - obiekt, jak: {{LinkPatrz|rodzaj: Śródtekst}}, obiektu typu {{Code|Pobierz}} {{Patrz|Pobierz}},
* {{Code|kod}} {{Patrz|Pobierz: kod}} - numer danego obiektu typu {{LinkPatrz|Pobierz}},
* {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|uchwyt_obiektu}} {{Patrz|uchwyt_obiektu}} - unikalny uchwyt danego obiektu {{LinkPatrz|Śródtekst}},
* {{Code|czy_artykul_korzystany}} - jak w: {{LinkPatrz|czy_artykul_korzystany}}.
Gdy: {{LinkPatrz|czy_artykul_korzystany}}, przyjmuje wartość {{Code|true}}, wtedy jest używana tablica: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}, ale dla elementów typu: {{LinkPatrz|tablica_zmiennych2}}, na podstawie tego w ten sposób jest tworzona pewna tablica, te elementy są dodawane do drugiej podtablicy w tablicy dodawanej w {{LinkZobaczTeż|tabele szablonu tekstu}}.
== {{Śródtytuł|p.UstawPobierzKorzystanie}}{{Code|p.UstawPobierzKorzystanie}} ==
Funkcja na podstawie stworzonych elementów w tablicy {{Code|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}} {{Patrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, która skłąda się z tablic numerowanych, gdzie w każdej takiej jego tablicy są dwie podtablice, te elementy są zbierane dla: {{LinkPatrz|rodzaj: Śródtekst}}, pierwsza taka podtablica jest tablicą numerowaną z: {{LinkPatrz|nazwa_obiektu}} i {{linkPatrz|uchwyt_obiektu}}, a druga taka podtablica jest z: {{LinkPatrz|Pobierz: obiekt}} i {{LinkPatrz|Pobierz: kod}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="lua">
function p.UstawPobierzKorzystanie(tablica_zmiennych2)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|tablica_zmiennych2}} - jak w: {{LinkPatrz|tablica_zmiennych2}}.
Na podstawie każdego takich elementów numerowanych w tablicy: {{LinkPatrz|tablica_zmiennych2.tablica_szablonu_tekstu_linkowe_korzystane}}, jest uruchamiana funkcja: {{LinkŚródtytuł|p.UstawianiePobierz}}, dla pierwszego parametru z wartością {{Code|nil}}, drugim: {{LinkPatrz|tablica_zmiennych2}}, i dalszymi.
== {{Śródtytuł|p.ZamienianiePobierzNaKod}}{{Code|p.ZamienianiePobierzNaKod}} ==
Funkcja na podstawie parametru {{ZobaczTeż|tekst}}: {{LinkPatrz|tekst}}, {{LinkPatrz|treść}} lub {{LinkPatrz|1}}, występujących w tabeli: {{LinkPatrz|tabela_parametrow_szablonu}}, zdefiniowanych jako tablica: {{Code|pozycja[3][1][1]}}. Modyfikuje też element {{ZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}}: {{Code|(pozycja[4] or {})[1]}} lub {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, aby wyświetlić zamieniony, czyli zmodyfikowany, element, ewentualnie ze zmodyfikowaną bazą danych kodów. Funkcja do szybszego działania wykorzystuje tabelę: {{Code|(pozycja[4] or {})[2]}} lub {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
Definicja skrótowa funkcji:
<syntaxhighlight lang="Lua">
function p.ZamienianiePobierzNaKod(obiekt,kod,pozycja,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_korzystane)...end;
</syntaxhighlight>
Parametry funkcji:
* {{Code|obiekt}} - jak w: {{LinkPatrz|Pobierz: obiekt}},
* {{Code|kod}} - jak w: {{LinkPatrz|Pobierz: kod}},
* {{Code|pozycja}} - dany element numerowany, który przedstawia pozycję dla elementów typu: {{LinkPatrz|Śródtekst}},
* {{Code|nazwa_modulu_aktualna_czy_biezaca}} {{Patrz|nazwa_modulu_aktualna_czy_biezaca}} - nazwa modułu aktualna lub bieżąca, w której występują elementy typu {{LinkPatrz|rodzaj: Śródtekst}},
* {{Code|tablica_analizy_obiektow_strony_dany_modul}} - jak w: {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}},
* {{Code|tablica_danych_parametrow_szablonu_strony}} - jak w: {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}},
* {{Code|czy_korzystane}} {{Patrz|czy_korzystane}} - czy wykorzystawane elementy są typu: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_korzystanych}}, gdy ta wartość przyjmuje wartość {{Code|true}}, przeciwnie: {{LinkPatrz|tablica_zmiennych.tablica_szablonu_tekstu_niekorzystanych}}.
Funkcja wykorzystuje do modyfikacji funkcję: {{Code|{{sr|#p.ModyfikowanieKodowoSzablonoweZakodowanegoTekstu|p=Szablonowe}}}}, ona seryjnie modyfikuje całe elementy tekstu {{LinkZobaczTeż|tekst}} lub elementy bazy {{LinkZobaczTeż|tablica_analizy_obiektow_strony_dany_modul}} o pewnych dwuwymiarowych nazwach, co do kodów bazy. Element tekstu do modyfikacji jest uzyskiwany z funkcji: {{LinkŚródtytuł|p.ParametrTekstowySzablonuTekstu}}, jeżeli ten tekst istnieje, a gdy nie, to funkcja nie zwraca żadnej wartości, a jak jest, to ten tekst, ze zmodyfikowaną tabelą bazy {{LinkPatrz|tablica_analizy_obiektow_strony_dany_modul}}, też ze zmodyfikowaną tabelą parametrów {{LinkPatrz|tablica_danych_parametrow_szablonu_strony}}.
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuPobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuPobierz}} ==
== {{Śródtytuł|p.EdytowanieSzablonoweTekstuTypuNiePobierz}}{{Code|p.EdytowanieSzablonoweTekstuTypuNiePobierz}} ==
== {{Śródtytuł|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}}{{Code|p.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu}} ==
{{BrClear}}
<noinclude><!--
-->{{ProstaStronaKoniec}}<!--
-->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!--
--></noinclude>
e8e6fmnnwb1u1wsa2vyrik0rjxqnfgc