Moduł:StronicowyParser/StronaSubst
Wygląd
Zobacz podstrony tego modułu.
|
local p={};
function p.AnalizaStronaSubst(tabela_listy_danych_analizy_ksiazki,pelnanazwastrony,TakFun,NieFun,FunRozdzial)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni;local nazwa_przestrzeni_ksiazki;local nazwa_ksiazki;local nazwa_artykulu;
local args_nowe;
if(not pelnanazwastrony)then
args_nowe={
["nazwa przestrzeni nazw"]=nil,
["nazwa jednostki"]=nil,
};
else
args_nowe={
["nazwa przestrzeni nazw"]="",
["nazwa jednostki"]=pelnanazwastrony,
};
end;
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
stronicowyparser_potrzebne_modul:AnalizujArgumentySzablonu{args=args_nowe};
stronicowyparser_potrzebne_modul:ParametryKonteneraWoluminu({args=args_nowe},tabela_listy_danych_analizy_ksiazki);
local tab_lista_artykulow_w_ksiazce_spis,lista_artykulow_w_ksiazkach_w_danej_przestrzeni,lista_artykulow_w_ksiazkach_w_danej_przestrzeni_ksiazki,tab_lista_artykulow_w_ksiazce,tab_lista_zmiennych_w_artykule=stronicowyparser_potrzebne_modul:TabelaListyStronWoluminu({args=args_nowe},tabela_listy_danych_analizy_ksiazki,false);
if(not tab_lista_artykulow_w_ksiazce_spis)then
--local blad_modul=require("Module:Błąd");
--return blad_modul.error{tag="span",tekst="Nie znalazłem takiej książki."};
return;
end;
local self_zmienna,tabela_listy_danych_analizy_ksiazki=stronicowyparser_potrzebne_modul:Self(tabela_listy_danych_analizy_ksiazki);
local nazwa_przestrzeni=self_zmienna.nazwa_przestrzeni_podana;
local nazwa_przestrzeni_ksiazki=self_zmienna.nazwa_przestrzeni_woluminu_podana;
local nazwa_ksiazki=self_zmienna.nazwa_woluminu_podana;
local nazwa_artykulu=self_zmienna.nazwa_podstrony_woluminu_podana;
local parametry_modul=require("Module:Parametry");
if(tab_lista_artykulow_w_ksiazce_spis)then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
if((nazwa_przestrzeni==nazwy_np_modul.Main)
or(nazwa_przestrzeni==nazwy_np_modul.Wikijunior)
or((nazwa_przestrzeni==nazwy_np_modul.Wikibooks)and(mw.ustring.match(nazwa_przestrzeni_ksiazki,"^Brudnopis/([^/]+)$")))
or((nazwa_przestrzeni==nazwy_np_modul.User)and(mw.ustring.match(nazwa_przestrzeni_ksiazki,"^([^/]+)$"))))then
-----
local tab_artykul={};
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce_spis)do
if(tab_lista[2])then
for _,artykul_w_bazie_element in ipairs(tab_lista[2])do
local czy_table=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(artykul_w_bazie_element[1]);
if(czy_table)then
artykul_w_bazie=artykul_w_bazie_element[1][1];
else
artykul_w_bazie=artykul_w_bazie_element[1];
end;
local artykul_bez_naglowka_w_bazie=stronicowyparser_potrzebne_modul.TylkoNazwaStronyWoluminuZTabeliPublikacji(artykul_w_bazie);
if(not tab_artykul[artykul_bez_naglowka_w_bazie])then
if(not naglowek)then
tab_artykul[artykul_bez_naglowka_w_bazie]=true;
end
end;
end;
end;
end;
if(tab_artykul[nazwa_artykulu])then
return NieFun(nil);
end;
-----
local ksiazka=mw.ustring.match(nazwa_ksiazki,"([^/]+)$");
if((nazwa_artykulu~="Spis treści")and(nazwa_artykulu~="Bibliografia")and(nazwa_artykulu~="Licencja"))then
if((ksiazka==nazwa_artykulu)or(nazwa_artykulu=="Wersja do druku"))then
return TakFun(tab_lista_artykulow_w_ksiazce_spis)
else
local function StronaRozdzial()
for _,tab_lista in pairs(tab_lista_artykulow_w_ksiazce_spis)do
local rozdzial=tab_lista[1][1];
if(rozdzial==nazwa_artykulu)then
return TakFun(frame);
end;
end;
return;
end;
if(not FunRozdzial)then
local val=StronaRozdzial();
if(val)then return val;end;
else
local val=FunRozdzial(tab_lista_artykulow_w_ksiazce_spis,nazwa_artykulu);
if(not val)then return val;end;
end;
end;
end;
end;
end
return NieFun(nil);
end;
p.LiczOperacjeStronZbiorczych=function(glowna_tablica,tekst_rozwiniety_calego_artykulu,nazwa_modulu_strony,tablica_obiektow_strony_dany_modul_strony)
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
stronicowyparser_potrzebne_modul:AnalizujArgumentySzablonu{args={}};
stronicowyparser_potrzebne_modul:ParametryKonteneraWoluminu({args={}},glowna_tablica.tabela_listy_danych_analizy_ksiazki);
local spis,tab_lista_artykulow_w_ksiazce=stronicowyparser_potrzebne_modul:TabelaListyStronWoluminu({args={}},glowna_tablica.tabela_listy_danych_analizy_ksiazki,true);
if(not spis)then
--local blad_modul=require("Module:Błąd");
--return blad_modul.error{tab="span",tekst="Nie znalazłem takiej książki."};
return;
end;
local self_zmienna,tabela_listy_danych_analizy_ksiazki=stronicowyparser_potrzebne_modul:Self(glowna_tablica.tabela_listy_danych_analizy_ksiazki);
local nazwa_przestrzeni=self_zmienna.nazwa_przestrzeni;
local nazwa_przestrzeni_ksiazki=self_zmienna.nazwa_przestrzeni_woluminu;
local nazwa_ksiazki=self_zmienna.nazwa_woluminu;
--local nazwa_artykulu=self_zmienna.nazwa_podstrony_woluminu;
local nazwy_modul=require("Module:Nazwy");
local toc_nowe={};
local tab_powtarzane={};
local function Powtarzane(rozdzial)
local b=1;
for i=1,#tab_powtarzane,1 do
if(tab_powtarzane[i]==rozdzial)then
b=b+1;
end;
end;
tab_powtarzane[#tab_powtarzane+1]=rozdzial;
return b;
end;
local AnalizaStronZbiorczych=function()
local function CzyStronaSubst()
if(not glowna_tablica.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"])then
glowna_tablica.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"]="tak";
end;
end;
local function StronaSubstParametr(tab_strona,naglowek_strony,link,p,postep)
local strona;local id;
if(type(tab_strona)=="table")then strona=tab_strona[2];id=tab_strona[1];else strona=tab_strona;end;
local artykul;
if(id)then
strona,_=mw.ustring.gsub(strona,"<[^<>]*>","");
end;
local str="<div style=\"display:block;\" class=\"rozdział_książki\">\n";
local parametry_modul=require("Module:Parametry");
local czy_link=parametry_modul.CzyTak(link);
local adres=((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="")and(nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki.."/"..(id and id or strona);
p=p or 1;
p=(p<1)and 1 or p;
p=(p<=6)and p or 6;
if(not czy_link)then
local kotwica="";
if(id)then
id,_=mw.ustring.gsub(id,"^[%s_]*","");
id,_=mw.ustring.gsub(id,"[%s_]*$","");
id,_=mw.ustring.gsub(id,"[%s_]+","_");
kotwica="<span id=\""..id.."\"></span>";
end;
str=str..mw.ustring.rep("=",p)..kotwica..naglowek_strony..mw.ustring.rep("=",p).."\n";
else
local linki_modul=require("Module:Linki");
local str_link=linki_modul["Link wewnętrzny"]{
["strona"]=adres,
["nazwa"]=naglowek_strony,
};
local kotwica="";
if(id)then
id,_=mw.ustring.gsub(id,"^[%s_]*","");
id,_=mw.ustring.gsub(id,"[%s_]*$","");
id,_=mw.ustring.gsub(id,"[%s_]+","_");
kotwica="<span id=\""..id.."\"></span>";
end;
str=str..mw.ustring.rep("=",p)..kotwica..str_link..mw.ustring.rep("=",p).."\n";
end;
if(postep)then
str=str.."<div class=\"postęp_ładowania_artykułu\"><div class=\"pasek_postępu\"></div> <span style=\"color:blue\">Ładuję artykuł...</span></div>";
end;
str=str.."<div class=\"strona_subst\" style=\"display:"..((not postep)and "block" or "none")..";\">"..((not czy_link) and (adres) or "").."</div>\n";
str=str.."</div>";
return str;
end;
local function StronaSubst(ciag)
local szablonowe_modul=require("Module:Szablonowe");
local parametry_modul=require("Module:Parametry");
local parametry_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania=szablonowe_modul["ParsowanieWywołaniaSzablonu"](ciag);
local postep=parametry_modul.CzyTak(parametry_szablonu["postęp"]);
local strona=parametry_szablonu[1];
local link=parametry_szablonu["link"];
local parametry_modul=require("Module:Parametry");
local czy_link=parametry_modul.CzyTak(link);
if(glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"]
and glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona]
and glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona][(czy_link and "tak" or "")]
)then
return glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona][(czy_link and "tak" or "")];
end;
local naglowek=mw.ustring.match(strona,"/([^/]*)$") or strona;
--end;
local liczba_powtarzanego=Powtarzane(naglowek);
table.insert(toc_nowe,{{mw.ustring.gsub(naglowek,"[%s_]+","_")..((liczba_powtarzanego>1) and ("_"..liczba_powtarzanego) or ""), naglowek,},1,})
local str=StronaSubstParametr(strona,naglowek,link,nil,postep);
if(not glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"])then
glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"]={};
end;
if(not glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona])then
glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona]={};
end;
glowna_tablica.tabela_listy_danych_analizy_ksiazki["StronaSubst"][strona][(czy_link and "tak" or "")]=str;
return str;
end;
function AnalizowanieStronyWoluminuWprowadzeniaTekstu(tab_lista_artykulow_w_ksiazce,substrona)
local parametry_modul=require("Module:Parametry");
local html_modul=require("Module:Html");
local tablica_stron={};
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
local rozdzial=tab_lista[1][1];
if(substrona==rozdzial)then
local function KsiazkaRozdzialSubst(ciag)
local szablonowe_modul=require("Module:Szablonowe");
local parametry_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania=szablonowe_modul["ParsowanieWywołaniaSzablonu"](ciag);
if(nazwa_szablonu_wywolania~="KsiążkaSubst")then return ciag;end;
local naglowki=parametry_modul.CzyTak(parametry_szablonu["nagłówki"]);
local postep=parametry_modul.CzyTak(parametry_szablonu["postęp"]);
if(tab_lista[2])then
local wikikod="";
for _,strona in ipairs(tab_lista[2])do
local nazwa_strony=strona[1];
local czy_table_strona=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(nazwa_strony);
nazwa_strony=czy_table_strona and nazwa_strony[1] or nazwa_strony;
nazwa_strony=stronicowyparser_potrzebne_modul.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem(nazwa_strony,false);
if(naglowki or not tablica_stron[nazwa_strony])then
if(not naglowki)then
tablica_stron[nazwa_strony]=true;
end;
local naglowek;
--if(mw.ustring.match(nazwa_strony,"^[^#]*#(.*)$"))then
-- naglowek=mw.ustring.gsub(nazwa_strony,"^[^#]*#(.*)$","%1");
--else
naglowek=mw.ustring.match(nazwa_strony,"/([^/]*)$") or nazwa_strony;
--end;
local liczba_powtarzanego=Powtarzane(naglowek);
table.insert(toc_nowe,{{mw.ustring.gsub(naglowek,"[%s_]+","_")..((liczba_powtarzanego>1) and ("_"..liczba_powtarzanego) or ""), naglowek,},1,})
wikikod=((wikikod~="")and (wikikod.."\n") or "")..StronaSubstParametr(strona[1],naglowek,nil,nil,postep);
end;
end;
glowna_tablica.tabela_listy_danych_analizy_ksiazki["KsiążkaSubst"]=wikikod;
return wikikod;
end;
return "";
end;
--local nazwa_przestrzeni=glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
--local nazwa_przestrzeni_ksiazki=glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
--local nazwa_ksiazki=glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
--local nazwa_artykulu=glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu;
--local nazwa_modulu=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
local szablonowe_modul=require("Module:Szablonowe");
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_strony,tablica_obiektow_strony_dany_modul_strony);
for szablon,obiekt,kod in iterator do
if(obiekt=="SZABLON")then
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Ss]tronaSubst%s*|[^{}]+}})",StronaSubst);
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Kk]siążkaSubst%s*|[^{}]*}})",KsiazkaRozdzialSubst);
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Kk]siążkaSubst%s*}})",KsiazkaRozdzialSubst);
end;
end;
CzyStronaSubst();
break;
end;
end;
end;
function AnalizowanieWoluminu(tab_lista_artykulow_w_ksiazce)
local function WoluminKompletnySubst(ciag)
local szablonowe_modul=require("Module:Szablonowe");
local parametry_modul=require("Module:Parametry");
local parametry_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania=szablonowe_modul["ParsowanieWywołaniaSzablonu"](ciag);
if(nazwa_szablonu_wywolania~="KsiążkaSubst")then return ciag;end;
local naglowki=parametry_modul.CzyTak(parametry_szablonu["nagłówki"]);
local sekcje=parametry_modul.CzyTak(parametry_szablonu["sekcje"]);
local postep=parametry_modul.CzyTak(parametry_szablonu["postęp"]);
local wikikod="<div class=\"klasa_książki\">";
local delta_m=0;
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne");
local HNumer=stronicowyparser_potrzebne_modul.LiczonyHNumer();
local parametry_modul=require("Module:Parametry");
local tablica_stron={};
local naglowki_ostatnie=nil;
local stronicowyparser_zbieraniedanychstron_modul=require("Module:StronicowyParser/ZbieranieDanychStron");
local stronicowyparser_tekst_modul=require("Module:StronicowyParser/Tekst");
for _,tab_lista in pairs(tab_lista_artykulow_w_ksiazce)do
local rozdzial=tab_lista[1][1];
wikikod=wikikod.."<div class=\"klasa_naglowka klasa_nagłówka\">";
local m=tab_lista[1][2][1] or 0;
if((m~=0)and(rozdzial)and(type(rozdzial)=="string")and(rozdzial~="")and(rozdzial~="Spis treści")and(rozdzial~="Bibliografia")and(rozdzial~="Zobacz też")and(rozdzial~="Inne")and(rozdzial~="Licencja")
)then
local m_uzyskane=HNumer(m);
wikikod=((wikikod~="")and (wikikod.."\n") or "").."\n"..mw.ustring.rep("=",m_uzyskane)..rozdzial..mw.ustring.rep("=",m_uzyskane).."\n";
local liczba_powtarzanego=Powtarzane(rozdzial);
table.insert(toc_nowe,{{mw.ustring.gsub(rozdzial,"[%s_]+","_")..((liczba_powtarzanego>1) and ("_"..liczba_powtarzanego) or ""), rozdzial,},m_uzyskane,})
end;
if(tab_lista[2])then
local specjalne_modul=require("Module:Specjalne");
for _,strona in ipairs(tab_lista[2])do
local roznica=(strona[2][1]>0)and strona[2][1] or 0;
local m_roznica=m+roznica;
local m_uzyskane=HNumer(m_roznica);
--local PobierzParametr=parametry_modul.PobierzParametr(strona[1]);
--local nazwa_strony_parametr=PobierzParametr(1);
--local nazwa_strony,_=mw.ustring.gsub(nazwa_strony_parametr,"^([^#]*)(#.*)$","%1");
local nazwa_strony=strona[1];
local czy_table_strona=stronicowyparser_potrzebne_modul.CzyTabelaStronyWoluminuSpisuRzeczy(nazwa_strony);
local nazwa_strony_parametr=czy_table_strona and nazwa_strony[1] or nazwa_strony;
nazwa_strony=stronicowyparser_potrzebne_modul.UzyskanieTylkoNazwyLubTabeliNazwyLinkuStronyWoluminuZTabeliZParametramiOrazIdentyfikatorem(nazwa_strony_parametr,false);
nazwa_strony_parametr=stronicowyparser_potrzebne_modul.UzykanieNazwyStronyWoluminuZParametramiOrazIdentyfikatoremZTabeliWoluminu(nazwa_strony_parametr,true);
local naglowek;
if(mw.ustring.match(nazwa_strony_parametr,"^[^#]*#(.*)$"))then
naglowek=mw.ustring.gsub(nazwa_strony_parametr,"^[^#]*#(.*)$","%1");
else
naglowek=mw.ustring.match(nazwa_strony_parametr,"/([^/]*)$") or nazwa_strony_parametr;
end;
local liczba_powtarzanego=Powtarzane(naglowek);
if((naglowki or (not tablica_stron[nazwa_strony]))and(not sekcje))then
if(not naglowki)then
tablica_stron[nazwa_strony]=true;
end;
table.insert(toc_nowe,{{mw.ustring.gsub(naglowek,"[%s_]+","_")..((liczba_powtarzanego>1) and ("_"..liczba_powtarzanego) or ""), naglowek,},m_uzyskane,})
wikikod=((wikikod~="")and (wikikod.."\n") or "")..StronaSubstParametr(strona[1],naglowek,nil,m_uzyskane,postep);
elseif((sekcje)and(not tablica_stron[nazwa_strony]))then
table.insert(toc_nowe,{{mw.ustring.gsub(naglowek,"[%s_]+","_")..((liczba_powtarzanego>1) and ("_"..liczba_powtarzanego) or ""), naglowek,},m_uzyskane,})
tablica_stron[nazwa_strony]=true;
wikikod=((wikikod~="")and (wikikod.."\n") or "")..StronaSubstParametr(strona[1],naglowek,nil,m_uzyskane,postep);
local nazwa_modulu=((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="")and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki.."/"..nazwa_strony;
local tekst_rozwiniety_calego_artykulu=stronicowyparser_tekst_modul.SpreparowanyWikikodStrony(nil,nazwa_modulu,true);
if(tekst_rozwiniety_calego_artykulu)then
local szablonowe_modul=require("Module:Szablonowe");
local tablica_obiektow_strony_dany_modul_uzyskany;
tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_dany_modul_uzyskany=szablonowe_modul:KodujWzoryMatematyczneTekstu(tekst_rozwiniety_calego_artykulu);
local tablica_obiektow_strony_danych_kodow_specjalnych_modul;
tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_danych_kodow_specjalnych_modul=szablonowe_modul:KodowanieInaczejZakodowanychNormKodowychTekstuWedleJegoTablicyKodowania(tekst_rozwiniety_calego_artykulu,nazwa_modulu,tablica_obiektow_strony_dany_modul_uzyskany);
-----
local toc=stronicowyparser_zbieraniedanychstron_modul.SpisRzeczyWedlePodanegoTekstu(nil,tekst_rozwiniety_calego_artykulu,nazwa_modulu,false,true,nil,nil,nil,nil,nil,nil,tablica_obiektow_strony_dany_modul_uzyskany,nil,tablica_obiektow_strony_danych_kodow_specjalnych_modul,nil,true);
if(toc)then
local nazwa_strony_naglowka=toc.nazwa_strony;
for licznik, element_w_tablicy in ipairs(toc)do
local naglowek_rozdzialu=element_w_tablicy[1][2];
local numer_link_naglowek=Powtarzane(naglowek_rozdzialu);
local link=nazwa_strony.."#"..element_w_tablicy[1][1];
local poziom_rozdzialu=element_w_tablicy[2];
local poziom_rozdzialu_sekcji=HNumer(poziom_rozdzialu+m_roznica);
local id_naglowka,naglowek_rozdzialu=specjalne_modul["PrzetwórzNagłówek"](naglowek_rozdzialu,true,true);
table.insert(toc_nowe,{{id_naglowka..((numer_link_naglowek>1) and ("_"..numer_link_naglowek) or ""), naglowek_rozdzialu,}, poziom_rozdzialu_sekcji, })
wikikod=((wikikod~="")and (wikikod.."\n") or "")..StronaSubstParametr(link,naglowek_rozdzialu,nil,poziom_rozdzialu_sekcji,postep);
end;
end;
end;
end;
end;
end;
wikikod=wikikod.."</div>";
end;
wikikod=wikikod.."</div>";
glowna_tablica.tabela_listy_danych_analizy_ksiazki["KsiążkaSubst"]=wikikod;
return wikikod;
end;
--local nazwa_przestrzeni=glowna_tablica.tabela_listy_danych_analizy_ksiazki.alternatywna and glowna_tablica.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni or glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
--local nazwa_przestrzeni_ksiazki=glowna_tablica.tabela_listy_danych_analizy_ksiazki.alternatywna and glowna_tablica.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki or glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu;
--local nazwa_ksiazki=glowna_tablica.tabela_listy_danych_analizy_ksiazki.alternatywna and glowna_tablica.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki or glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu;
--local nazwa_artykulu=glowna_tablica.tabela_listy_danych_analizy_ksiazki.alternatywna and glowna_tablica.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu or glowna_tablica.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu;
--local nazwa_modulu=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
local szablonowe_modul=require("Module:Szablonowe");
local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_strony,tablica_obiektow_strony_dany_modul_strony);
for szablon,obiekt,kod in iterator do
if(obiekt=="SZABLON")then
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Ss]tronaSubst%s*|[^{}]+}})",StronaSubst);
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Kk]siążkaSubst%s*|[^{}]*}})",WoluminKompletnySubst);
szablon,_=mw.ustring.gsub(szablon,"({{%s*[Kk]siążkaSubst%s*}})",WoluminKompletnySubst);
end;
end;
CzyStronaSubst();
end;
local NieFun=function(parametr) return "";end;
local TakFun=function(tab_lista_artykulow_w_ksiazce)
AnalizowanieWoluminu(tab_lista_artykulow_w_ksiazce);
return "tak";
end;
local FunRozdzial=function(tab_lista_artykulow_w_ksiazce,substrona)
AnalizowanieStronyWoluminuWprowadzeniaTekstu(tab_lista_artykulow_w_ksiazce,substrona);
return "tak";
end;
p.AnalizaStronaSubst(glowna_tablica.tabela_listy_danych_analizy_ksiazki,nil,TakFun,NieFun,FunRozdzial);
return "tak";
end;
local val=AnalizaStronZbiorczych();
glowna_tablica.tabela_listy_danych_analizy_ksiazki.TOC_StronaZbiorcza=toc_nowe;
return tekst_rozwiniety_calego_artykulu;
end;
return p;