Moduł:StronicowyParser/Potrzebne

Z Wikibooks, biblioteki wolnych podręczników.
Przejdź do nawigacji Przejdź do wyszukiwania
Template-info.png Dokumentacja modułu [stwórz] [odśwież]
local p={};
function p.LiczonyHNumer()
	local ulozenie=nil;
	local ostatnie=0;
	local h_numer_zapamietane=nil;
	return function(h_numer,h_numer_nowe,jakie)
		if(not h_numer_nowe)then
			if(not jakie)then
				if(h_numer==0)then
					return h_numer_zapamietane;
				elseif(h_numer<0)then
					h_numer=math.abs(h_numer);
				end;
			else
				if(h_numer==0)then 
					h_numer_zapamietane=0;
					return 0;
				end;
			end;
			if((ulozenie==nil)or(ulozenie>=h_numer))then
				ulozenie=h_numer-1;
        	elseif(ostatnie+1<h_numer-ulozenie)then
                ulozenie=h_numer-ostatnie-1;
	    	end;
    		ostatnie=h_numer-ulozenie;
    		h_numer=h_numer-ulozenie;
    		h_numer_zapamietane=h_numer;
    		return h_numer;
    	else
    		ulozenie=h_numer-h_numer_nowe;
    		ostatnie=h_numer-ulozenie;
    		return h_numer_nowe;
    	end;
	end;
end;
function p.PoziomAdresu(adres)
	local lens=#adres;
	local i=1;
	for p=1, lens,1 do
		local znak=mw.ustring.sub(adres,p,p);
		if(znak=="/")then
			i=i+1;
		end;
	end;
	return i;
end;
function p.NazwaNadStrony(adres,numer)
	if((numer)and(numer==1))then return nil;end;
	if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
	local lens=#adres;
	local i=1;
	for p=1, lens,1 do
		local znak=mw.ustring.sub(adres,p,p);
		if(znak=="/")then
			i=i+1;
		end;
		if(i==numer)then
			return mw.ustring.sub(adres,1,p-1);
		end;
	end;
	return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
	if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
	krok=krok or 1;
	if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
	local lens=#adres;
	local i=1;
	local a=nil;local b=nil;
	for p=1, lens,1 do
		local znak=mw.ustring.sub(adres,p,p);
		if(znak=="/")then
			i=i+1;
			if(i==numer)then
				if(not a)then a=p+1;end;
			end;
			if(i==numer+krok)then 
				if(not b)then b=p-1;break;end;
			end;
		end;
	end;
	if(not a)then a=1;end;
	if(not b)then b=lens;end;
	return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
  local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
  local nazwa_jednostki=self.args["nazwa jednostki"];
  if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
  		local html_modul=require("Module:Html");
	    if(nazwa_jednostki)then
			self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
			self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
	    end;
	    local nazwy_modul=require("Module:Nazwy");
		local nazwa_przestrzeni=((nazwa_przestrzeni)and ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "") or nazwy_modul["NAZWAPRZESTRZENI"]());
		local nazwa_jednostki=(((nazwa_jednostki)and(nazwa_jednostki~=""))and nazwa_jednostki or nazwy_modul["NAZWASTRONY"]());
		local pelna_nazwa_jednostki=((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_jednostki;
		
		pelna_nazwa_jednostki=html_modul.DecodeHtml(pelna_nazwa_jednostki,true);
		pelna_nazwa_jednostki=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](pelna_nazwa_jednostki);
   		---
   		local techniczne_modul=require("Module:Techniczne");
   		local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
   		local nazwa_modulu=nazwy_modul["NazwaModułu"](tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni,tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki,tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki,tabela_listy_danych_analizy_ksiazki.nazwa_artykulu);
    	pelna_nazwa_jednostki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=pelna_nazwa_jednostki,[2]=nazwa_modulu,};
    	pelna_nazwa_jednostki=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_jednostki);
        local strona=techniczne_modul.PrzekierowanieDoStrony(pelna_nazwa_jednostki);
        if(strona)then
        	pelna_nazwa_jednostki=strona;
        end;
        
		local nazwy_modul=require("Module:Nazwy");
		self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](pelna_nazwa_jednostki);
		self.nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](pelna_nazwa_jednostki);
		self.nazwa_ksiazki=(self.nazwa_przestrzeni_ksiazki~="")and nazwy_modul["SUBNAZWAKSIĄŻKI"](pelna_nazwa_jednostki) or nazwy_modul["NAZWAKSIĄŻKI"](pelna_nazwa_jednostki);
		self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](pelna_nazwa_jednostki);
  else
  	  local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;	
	  self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  	  self.nazwa_przestrzeni_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki;
	  self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
	  self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
  end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki,czy_podana)
  local self_tab,tabela_listy_danych_analizy_ksiazki=p.Self(self,tabela_listy_danych_analizy_ksiazki);
  local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[(not czy_podana) and self_tab.nazwa_przestrzeni_podana or self_tab.nazwa_przestrzeni];
  if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then 
  	return nil,nil,nil,nil,nil;
  end;
  local tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[(not czy_podana) and self_tab.nazwa_przestrzeni_ksiazki_podana or self_tab.nazwa_przestrzeni_ksiazki];
  if(not tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki)then 
  	  return nil,lista_artykulow_w_ksiazkach_w_danej_przestrzeni,nil,nil,nil;--[[--Do poprawienia--]]
  end;
  local tab_lista_artykulow_w_ksiazce=tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki[(not czy_podana) and self_tab.nazwa_ksiazki_podana or self_tab.nazwa_ksiazki];
  if(not tab_lista_artykulow_w_ksiazce)then 
  	  return nil,lista_artykulow_w_ksiazkach_w_danej_przestrzeni,tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki,nil,nil;
  end;
  local tab_lista_zmiennych_w_artykule=tab_lista_artykulow_w_ksiazce.lista_artykolow and tab_lista_artykulow_w_ksiazce.lista_artykolow[(not czy_podana) and self_tab.nazwa_artykulu_podana or self_tab.nazwa_artykulu] or nil;
  --if(not tab_lista_zmiennych_w_artykule)then return nil;end;
  return tab_lista_artykulow_w_ksiazce.spis,lista_artykulow_w_ksiazkach_w_danej_przestrzeni,tab_lista_ksiazek_w_danej_przestrzeni_nazw_ksiazki,tab_lista_artykulow_w_ksiazce,tab_lista_zmiennych_w_artykule;
end;
function p.AnalizujArgumentySzablonu(self,frame)
  local parametry_modul=require("Module:Parametry");
  self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
	return self.args;
end;
function p.Self(self,tabela_listy_danych_analizy_ksiazki)
  local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;	
  local self_tab={};

  self_tab.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  self_tab.nazwa_przestrzeni_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki;
  self_tab.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  self_tab.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
		
  self_tab.nazwa_przestrzeni_podana=self.nazwa_przestrzeni;
  self_tab.nazwa_przestrzeni_ksiazki_podana=self.nazwa_przestrzeni_ksiazki;
  self_tab.nazwa_ksiazki_podana=self.nazwa_ksiazki;
  self_tab.nazwa_artykulu_podana=self.nazwa_artykulu;
  return self_tab,tabela_listy_danych_analizy_ksiazki;
end;
function p.PelnaNazwaKsiazki(self,frame)
   return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..((self.nazwa_przestrzeni_ksiazki~="")and (self.nazwa_przestrzeni_ksiazki.."/") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
   return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
  p:AnalizujArgumentySzablonu(frame);
  p:ParametryPudelkaKsiazki(frame);
  local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
  if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
  local parametry_modul=require("Module:Parametry");
  local args=parametry_modul.CzyTak(self.args["nagłówek"]);
  local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
  self.tab_artykul={};
  local html_modul=require("Module:Html");
  for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
	if(tab_lista[2])then
  		for _,artykul_w_bazie in ipairs(tab_lista[2])do
  			local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
  			if(naglowek or not tab_artykul_bez_naglowka[artykul])then
  				if(not naglowek)then
  					tab_artykul_bez_naglowka[artykul]=true;
  				end;
  				table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
  			end;
  		end;
  	end;
  end;
  self.len_tab_artykul=#self.tab_artykul;
  return true;
end;
function p.PomiedzyArtykul(self,frame)
  self.numer=tonumber(frame.args[1]) or 1;
  self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
  return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
	self.numer=tonumber(frame.args[1]) or 1;
	self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
	return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
        if(lista_elementow_spisu_tresci==nil)then return nil;end;
        local twor_listy="";
        local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
        local poziom=1;
        local num={};
        for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
        	if(licznik==1)then
        		   num[#num+1]=1;
                   twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
                else
                  if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
                  	   num[#num]=num[#num]+1;
                       twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
                  elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
                  	  num[#num+1]=1;
                  	  poziom=poziom+1;
                      twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
                      liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
                  elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
                  	   local num_length=#num;
                  	   for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do 
                  	   	   table.remove(num);
                  	   end;
                  	   num[#num]=num[#num]+1;
                  	   
                  	   local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
                  	   poziom=poziom-roznica_poziomow;
                  	   
                       twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
                                             .."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
                       liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
                  end;
               end;	
        end;
        twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
        return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
	    local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
	    
	    local parametry_modul=require("Module:Parametry");
	    local frame=frame or mw.getCurrentFrame();
	    
    	PobierzParametr=parametry_modul.PobierzParametr(frame,true);
	    local toc_czy_tocramka=PobierzParametr("toc");toc_czy_tocramka=parametry_modul.CzyTak(toc_czy_tocramka);
	    
	    if(not toc_czy_tocramka)then
	    	local czy_ukryte=twor_listy;
        	local funkcja=PobierzParametr("funkcja") or "UkrytaWikitabelowaListaMenu";
        	local wysokosc=PobierzParametr("wysokość");wysokosc=parametry_modul.CzyTak(wysokosc) and wysokosc  or "700px";
        	local szerokosc=PobierzParametr("szerokość");szerokosc=parametry_modul.CzyTak(szerokosc)and szerokosc  or "100%";
        	local spis_tresci=PobierzParametr("spis treści");spis_tresci=parametry_modul.CzyTak(spis_tresci)and spis_tresci  or "Spis treści";
        	
			local spis_artykulu=PobierzParametr("spis artykułu");spis_artykulu=parametry_modul.CzyTak(spis_artykulu);
        	
        	local czy_bez_arginesu_dolnego=PobierzParametr("bez marginesu dolnego");czy_bez_arginesu_dolnego=parametry_modul.CzyTak(czy_bez_arginesu_dolnego);
        	local z_marginesami_ramki=PobierzParametr("z marginesami ramki");local czy_z_marginesami_ramki=parametry_modul.CzyTak(z_marginesami_ramki);
        	local zawartosc_z_marginesami=PobierzParametr("zawartość z marginesami");local czy_zawartosc_z_marginesami=parametry_modul.CzyTak(zawartosc_z_marginesami);
        	local maxwidth=PobierzParametr("max-width");
        	local czy_maxwidth=((maxwidth)and(maxwidth~="none"))and tonumber(mw.ustring.match(maxwidth,"^(%d+)%a+$")) or nil;
        	
        	twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(czy_zawartosc_z_marginesami and ("padding:"..zawartosc_z_marginesami)..";" or "")..(czy_maxwidth and ('max-width:calc( '..maxwidth..' - 8px );') or '')..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:3px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
        	local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..z_marginesami_ramki)..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
        	local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
	    	return rozwiniety_wikikod;
	    else
	    	return (twor_listy and ('\n<div style="color: #000;font-family: \'Linux Libertine\',\'Georgia\',\'Times\',serif;font-weight: normal;font-size:1.8em;border-bottom:1px solid #a2a9b1;line-height: 1.3;margin-top:1em;margin-bottom:0.25em">Spis treści</div>\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
	    end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,nazwa_modulu,tablica_parametrow_szablonu_strony,__Funkcja, __Funkcja2)
	if(obiekt~="TEMPLATE")then return;end;
	uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
	--local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modulu];
	local function GlownaFunkcja(wywolanie,obiekt,kod)
		local szablonowe_modul=require("Module:Szablonowe");
    	local tabela_parametrow_szablonu,nazwa_szablonu_wywolania,tabela_modyfikatorow=szablonowe_modul["ParsujWywołanieSzablonu"](wywolanie,nil,nil,tablica_parametrow_szablonu_strony,kod);
    	if(not tabela_parametrow_szablonu)then return nil;end;
    	if(tabela_modyfikatorow)then
    		if(not szablonowe_modul.CzyModyfikatorySzablonowe(tabela_modyfikatorow,nazwa_szablonu_wywolania))then return;end;
		end;
    
       __Funkcja(tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,wywolanie);
    
    	if(__Funkcja2)then
    		__Funkcja2(wywolanie,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
    	end;
	end;
    GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci,__FUNKCJA)
	local pozycja_artykulu=nil;local nazwa=nil;
	local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$") 
	if(not((pozycja_artykulu)and(nazwa)))then
		pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
	end;
	local function Artykul(strona)
        local nazwy_modul=require("Module:Nazwy");
        local html_modul=require("Module:Html");
        local parametry_modul=require("Module:Parametry");
        strona=html_modul.DecodeHtml(strona,true);
        strona=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](strona);
        local parametry=html_modul["ParametryStronyAdresu"](strona);
        local naglowek=html_modul["NagłówekStronyAdresu"](strona);
        ----
        strona=html_modul["NazwaStronyAdresu"](strona);
        strona=parametry_modul["Odstępy"]{[1]=strona,[2]="tak",};
   		local techniczne_modul=require("Module:Techniczne");
   		local nazwy_modul=require("Module:Nazwy")
   		local nazwa_modulu_biezaca=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_spisu_tresci);
    	strona=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=strona,[2]=nazwa_modulu_biezaca,};

        ----
        local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
        local nazwa_przestrzeni_ksiazki_strony=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona);
        local nazwa_ksiazki_strony=nazwy_modul["SUBNAZWAKSIĄŻKI"](strona);
        local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
        if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki_strony==nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
        	  return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
        end
        return;
	end;
	---
	local pudelko_modul=require("Module:Pudełko");
	local kod_jezyka_tego_projektu=pudelko_modul["Kod języka tego projektu"]();
	local kod_projektu_tego_projektu=pudelko_modul["Kod projektu tego projektu"]();
	local function DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,czy_nie_dwukropek,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania)
		if(not mw.ustring.match(pozycja_artykulu,"[{}%[%]|]"))then
			local parametry_modul=require("Module:Parametry");
			if((czy_nie_dwukropek)and(((not kod_jezyka)and(not kod_projektu)and(not klucz_projektu))or (parametry_modul.CzyTak(klucz_projektu)and((klucz_projektu==kod_jezyka_tego_projektu)or(klucz_projektu==kod_projektu_tego_projektu)or(klucz_projektu==kod_jezyka_tego_projektu..":"..kod_projektu_tego_projektu)or(klucz_projektu==kod_projektu_tego_projektu..":"..kod_jezyka_tego_projektu))) or(((kod_jezyka)and(kod_jezyka==kod_jezyka_tego_projektu)and(kod_projektu)and(kod_projektu==kod_projektu_tego_projektu))) or ((kod_jezyka)and(not kod_projektu)and(kod_jezyka==kod_jezyka_tego_projektu))or((kod_projektu)and(not kod_jezyka)and(kod_projektu==kod_projektu_tego_projektu))))then
				local czy_pozycja_artykulu=pozycja_artykulu;
    	    	pozycja_artykulu=Artykul(pozycja_artykulu);
        		if(pozycja_artykulu)then
        			return {pozycja_artykulu,nazwa},nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
        		else
        			local nazwy_modul=require("Module:Nazwy");
        			local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"]{nazwa=czy_pozycja_artykulu,}
        			local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
        			if((nazwa_przestrzeni_strony==nazwy_np_modul.Main)
        				or(nazwa_przestrzeni_strony==nazwy_np_modul.Wikijunior)
        					or(nazwa_przestrzeni_strony==nazwy_np_modul.Wikibooks)
        						or(nazwa_przestrzeni_strony==nazwy_np_modul.User)
        			)then
        				return nil,{czy_pozycja_artykulu,nazwa,nil,nil,},false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
        			else
        				return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
        			end;
        		end;
        	else
        		local pudelko_modul=require("Module:Pudełko");
        		local kod_jezyka=kod_jezyka or pudelko_modul["Kod języka tego projektu"]();
        		local kod_projektu=kod_projektu or pudelko_modul["Kod projektu tego projektu"]();
        		local wiki_modul=require("Module:Wiki");
        		local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu);
        		
				local nazwa_strony_linku;
				if(czy_nie_dwukropek)then
					nazwa_strony_linku=pozycja_artykulu;
				else
					local kod_jezyka_poczatkowy, kod_projektu_poczatkowy;
					nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=wiki_modul.KodyNazwyStrony(pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy);
				end;
				local html_modul=require("Module:Html");
				local parametry_strony=html_modul["ParametryStronyAdresu"](nazwa_strony_linku);
        		local naglowek_strony=html_modul["NagłówekStronyAdresu"](nazwa_strony_linku);
        	    local nazwy_modul=require("Module:Nazwy");
				nazwa_strony_linku=nazwy_modul["PEŁNANAZWASTRONY"]{nazwa=nazwa_strony_linku,['kod języka']=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,}
				local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"]{nazwa=nazwa_strony_linku,['kod języka']=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,}
				local nazwa_kanoniczna_przestrzeni;
				local biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,};
				
				local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
				if(biezaca_wiki)then
					if(nazwa_przestrzeni)then
						if((nazwa_przestrzeni==nazwy_np_modul.Main)
							   or(nazwa_przestrzeni==nazwy_np_modul.Wikijunior)
							      or(nazwa_przestrzeni==nazwy_np_modul.Wikibooks)
							        or(nazwa_przestrzeni==nazwy_np_modul.User)
					    )then
    	    				local pozycja_artykulu=Artykul(nazwa_strony_linku);
    	    				if(pozycja_artykulu)then
								nazwa_strony_linku=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]{nazwa=nazwa_strony_linku,['kod języka']=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,};
								return {nazwa_strony_linku..(parametry_strony and ("?"..parametry_strony) or "")..(naglowek_strony and ("#"..naglowek_strony) or ""),nazwa,},nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
							else
								return nil,{nazwa_strony_linku..(parametry_strony and ("?"..parametry_strony) or "")..(naglowek_strony and ("#"..naglowek_strony) or ""),nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
							end;
						else
							return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
						end;
					else
						return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
					end;
				else
					nazwa_kanoniczna_przestrzeni=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni,["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["kod języka"]=kod_jezyka_koncowy,["kod projektu"]=kod_projektu_koncowy,["istnieje"]="tak",["wynik błędu nietekstowy"]="",};
					if(nazwa_kanoniczna_przestrzeni)then
						if((nazwa_kanoniczna_przestrzeni==nazwy_np_modul.kanoniczna.Main)
							   or(nazwa_kanoniczna_przestrzeni==nazwy_np_modul.kanoniczna.Wikijunior)
							     or(nazwa_kanoniczna_przestrzeni==nazwy_np_modul.kanoniczna.Project)
							    	or(nazwa_kanoniczna_przestrzeni==nazwy_np_modul.kanoniczna.User)
					    )then
							return nil,{nazwa_strony_linku..(parametry_strony and ("?"..parametry_strony) or "")..(naglowek_strony and ("#"..naglowek_strony) or ""),nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
						else
							return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
						end;
					else
						return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
					end;
				end;
				return nil,{nazwa_strony_linku..(parametry_strony and ("?"..parametry_strony) or "")..(naglowek_strony and ("#"..naglowek_strony) or ""),nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
			end;
    	else
    		return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
		end;
	end;
	---
    local czy_pozycja_artykulu=nil;
	if(not pozycja_artykulu)then
		local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
		if(link_szablon)then
				local szablonowe_modul=require("Module:Szablonowe");
            	local parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania=szablonowe_modul["ParsujWywołanieSzablonu"](link_szablon);
            	if(nazwa_szablonu_wywolania=="SpisTreści")then
                	    pozycja_artykulu=parametry[1];
                	    return {pozycja_artykulu,nil},nil,true,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
            	elseif(nazwa_szablonu_wywolania=="Sekcja referencyjna")then
                		local strona=parametry[1] or parametry["strona"];
                		if(not strona)then
                    		return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    	end;
                		local podstrona=parametry[3] or parametry["podstrona"];
                		if(not strona)then
                			local nazwy_modul=require("Module:Nazwy");
                    		pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
                    	else
                    		pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
                    	end;
                    	nazwa=parametry["nazwa"] or parametry[2];
                    	return {pozycja_artykulu,nazwa},nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                else
                    if(nazwa_szablonu_wywolania=="Link wewnętrzny")then
                    		local pozycja_artykul;
                    		local pozycja_artykulu=parametry["strona"];
                    		if(not pozycja_artykulu)then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		nazwa=parametry["nazwa"];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		local czy_nie_dwukropek=pozycja_artykulu and mw.ustring.match(pozycja_artykulu,"^[^:]*$") or nil;
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,czy_nie_dwukropek,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania)
                    elseif(nazwa_szablonu_wywolania=="LinkOgólne")then
                    		local pozycja_artykul;
                    		local strona=parametry[1];
                    		if(not strona)then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		nazwa=parametry[2];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
                    		if(miano_przestrzeni_nazw)then
                    			pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..strona;
                    		else
                    		    pozycja_artykulu=strona;
                    		end;
                    		local czy_nie_dwukropek=pozycja_artykulu and mw.ustring.match(pozycja_artykulu,"^[^:]*$") or nil;
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,czy_nie_dwukropek,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania)
                    elseif(nazwa_szablonu_wywolania=="LinkGłówna")then
                    		local pozycja_artykulu=parametry[1];
                    		if(not pozycja_artykulu)then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		nazwa=parametry[2];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		local czy_nie_dwukropek=pozycja_artykulu and mw.ustring.match(pozycja_artykulu,"^[^:]*$") or nil;
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,czy_nie_dwukropek,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania);
                    elseif((nazwa_szablonu_wywolania=="LinkWikijunior")or(nazwa_szablonu_wywolania=="LinkWikijunior2"))then
                    	    if(not parametry[1])then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
                    		pozycja_artykulu=nazwy_np_modul.kanoniczna.Wikijunior..":"..parametry[1];
                    		nazwa=parametry[2];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,true,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania);
                    elseif((nazwa_szablonu_wywolania=="LinkProjekt")or(nazwa_szablonu_wywolania=="LinkProjekt2"))then
                    	    if(not parametry[1])then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
                    		pozycja_artykulu=nazwy_np_modul.kanoniczna.Project..":"..parametry[1];
                    		nazwa=parametry[2];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,true,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania);
                    elseif((nazwa_szablonu_wywolania=="LinkUżytkownik")or(nazwa_szablonu_wywolania=="LinkUżytkownik2"))then
                    	    if(not parametry[1])then
                    			return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},false;
                    		end;
                    		local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
                    		pozycja_artykulu=nazwy_np_modul.kanoniczna.User..":"..parametry[1];
                    		nazwa=parametry[2];
                    		local klucz_projektu=parametry["klucz projektu"];
                    		local kod_jezyka=parametry['kod języka'];
                    		local kod_projektu=parametry["kod projektu"];
                    		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,true,klucz_projektu,kod_jezyka,kod_projektu,parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania);
                    elseif((__FUNKCJA)and(__FUNKCJA(parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania)))then
                    	return nil,nil,false,{parametry,nazwa_szablonu_wywolania,modyfikatory_wywolania,},true;
                    end;
               end;
		end;
    else
    	local parametry_modul=require("Module:Parametry");
        --pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
        local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
        if(czy_pozycja_artykulu)then
        	if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
    	        pozycja_artykulu=(((nazwa_spisu_tresci)and(nazwa_spisu_tresci~=""))and (nazwa_spisu_tresci.."/") or "")..czy_pozycja_artykulu;
    	    else
    	    	pozycja_artykulu=nil;
    	    end;
    	    return {pozycja_artykulu,nazwa},nil,false,nil,false;
         else
         	if(mw.ustring.match(pozycja_artykulu,"^[^:]*$"))then
         		 return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,true,nil,nil,nil,nil);
         	else
         		return DaneKsiazkowychProjektowychMiedzyProjektowychArtykulu(pozycja_artykulu,nazwa,false,nil,nil,nil,nil);
         	end;
         end;
	end;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
  local pf=frame:getParent();
  local parametry_modul=require("Module:Parametry");
  local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
  local nazwa_strony;
  local html_modul=require("Module:Html");
  local nazwy_modul=require("Module:Nazwy");
  local ksiazkowe_modul=require("Module:Książkowe");
  local techniczne_modul=require("Module:Techniczne");
  local szablonowe_modul=require("Module:Szablonowe");
  local nazwa_przestrzeni;local nazwa_przestrzeni_ksiazki;local nazwa_ksiazki;local nazwa_artykulu;
  
  nazwa_artykulu=frame.args["nazwa artykułu"];
  nazwa_ksiazki=frame.args["nazwa książki"];
  
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
  if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
	  return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
  end;
  local czy_aktualna_strona=nil;
  if((not nazwa_artykulu)and(not nazwa_ksiazki))then
  		czy_aktualna_strona=1;
  	    nazwa_strony="";
  elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
  	  	czy_aktualna_strona=2;
  	  	nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  	  	nazwa_przestrzeni_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki;
  		nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  		nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true);
  	    nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
  	    nazwa_artykulu=parametry_modul["Odstępy"]{[1]=nazwa_artykulu,[2]="tak",};
  	    local techniczne_modul=require("Module:Techniczne");
  	    nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",};
  	  	nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
  	  	local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_strony);
  	  	if(strona)then
  	  		 nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
  	  		 nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona);
  			 nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona) or nazwy_modul["NAZWAKSIĄŻKI"](strona));
  			 nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
  			 nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
  			 if((nazwa_przestrzeni~=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki~=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki~=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki))then
  				czy_aktualna_strona=nil;
  			 elseif(nazwa_artykulu==tabela_listy_danych_analizy_ksiazki.nazwa_artykulu)then
  				czy_aktualna_strona=1;
  				nazwa_strony="";
  			end;
  	  	end;
  else
		local nazwa_modulu=nazwy_modul["NazwaModułu"](tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni,tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki,tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki,tabela_listy_danych_analizy_ksiazki.nazwa_artykulu);
		nazwa_ksiazki=html_modul.DecodeHtml(nazwa_ksiazki,true);
		nazwa_ksiazki=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_ksiazki);
		nazwa_artykulu=parametry_modul["Odstępy"]{[1]=nazwa_artykulu,[2]="tak",};
		
	  	nazwa_ksiazki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_ksiazki,[2]=nazwa_modulu,};
	  	
  	    local ksiazkawe_modul=require("Module:Książkowe");
  	    nazwa_ksiazki=ksiazkawe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
  		nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
  		nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](nazwa_ksiazki);
		nazwa_ksiazki=(nazwa_przestrzeni_ksiazki~="")and nazwy_modul["SUBNAZWAKSIĄŻKI"](nazwa_ksiazki) or nazwy_modul["NAZWAKSIĄŻKI"](nazwa_ksiazki);
		
		nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true);
		nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
		nazwa_artykulu=parametry_modul["Odstępy"]{[1]=nazwa_artykulu,[2]="tak",};
		nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",};
		
		nazwa_strony=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu);
		local techniczne_modul=require("Module:Techniczne");
		local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_strony);
		if(strona)then
			  nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
  			  nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona);
			  nazwa_ksiazki=(nazwa_przestrzeni_ksiazki~="")and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona) or nazwy_modul["NAZWAKSIĄŻKI"](strona);
			  nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
			  
			  if((nazwa_przestrzeni~=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki~=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki~=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki))then
  					czy_aktualna_strona=nil;
  					nazwa_strony=strona;
  			  elseif(nazwa_artykulu==tabela_listy_danych_analizy_ksiazki.nazwa_artykulu)then
  					czy_aktualna_strona=1;
  					nazwa_strony="";
  			  else
  			  		czy_aktualna_strona=2;
  					nazwa_strony=strona;
  			  end;
		end;
  end;
  local link = function(adres_linku,nazwa_linku,klasa,styl)
       local czy_klasa=parametry_modul.CzyTak(klasa);
       local czy_styl=parametry_modul.CzyTak(styl);
       if(czy_klasa or czy_styl)then
       		spanramka=mw.html.create('span');
       		if(czy_klasa)then spanramka:attr("class",klasa);end;
       		if(czy_styl)then spanramka:attr('style',styl);end;
       		spanramka:wikitext(nazwa_linku);
       		local kod_html=spanramka:allDone();
       		return "[["..adres_linku.."|"..tostring(kod_html).."]]";
       else
       		return "[["..adres_linku.."|"..nazwa_linku.."]]";
       end;
  end;
  local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
  	   divramka=mw.html.create('div');
  	   local parametry_modul=require("Module:Parametry");
  	   local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
  	   if(parametry_modul.CzyTak(uchwyt))then
  	   		if(parametry_modul.CzyTak(bez_automatu))then
  	   			divramka:attr('id',"wzór_"..uchwyt);
  	   		else
  	   			if(numeracja)then
  	   				divramka:attr('id',"wzór_"..numeracja);
  	   			else
  	   				divramka:attr('id',"wzór_"..uchwyt);
  	   			end;
  	   		end;
  	   end;
  	   if(parametry_modul.CzyTak(styl_main))then
  	   		divramka:attr('style',styl_main);
  	   end;
  	   local uchwyt_fun=function()
  			if(parametry_modul.CzyTak(uchwyt))then
  				local divuchwytramka=mw.html.create('div');
  				divuchwytramka:attr('class',klasa_numeracji);
  				divuchwytramka:attr('style',styl_numeracji);
  				if(parametry_modul.CzyTak(bez_automatu))then
  	   				divuchwytramka:wikitext('(',uchwyt..")");
  	   			else
  	   				if(numeracja)then
  	   					divuchwytramka:wikitext('('..numeracja..")");
  	   				else
  	   					divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
  	   				end;
  				end;
     			divramka:node(divuchwytramka);
  			end;
  	   end;
  	   local pole_odstepu_fun=function()
  			divramka:addClass("wzory");
  			local divramka2=mw.html.create('div');
  			divramka2:attr('style',styl_odstepu);
  			divramka2:wikitext(pole_odstepu);
  			divramka:node(divramka2);
  	   end;
  	   local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
  	        if(parametry_modul.CzyTak(opis))then
  	   			local divramka5=mw.html.create('div')
  	   			divramka5:attr('class',klasa_opisu)
  	   			divramka5:attr('style',styl_opisu)
  	   			divramka5:wikitext(wzor_opisu)
  	   			divramka:node(divramka5)
  			else
  	   			local divramka5=mw.html.create('div');
  	   			divramka5:attr('style',styl_alternatywy_opisu);
  	   			divramka:node(divramka5)
  	        end;
  	   end;
  	   if(not czy_pozycja_numeracji_prawa)then
  	   	   uchwyt_fun();
  	   else
  	   	   pole_odstepu_fun();
  	   end;
  	   opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
  	   local divramka4=mw.html.create('div');
  	   divramka4:attr('class',klasa_wzoru);
  	   divramka4:attr('style',styl_wzoru);
  	   divramka4:wikitext(wzor);
  	   divramka:node(divramka4);
       opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
  	   if(czy_pozycja_numeracji_prawa)then
  	   	    uchwyt_fun();
  	   else
  	   	    pole_odstepu_fun();
  	   end;
  	   return tostring(divramka:allDone());
  end;
  local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
  	local divramka=mw.html.create('div');
  	divramka:attr('class',klasa);
  	divramka:attr('style',styl);
  	local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
  	if(czy_uchwyt)then
  		if(numeracja)then
  			if(parametry_modul.CzyTak(bez_automatu))then
  				divramka:attr('id',"rysunek_"..uchwyt);
  			else
  				divramka:attr('id',"rysunek_"..numeracja);
  			end;
  		else
  			divramka:attr('id',"rysunek_"..uchwyt);
  		end;
  	end;
  	local czy_opis=parametry_modul.CzyTak(opis);
  	local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
  	divramka:wikitext(wywolanie_rysunku);
  	return tostring(divramka:allDone());
  end;
  local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
  	local divramka=mw.html.create('div');
  	if(parametry_modul.CzyTak(uchwyt))then
  		if(parametry_modul.CzyTak(bez_automatu))then
  			divramka:attr('id',przedrostek.."_"..uchwyt);
  		else
  			divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
  		end;
  	end;
  	divramka:attr('class',klasa);
  	divramka:attr('style',styl);
  	local wikitext="";
  	if(parametry_modul.CzyTak(uchwyt))then
  		if(parametry_modul.CzyTak(bez_automatu))then
  			wikitext="("..przedrostek2.." "..uchwyt..")";
  		else
  			if(numeracja)then
  				wikitext="("..przedrostek2.." "..numeracja..")";
  			else
  				wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
  			end;
  		end;
  	end;
  	if(parametry_modul.CzyTak(styl_naglowka))then
  		local spanramka=mw.html.create('span');
  		spanramka:attr('style',styl_naglowka);
  		spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
  		divramka:node(spanramka);
  	else
  		divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
  	end;
  	divramka:wikitext('<BR>');
  	if(parametry_modul.CzyTak(styl_tekstu))then
  		local spanramka=mw.html.create('span');
  		spanramka:attr('style',styl_tekstu);
  		spanramka:wikitext(tekst);
  		divramka:node(spanramka);
  	else
  		divramka:wikitext(tekst);
  	end;
  	  	return tostring(divramka:allDone());
  end;
  local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
  	local spanramka=mw.html.create('sup');
  	spanramka:attr('style',klasa);
  	if(parametry_modul.CzyTak(uchwyt))then
  		if(parametry_modul.CzyTak(bez_automatu))then
  			spanramka:attr('id',przedrostek_id.."_"..uchwyt);
  		else
  			if(parametry_modul.CzyTak(numeracja))then
  				spanramka:attr('id',przedrostek_id.."_"..numeracja);
  			else
  				spanramka:attr('id',przedrostek_id.."_"..uchwyt);
  			end;
  		end;
  	end;
  	spanramka:attr('style',styl);
  	local smallramka=mw.html.create('small');
  	if(parametry_modul.CzyTak(uchwyt))then
  		if(parametry_modul.CzyTak(bez_automatu))then
  			smallramka:wikitext(prefiks..": "..uchwyt);
  		else
  			if(parametry_modul.CzyTak(numeracja))then
  				smallramka:wikitext('['..prefiks..": "..numeracja..']');
  			else
  				smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
  			end;
  		end;
  	else
  		smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
  	end;
  	spanramka:node(smallramka);
  	return tostring(spanramka:allDone());
  end;
  local nazwa_strony_fun=function(nazwa_strony)
  	  if((nazwa_strony)and(nazwa_strony==""))then return "";end;
  	  if(czy_aktualna_strona)then
  	  		if(czy_aktualna_strona==1)then 
  	  			return "";
  	  		elseif(czy_aktualna_strona==2)then
  	  			if(tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu)then return "";end;
  	  		end;
  	  else
  			if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
  	  			and(tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_ksiazki==nazwa_przestrzeni_ksiazki)
            		and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
      	    			and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
      		    		return "";
      		end;
      end;
      return  nazwa_strony;
  end;
  if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
  	  if(frame.args["obiekt"])then
  		if(frame.args["obiekt"]=="link")then
  			local nazwa_strony=nazwa_strony_fun(nazwa_strony);
  			if(uchwyt_obiektu)then
      	    	return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
      	    else
	            return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
  			end;
  		elseif(frame.args["obiekt"]=="wzór")then
      	    return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
  		elseif(frame.args["obiekt"]=="rysunek")then
    		return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
  		elseif(frame.args["obiekt"]=="wypowiedzenie")then
			return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
  		elseif(frame.args["obiekt"]=="punkt")then
		  return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
        else
        	return uchwyt_obiektu;
  		end;
    else
    	return uchwyt_obiektu;
    end;
  end;
  
  local tabela_listy_uchwytow_i_numeracji_na_stronie;
  if(czy_aktualna_strona==nil)then
		local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
		if(dane_analizy_artykulu)then
			local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
			if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
				local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce_w_danej_przestrzeni_nazw_ksiazki=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_przestrzeni_ksiazki];
				if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce_w_danej_przestrzeni_nazw_ksiazki)then
					local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce_w_danej_przestrzeni_nazw_ksiazki[nazwa_ksiazki];
					if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
						local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
						if(lista_artykolow)then
							local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
							if(tabela_listy_analizy_na_stronie)then
								tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
							end;
						end;
					end;
				end;
			end;
		end;
  elseif(czy_aktualna_strona==1)then
		tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
		if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
			return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
		end;
  elseif(czy_aktualna_strona==2)then	
		tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
		if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
			return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
		end;
		if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
			local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
			if(lista_artykolow)then
				local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
				if(tabela_listy_analizy_na_stronie)then
					tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
				end;
			end;
		end;
  end;
	local stronicowyparser_obiekty_modul=require("Module:StronicowyParser/obiekty");
	if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
  		local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
  		if(spis_uchwytow)then
  			if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
    			for _, dany_artykul in ipairs(spis_uchwytow)do
      				if(dany_artykul[1]==uchwyt_obiektu)then
      						if(not stronicowyparser_obiekty_modul.szablony_naglowka[nazwa_obiektu])then
      								if(frame.args["obiekt"])then
      										if(frame.args["obiekt"]=="link")then
      												local nazwa_strony=nazwa_strony_fun(nazwa_strony);
  					        						if(not dany_artykul[2])then 
  					        								return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
  					        						end;
      					    						return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
      										elseif(frame.args["obiekt"]=="wzór")then
  					    				    		return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
  					    					elseif(frame.args["obiekt"]=="rysunek")then
  					    								return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
  					    					elseif(frame.args["obiekt"]=="wypowiedzenie")then
														return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);	
										    elseif(frame.args["obiekt"]=="punkt")then
														return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
            								else
            											return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
      										end;
			            			else
			            				return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
			            			end;
            				else
            					if(dany_artykul[2])then
            							local tytul_szablonu=frame.args["nazwa szablonu"] or szablonowe_modul.NazwaSzablonu(frame:getParent():getTitle());
            							local tab_naglowek=stronicowyparser_obiekty_modul.linki_szablony_naglowka[nazwa_obiektu];
            							if(tytul_szablonu==tab_naglowek[1])then
            									return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
            							elseif(tytul_szablonu==tab_naglowek[2])then
                        	    				return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
                        	    		end;
                        	    end;
            				end;
            		end;
        		end;
  			end;	
      end;
   end;
  if(frame.args["obiekt"])then
	if(frame.args["obiekt"]=="link")then
		local nazwa_strony=nazwa_strony_fun(nazwa_strony);
		return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
	elseif(frame.args["obiekt"]=="wzór")then
  	     return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
	elseif(frame.args["obiekt"]=="rysunek")then
  		return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
    elseif(frame.args["obiekt"]=="wypowiedzenie")then
			return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
	elseif(frame.args["obiekt"]=="punkt")then
		  return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
  	else
  		 return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
  	end;
 else 					    				    
 	return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
 end;
end;
return p;