Moduł:StronicowyParser

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.SpreparowanyWikikodStrony(nazwa_modolu,tabela_listy_danych_analizy_ksiazki)
   local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
   local nazwy_modul=require("Module:Nazwy");
   nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENIFUN"](nazwa_modolu);
   if(nazwy_np_modul.Module==nazwa_przestrzeni)then
   	    local parametry_modul=require("Module:Parametry");
   		nazwa_modolu=parametry_modul["PełnaNazwaOpisuModułuFun"](nazwa_modolu);
   		local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje");
   		return dalsze_funkcje_modul.LadujZawartoscStrony(nazwa_modolu,tabela_listy_danych_analizy_ksiazki,true);
   elseif((nazwy_np_modul.Template~=nazwa_przestrzeni)or((nazwy_np_modul.Template==nazwa_przestrzeni)and(mw.ustring.match(nazwa_modolu,"^[^:]+:(.*/opis)%s*$"))))then
   	   local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje");
   	   return dalsze_funkcje_modul.LadujZawartoscStrony(nazwa_modolu,tabela_listy_danych_analizy_ksiazki,true);
   else
   	    local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje")
   	    local szablony_magiczne={};
		local tekst_artykulu_caly=dalsze_funkcje_modul.LadujZawartoscStrony(nazwa_modolu,tabela_listy_danych_analizy_ksiazki,true,szablony_magiczne,false);
		if(not tekst_artykulu_caly)then return;end;
		local iterator=mw.ustring.gmatch(tekst_artykulu_caly,"{{[^{}]-}}");
	    local parametry_modul=require("Module:Parametry");
		for wywolanie in iterator do
   			local nazwa_strony2;
		  	local dokumentacja=mw.ustring.match(wywolanie,"{{%s*[Dd]okumentacja%s*}}");
		  	if(dokumentacja)then
		  		local nazwa_strony2=nazwa_modolu.."/opis";
		  		local tekst_artykulu2=dalsze_funkcje_modul.LadujZawartoscStrony(nazwa_strony2,tabela_listy_danych_analizy_ksiazki,false,szablony_magiczne,true);
		  		tekst_artykulu2=mw.ustring.gsub(tekst_artykulu2,"%%(%d)","%%%1");
			    tekst_artykulu_caly=mw.ustring.gsub(tekst_artykulu_caly,"{{%s*[Dd]okumentacja%s*}}",tekst_artykulu2);
		  	else
		  	    local dopasowanie=mw.ustring.match(wywolanie,"{{%s*[Dd]okumentacja%s*|");
		  	    if(dopasowanie)then
		  	    	local tablica_parametrow_dokumentacja=parametry_modul["ParsujWywołanieSzablonu"](wywolanie)
		  	    	local nazwa_strony2=tablica_parametrow_dokumentacja[1];
		  	    	local zawartosc=tablica_parametrow_dokumentacja["zawartość"];
		  	    	if((nazwa_strony2)and(not zawartosc))then
		  	  			local tekst_artykulu2=dalsze_funkcje_modul.LadujZawartoscStrony(nazwa_strony2,tabela_listy_danych_analizy_ksiazki,false,szablony_magiczne,true);
		  	  			tekst_artykulu2=mw.ustring.gsub(tekst_artykulu2,"%%(%d)","%%%1");
						wywolanie=mw.ustring.gsub(wywolanie,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
						tekst_artykulu_caly=mw.ustring.gsub(tekst_artykulu_caly,wywolanie,tekst_artykulu2);		  	    	
					elseif(zawartosc)then
						wywolanie=mw.ustring.gsub(wywolanie,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
						tekst_artykulu_caly=mw.ustring.gsub(tekst_artykulu_caly,wywolanie,"");
					end;
		  	  	end;
			end;
		end;
		return tekst_artykulu_caly;
	end;
end;
p["NastępnyArtykuł"]=function(frame)
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Moduł:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
  local nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  local nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  if(not nazwa_ksiazki)then return "(błąd)";end;
  local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.lista_artykulow_w_ksiazkach_w_przestrzeniach_ksiazkowych[nazwa_przestrzeni];
  if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return "(błąd)";end;
  local lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
  if(not lista_artykulow_w_ksiazce)then
  	return "(błąd)";
  end;
  local liczba_artykulow_w_ksiazce=require("Module:Parametry")["LiczbaElementówNumerowanychTablicy"](lista_artykulow_w_ksiazce);
  if(liczba_artykulow_w_ksiazce==0)then
  	return "(błąd)";
  end;
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Moduł:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
  local nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
  for i=1,liczba_artykulow_w_ksiazce,1 do
  	if(lista_artykulow_w_ksiazce[i]==nazwa_artykulu)then
  		if(i<liczba_artykulow_w_ksiazce)then 
  		    return lista_artykulow_w_ksiazce[i+1];
  		elseif(i==liczba_artykulow_w_ksiazce)then
  			return "";
  		end;
  	end;
  end;
  return "(błąd)";
end;
p["PoprzedniArtykuł"]=function(frame)
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Moduł:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;	
  local nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  local nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  if(not nazwa_ksiazki)then return "(błąd)";end;
  local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.lista_artykulow_w_ksiazkach_w_przestrzeniach_ksiazkowych[nazwa_przestrzeni];
  if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return "(błąd)";end;
  local lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
  if(not lista_artykulow_w_ksiazce)then
  	  return "(błąd)";
  end;
  local liczba_artykulow_w_ksiazce=require("Module:Parametry")["LiczbaElementówNumerowanychTablicy"](lista_artykulow_w_ksiazce);
  if(liczba_artykulow_w_ksiazce==0)then
  	return "(błąd)";
  end;
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Moduł:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
  local nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
  for licznik=1,liczba_artykulow_w_ksiazce,1 do
  	if(lista_artykulow_w_ksiazce[licznik]==nazwa_artykulu)then
  		if(licznik>1)then 
  			return lista_artykulow_w_ksiazce[licznik-1];
  		elseif(licznik==1)then
  			return "";
  		end;
  	end;
  end;
  return "(błąd)";
end;
p["AktualnaKsiążka"]=function(frame)
  local tabela_listy_danych_analizy_ksiazki=mw.loadData("Moduł:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
  local nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  local nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  if((not nazwa_ksiazki)or(not nazwa_przestrzeni))then
  	  return "(błąd)";
  end;
   return (nazwa_przestrzeni=="")and nazwa_ksiazki or (nazwa_przestrzeni..":"..nazwa_ksiazki);
end;
function p.HLiczba(frame)
	local licznik=1;
	while true do
    	local naglowek=mw.ustring.match(frame.args[1],"^\n"..mw.ustring.rep("=",licznik).."%s*([^\n]+)%s*"..mw.ustring.rep("=",licznik).."%s*\n$");
    	if(mw.ustring.match(naglowek,"^=([^\n]+)=$")~=nil)then
    		licznik=licznik+1;
    	else
    		if(licznik>6)then 
       			return 6;
    		elseif(licznik<1)then
       			return nil;
    		else
       			return licznik;
    		end;
    	end;
	end;
end;
function p.NazwaRozdzialu(frame)
	local licznik=1;
	while true do
    	local rozdzial=mw.ustring.match(frame.args[1],"^\n"..mw.ustring.rep("=",licznik).."%s*([^\n]+)%s*"..mw.ustring.rep("=",licznik).."%s*\n$");
    	if(mw.ustring.match(rozdzial,"^=([^\n]+)=$")~=nil)then
    		licznik=licznik+1;
    	else
    		return rozdzial;
    	end;
	end;
end;
function p.TOC(frame)
    local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
    local nazwy_modul=require("Module:Nazwy");
    local parametry_modul=require("Module:Parametry");
    local args=(frame)and (parametry_modul.CzyTak(frame.args["wyspecjalizowana"])and frame.args or frame:getParent().args) or {};
	local nazwa_przestrzeni=args[2] and nazwy_modul["NAZWAPRZESTRZENIFUN"](args[2]) or tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
	local nazwa_ksiazki=args[2] and parametry_modul["NazwaKsiążkiFun"](args[2]) or tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
	local nazwa_artykulu=args[1] and args[1] or tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
	local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje");
	if tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu and tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni] and tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni][nazwa_ksiazki] and tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni][nazwa_ksiazki][nazwa_artykulu] and tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni][nazwa_ksiazki][nazwa_artykulu].TOC then
    	local spis_tresci_artykulu=dalsze_funkcje_modul.TOC(tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni][nazwa_ksiazki][nazwa_artykulu].TOC);
    	return spis_tresci_artykulu;
   end;
end;
function p.WykazModolow()
    local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
	local nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
	local nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
	local lista_ksiazek_w_przestrzeni_nazw=tabela_listy_danych_analizy_ksiazki.lista_artykulow_w_ksiazkach_w_przestrzeniach_ksiazkowych[nazwa_przestrzeni];
	if(lista_ksiazek_w_przestrzeni_nazw==nil)then return nil;end;
	local lista_artykulow_w_ksiazce_w_ksiazce=lista_ksiazek_w_przestrzeni_nazw[nazwa_ksiazki];
	if(lista_artykulow_w_ksiazce_w_ksiazce==nil)then return nil;end;
	local wykaz_modolow_w_liscie='<ol>';
	for numer_artykulu, nazwa_artykulu in pairs(lista_artykulow_w_ksiazce_w_ksiazce) do
		sformatowana_nazwa_artykulu=mw.ustring.gsub(nazwa_artykulu,"_"," ");
		wykaz_modolow_w_liscie=wykaz_modolow_w_liscie..'<li>[['..((nazwa_przestrzeni=="")and nazwa_ksiazki or nazwa_przestrzeni..":"..nazwa_ksiazki).."/"..nazwa_artykulu..'|'..sformatowana_nazwa_artykulu..']]</li>';
	end;
	wykaz_modolow_w_liscie=wykaz_modolow_w_liscie.."</ol>";
	wykaz_modolow_w_liscie='<div style="width:100%;max-height:400px;overflow:auto;">'..wykaz_modolow_w_liscie.."</div>";
	wykaz_modolow_w_liscie='{{TableMenu|styl=width:100%|tytuł=<div style="text-align:left;font-size:1.1em;">Wykaz modułów w książce</div>|pozycje='..wykaz_modolow_w_liscie..'|funkcja=UkrytaRamkowaListaMenu|klasa=toc}}';
	local frame=mw.getCurrentFrame();
    local rozwiniety_wikikod=frame:preprocess(wykaz_modolow_w_liscie);
	return rozwiniety_wikikod;
end;
function p.NazwaModolu()
	local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
	local nazwy_np_modul=mw.loadData('Moduł:Nazwy/Np');
	local nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
	if(nazwa_artykulu==nil)then 
		 return "[["..nazwy_np_modul.Category..": Nie można wygenerować nazwy strony]]";
     else
	    return nazwa_artykulu;
	end;
end;
function p.Wstep_do_licencji(frame)
	  local element_licencji_1='<strong>Autor:</strong> '..frame.args[1]..'<BR>';
	  local element_licencji_2;
	    if((frame.args[2]~='')and(frame.args[2]~=nil))then 
	    	element_licencji_2=frame.args[2]..'<BR>';
	  end;
	  local element_licencji_3; 
	  if((frame.args[3]~='')and(frame.args[3]~=nil))then 
	  	 element_licencji_3='<strong>Email:</strong> '..frame.args[3]..'<BR>';
	  end;
	  local element_licencji_4;
	  if((frame.args[4]~='')and(frame.args[4]~=nil))then 
	  	  element_licencji_4='<strong>Dotyczy:</strong> '..frame.args[4].."<BR>";
	  else
	  	 element_licencji_4='<strong>Dotyczy:</strong> książki, do której należy ta strona, oraz w niej zawartych stron i w nich podstron, a także w nich kolumn, wraz z zawartościami.<BR>';
	  end;
	   if((frame.args[5]~='')and(frame.args[5]~=nil))then 
	  	  element_licencji_5=frame.args[5].."<BR>";
	  else
	  	 element_licencji_5='Użytkownika książki, do której należy ta strona, oraz w niej zawartych stron i w nich podstron, a także w nich kolumn, wraz z zawartościami nie zwalnia z odpowiedzialności prawnoautorskiej nieprzeczytanie warunków licencjonowania.<BR>';
	  end;
	  local element_licencji_6;
	  if((frame.args[6]~='')and(frame.args[6]~=nil))then 
	  	   element_licencji_6='<strong>Umowa prawna:</strong> '..frame.args[6]..'<BR>'; 
	  else 
	  	   element_licencji_6='<strong>Umowa prawna:</strong> [http://creativecommons.org/licenses/by-sa/3.0/deed.pl Creative Commons: uznanie autorstwa oraz miejsca pochodzenia książki i jej jakikolwiek części, a także treści, teksty, tabele, wykresy, rysunki, wzory i inne elementy oraz ich części zawarte w książce, i tą książkę, nawet w postaci przerobionej nie można umieszczać w jakikolwiek formie na czasopismach naukowych, archiwach prac, itp.]<BR>';
	  end;	  
	  if((frame.args[7]~='')and(frame.args[7]~=nil))then 
	  	  element_licencji_7=frame.args[7].."<BR>";
	  else
	  	 element_licencji_7='Autor tej książki dołożył wszelką staranność, aby informacje zawarte w książce były poprawne i najwyższej jakości, jednakże nie udzielana jest żadna gwarancja, czy też rękojma. Autor nie jest odpowiedzialny za wykorzystanie informacji zawarte w książce nawet jeśli wywołaby jakąś szkodę, straty w zyskach, zastoju w prowadzeniu firmy, przedsiębiorstwa lub spółki bądź utraty informacji niezależnie, czy autor (a nawet [https://pl.wikibooks.org Wikibooks]) został powiadomiony o możliwości wystąpienie szkód. Informacje zawarte w książce mogą być wykorzystane tylko na własną odpowiedzialność.<BR>';
	  end;
	  local licencja=element_licencji_1..((element_licencji_2)and element_licencji_2 or "")..((element_licencji_3)and element_licencji_3 or "")
	                     ..element_licencji_4..element_licencji_5..element_licencji_6..element_licencji_7;
	  return licencja; 
end;
function p.Licencja()
  local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
  local menu_z_licencja;
  if(tabela_listy_danych_analizy_ksiazki.licencja)then
	if(tabela_listy_danych_analizy_ksiazki.licencja[1])then
		local frame={};
		frame.args={tabela_listy_danych_analizy_ksiazki.licencja[1],tabela_listy_danych_analizy_ksiazki.licencja[2],tabela_listy_danych_analizy_ksiazki.licencja[3],tabela_listy_danych_analizy_ksiazki.licencja[4],tabela_listy_danych_analizy_ksiazki.licencja[5],tabela_listy_danych_analizy_ksiazki.licencja[6],tabela_listy_danych_analizy_ksiazki.licencja[7]};
		local ramka_z_licencja='<div style="margin-left:0px;padding:3px;">'..p.Wstep_do_licencji(frame)..'</div>';
	    menu_z_licencja='{{TableMenu|styl=width:100%;|tytuł=<div style="font-size:1.1em;text-align:left;">Licencja</div>|pozycje='..ramka_z_licencja..'|funkcja=StatycznaRamkowaListaMenu}}';
	else
		return nil;
	end; 
	local frame=mw.getCurrentFrame();
    local rozwiniety_wikikod=frame:preprocess(menu_z_licencja);
    return rozwiniety_wikikod;
  else
    return nil;
  end;
end;
function p.PierwszaStrona(frame)
	local prawe_menu="";
	local parametry_modul=require("Module:Parametry");
	if(parametry_modul.CzyTak(frame.args[1]))then 
		prawe_menu='<div style="margin-top:5px;font-size:1.9em;line-height:25px;text-align:left;">'..p.NazwaModolu()..'</div><hr/>';
    end;
	if(parametry_modul.CzyTak(frame.args[2]))then 
		 local licencja=p.Licencja();
		 if(licencja~=nil)then
		 	prawe_menu=prawe_menu..licencja;
		 else
    		local obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
  	    	local uchwyt_strony=mw.title.getCurrentTitle();
  	    	local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
  	    	local nazwa_przestrzeni_nazw_strony=require("Module:Nazwy")["NAZWAPRZESTRZENIFUN"]();
  	    	local element_zdania_kategorii=(nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "w artykułach głównych, książek" 
  	    	            or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "w artykułach głównych, książek dla dzieci" 
  	    	            	 or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User)and "na stronach głównych, książek użytkowników" 
  	    	            	 	or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks)and "na stronach głównych, książek brudnopisu projektu" 
  	    	            	 	   or "na stronach głównych, książek")));
  	    	local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;           	 	   
    		local kategoria_braku_licencji=(not tabela_listy_danych_analizy_ksiazki.korzystane_strona_glowna_nie_istnieje)and"[["..nazwy_np_modul.Category..": Brak licencji, "..element_zdania_kategorii.."]]" or "";
    		prawe_menu=prawe_menu..kategoria_braku_licencji;
	   end;
	end;
	if(parametry_modul.CzyTak(frame.args[3]))then 
		 local wykaz_artykulow=p.WykazModolow();
		 if(wykaz_artykulow~=nil)then
		 	prawe_menu=prawe_menu.."<hr/>"..wykaz_artykulow;
	    end;
	end;
	if(parametry_modul.CzyTak(frame.args[4]))then 
		 local spis_tresci=p.TOC();
		 if(spis_tresci~=nil)then
		 	prawe_menu=prawe_menu.."<hr/>"..spis_tresci;
	    end;
	end;
	return prawe_menu;
end;
function p.SpisTresci(frame)
    local args = frame.args;
    local brak=mw.ustring.match(args[1],"[|<>{}%[%]]");
    if(brak~=nil)then
    	local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
    	local nazwa_przestrzeni_nazw_strony=require("Module:Nazwy")["NAZWAPRZESTRZENIFUN"]();
  	    local element_zdania_kategorii=(nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów," 
  	            or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci," 
  	    	        or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User)and "stron użytkowników," 
  	    	        	or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks)and "stron brudnopisu projektu," 
  	    	        	    or "stron,")));
    	return "[["..nazwy_np_modul.Category..":Nazwy "..element_zdania_kategorii.." w spisach treści, zawierają niedozwolone znaki]]";
    end;
    local parametry_modul=require("Module:Parametry");
    local nazwy_modul=require("Module:Nazwy");
    local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENIFUN"]();
    local nazwa_ksiazki=parametry_modul["NazwaKsiążkiFun"]();
    nazwa_ksiazki=parametry_modul.TransformacjaFun(nazwa_ksiazki);
    local nazwa_artykulu=parametry_modul.TransformacjaFun(args[1]);
    local nazwa_strony=(nazwa_artykulu=="")and nazwa_ksiazki or nazwa_ksiazki.."/"..nazwa_artykulu;
    local pelna_nazwa_strony=(nazwa_przestrzeni=="")and nazwa_strony or nazwa_przestrzeni..":"..nazwa_strony;
    local uchwyt_strony2 = mw.title.makeTitle(nazwa_przestrzeni, nazwa_strony);
    local nazwa_strony_artykulu=mw.ustring.gsub(mw.ustring.match(nazwa_artykulu,"[^/]*$"),"_"," ");
    if((uchwyt_strony2==nil)or(not uchwyt_strony2.exists))then
    	if(nazwa_artykulu~="")then
	    	return mw.ustring.rep("=",6).."<span style=\"color:red\">[["..pelna_nazwa_strony.."|"..nazwa_strony_artykulu.."]]</span>"..mw.ustring.rep("=",6);
	    else
	         return frame:getParent():preprocess("{{Błąd|Wywołano szablon z argumentem pierwszym pustym.}}");
	    end;
    else
       local tekst_artykulu = uchwyt_strony2:getContent();
       local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje");
       local ulozenia_w_menu_spisu_tresci=dalsze_funkcje_modul.SpisTresciWstep(tekst_artykulu, pelna_nazwa_strony);	
       local twor_spisu_tresci="";
	   twor_spisu_tresci=mw.ustring.rep("=",6).."[["..pelna_nazwa_strony.."|"..nazwa_strony_artykulu.."]]"..mw.ustring.rep("=",6);
	   if(ulozenia_w_menu_spisu_tresci~=nil)then
	   	 local pelna_nazwa_ksiazki=((nazwa_przestrzeni=="")and nazwa_ksiazki or nazwa_przestrzeni..":"..nazwa_ksiazki);
         for licznik=1, #ulozenia_w_menu_spisu_tresci do
 	        twor_spisu_tresci=twor_spisu_tresci.."\n"..mw.ustring.rep("#",ulozenia_w_menu_spisu_tresci[licznik][2])
 	              .."[["..ulozenia_w_menu_spisu_tresci[licznik][1][1].."|"..ulozenia_w_menu_spisu_tresci[licznik][1][2].."]]";
         end;
       end;
       return twor_spisu_tresci;
    end;
end;
function IteratorFunkcja()
	local obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
	local tabela_wypowiedzi=obiekty_modul.tablica_obiektow;
	local licznik=1;
	return function()
		local tabela_obiektu=tabela_wypowiedzi[licznik];
		if(not tabela_obiektu)then return nil;end;
		local wartosc1=mw.ustring.gsub(tabela_obiektu[1],"%d+$","");
		local wartosc2=tabela_obiektu[4];
		licznik=licznik+1;
		return wartosc1,wartosc2;
	end;
end;
local iterator=IteratorFunkcja();
for nazwa_obiektu,czesc_nazwy_funkcji in iterator do
	p["Numer"..czesc_nazwy_funkcji] = function(frame)
		local dalsze_funkcje_modul=require("Moduł:StronicowyParser/DalszeFunkcje");
		return dalsze_funkcje_modul.NumerObiektu(frame,nazwa_obiektu);
	end;
end;
p["AnalizujSzablonemStronicowymArtykuł"]=function(frame)
	local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
    return "";
end;
function p.formatowanie()
	local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
	return tabela_listy_danych_analizy_ksiazki.formatowanie;
end;
function p.WstawKategorie(frame)
  local tabela_listy_danych_analizy_ksiazki=mw.loadData('Moduł:StronicowyParser/informacje').tablica_zebranych_danych_ksiazkowych;
  if(not tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then return "";end;
  local nazwa_przestrzeni_nazw_strony=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
  local nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
  local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
  local obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty");
  local pf=frame:getParent();
  local parametry_modul=require("Module:Parametry");
  local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or parametry_modul.NazwaSzablonu(pf:getTitle());
  nazwa_szablonu_rodzica=mw.ustring.gsub(nazwa_szablonu_rodzica,"%d+$","");
  local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..frame.args[1];
  local lancuch_znakow="";
  local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie;
  if(ktory_szablon_stronicowy_ma_zwracac_kategorie1==ktory_szablon_stronicowy_ma_zwracac_kategorie2)then
  	    local parametry_modul=require("Module:Parametry");
  	    local strony_z_wielkiej_litery,strony_z_malej_litery;
  	    if(nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)then
  	      	strony_z_wielkiej_litery="Artykuły";
  	    	strony_z_malej_litery="artykułów";
  	    elseif(nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)then
  	    	strony_z_wielkiej_litery="Artykuły dla dzieci,";
  	    	strony_z_malej_litery="artykułów dla dzieci";
  	    elseif((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User)and(mw.ustring.match(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki,"^[^/]+/(.*)$")))then
  	    	strony_z_wielkiej_litery="Strony użytkowników,";
  	    	strony_z_malej_litery="stron użytkowników";
  	    elseif((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks)and(mw.ustring.match(nazwa_ksiazki,"^%s*[Bb]rudnopis/[^/]+/(.*)$")))then
  	    	strony_z_wielkiej_litery="Strony brudnopisu projektu,";
  	    	strony_z_malej_litery="stron brudnopisu projektu";
  	    else
  	    	strony_z_wielkiej_litery="Strony";
  	    	strony_z_malej_litery="stron";
  	    end;
  	    local latki_modul=require("Module:Łatki");
  	    for _,element_w_podtablicy_kategorii_bledow in pairs(obiekty_modul.tablica_obiektow)do
  	    	local wartosc_elementu_pierwszego=mw.ustring.gsub(element_w_podtablicy_kategorii_bledow[1],"%d+$","");
  	    	if(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_korzystanych_stron[wartosc_elementu_pierwszego])then
              if(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_korzystanych_stron[wartosc_elementu_pierwszego]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." "..latki_modul.ZFun(element_w_podtablicy_kategorii_bledow[6]).." "..element_w_podtablicy_kategorii_bledow[6]..((mw.ustring.match(element_w_podtablicy_kategorii_bledow[6],"[%s_]+"))and "," or "").." ze złymi uchwytami]]";
              end;
    		end;
    		if(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_doloczonych_stron[wartosc_elementu_pierwszego])then
              for nazwa_przestrzeni,element_w_podtablicy_kategorii_bledow2 in pairs(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_doloczonych_stron[wartosc_elementu_pierwszego]) do
              	for nazwa_ksiazki,_ in pairs(element_w_podtablicy_kategorii_bledow2)do
              		if((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki))then
                    	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z dołączonymi innymi stronami, w książkach, "..latki_modul.ZFun(element_w_podtablicy_kategorii_bledow[6]).." "..element_w_podtablicy_kategorii_bledow[6]..((mw.ustring.match(element_w_podtablicy_kategorii_bledow[6],"[%s_]+"))and ", " or " ").."ze złymi uchwytami]]";
                    else
                    	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z dołączonymi "..(((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwy_np_modul.Main)and(tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwy_np_modul.Wikijunior)and((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwy_np_modul.User)or(not mw.ustring.match(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki,"^[^/]+/(.*)$")))and ((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwy_np_modul.Wikibooks)or(not mw.ustring.match(nazwa_ksiazki,"^%s*[Bb]rudnopis/[^/]+/(.*)$"))))and "stronami, " or ((nazwa_przestrzeni==nazwy_np_modul.Main)and "artykułami, " 
    		                                            or((nazwa_przestrzeni==nazwy_np_modul.Wikijunior)and "artykułami dla dzieci, " 
    		                                               or (((nazwa_przestrzeni==nazwy_np_modul.User)and(mw.ustring.match(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki,"^[^/]+/(.*)$"))) and "stronami użytkowników, "
    		                                               	  or (((nazwa_przestrzeni==nazwy_np_modul.Wikibooks)and(mw.ustring.match(nazwa_ksiazki,"^%s*[Bb]rudnopis/[^/]+/(.*)$"))) and "stronami brudnopisu projektu, "
    		                                                      or "stronami, "))))).."w innych książkach, "..latki_modul.ZFun(element_w_podtablicy_kategorii_bledow[6]).." "..element_w_podtablicy_kategorii_bledow[6]..((mw.ustring.match(element_w_podtablicy_kategorii_bledow[6],"[%s_]+"))and ", " or " ").."ze złymi uchwytami]]";
                    end;
    		   end;
              end;
    		end;
  	    	if(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_korzystanych_stron["Link"..wartosc_elementu_pierwszego])then
              if(tabela_listy_danych_analizy_ksiazki.bledy_uchwytow_korzystanych_stron["Link"..wartosc_elementu_pierwszego]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." ze złymi uchwytami do "..element_w_podtablicy_kategorii_bledow[7].."]]";
              end;
    		end;
   			if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][1])then
              if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][1]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z pustymi uchwytami w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7].."]]";
              end;
    		end;
  	    	if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][2])then
              if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][2]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z pustymi nazwami artykułów w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7].."]]";
              end;
    		end;
  	    	if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][3])then
              if(tabela_listy_danych_analizy_ksiazki.puste_parametry_szablonow_stronicowych_linkujacych[wartosc_elementu_pierwszego][3]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z pustymi nazwami książek w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7].."]]";
              end;
    		end;
  	    	if(tabela_listy_danych_analizy_ksiazki.brak_uchwytu[wartosc_elementu_pierwszego])then
              if(tabela_listy_danych_analizy_ksiazki.brak_uchwytu[wartosc_elementu_pierwszego]==0)then
                    lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z odnośnikami, z brakiem uchwytu, do "..element_w_podtablicy_kategorii_bledow[7].."]]";
              end;
    		end;
  	    end;
    	if((tabela_listy_danych_analizy_ksiazki.brak_spisu_tresci_do_korzystanych_stron)and((not tabela_listy_danych_analizy_ksiazki.do_korzystanych_stron_brak_spisow_tresci)and(not tabela_listy_danych_analizy_ksiazki.korzystane_strona_glowna_nie_istnieje)))then 
            	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Brakujące spisy treści, do korzystanych "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and " artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and " artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and " stron użytkowników"
    		                                               	  or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and " stron brudnopisu projektu"
    		                                                      or "stron"))))..", w książkach]]";
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.brakujace_spisy_tresci_do_doloczanych_stron)then
        	for nazwa_przestrzeni,element_w_podtablicy_kategorii_bledow in pairs(tabela_listy_danych_analizy_ksiazki.brakujace_spisy_tresci_do_doloczanych_stron)do
        		for nazwa_ksiazki,_ in pairs(element_w_podtablicy_kategorii_bledow)do
        			local czy_pomijaj=(parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.brak_spisow_tresci_do_doloczonych_ksiazek_na_ich_stronach_glownych,nazwa_przestrzeni)and parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.brak_spisow_tresci_do_doloczonych_ksiazek_na_ich_stronach_glownych[nazwa_przestrzeni],nazwa_ksiazki))or(parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja,nazwa_przestrzeni)and parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja[nazwa_przestrzeni],nazwa_ksiazki));

        			if(not czy_pomijaj)then
            				lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Brakujące spisy treści, dołączonych do "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and  "artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and "stron użytkowników"
    		                                               	   or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu"
    		                                                      or "stron"))))..", "..(((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki)) and "stron w książkach" or (((element_w_podtablicy_kategorii_bledow==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci," 
    		                                               or ((nazwa_przestrzeni==nazwy_np_modul.User) and "stron użytkowników,"
    		                                               	 or ((nazwa_przestrzeni==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu,"
    		                                                      or "stron")))).." w innych książkach")).."]]";
    		       end;
    		    end;
    		end;
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.nieprawidlowe_nazwy_korzystanych_stron)then 
        	if(tabela_listy_danych_analizy_ksiazki.nieprawidlowe_nazwy_korzystanych_stron==0)then
            	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z nieprawidłowymi nazwami korzystanych stron]]";
        	end;
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.nieprawidlowe_nazwy_stron_doloczanych_do_stron)then 
        	if(tabela_listy_danych_analizy_ksiazki.nieprawidlowe_nazwy_stron_doloczanych_do_stron==0)then
            	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z nieprawidłowymi nazwami dołączonych stron]]";
        	end;
    	end;       
    	if(tabela_listy_danych_analizy_ksiazki.strona_nie_istnieje)then 
        	if(tabela_listy_danych_analizy_ksiazki.strona_nie_istnieje==0)then
            	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z dołączonymi nieistniejącymi stronami]]";
        	end;
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.blad_wewnetrzny_modulu_lua_stronicowego_parsera)then 
        	if(tabela_listy_danych_analizy_ksiazki.blad_wewnetrzny_modulu_lua_stronicowego_parsera==0)then
            	lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": "..strony_z_wielkiej_litery.." z błędami wewnętrznymi skryptów]]";
        	end;
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.niedozwolone_znaki_w_spisach_tresci)then
    		if(tabela_listy_danych_analizy_ksiazki.niedozwolone_znaki_w_spisach_tresci==0)then
    			lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..":Nazwy "..strony_z_malej_litery..", w spisach treści zawierają niedozwolone znaki]]";
    		end;
    	end;
    	if((tabela_listy_danych_analizy_ksiazki.do_korzystanych_stron_brak_spisow_tresci)and(not tabela_listy_danych_analizy_ksiazki.korzystane_strona_glowna_nie_istnieje))then
    		lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Brak spisu treści, korzystanych "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and "stron użytkowników"
    		                                               	  or  ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu"
    		                                                      or "stron"))))..", do książek]]";
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.korzystane_strona_glowna_nie_istnieje)then
    		lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Nieistniejące strony główne, korzystanych "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and "stron użytkowników"
    		                                               	  or  ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu"
    		                                                      or "stron"))))..", książek]]";
    	end;
    	if(tabela_listy_danych_analizy_ksiazki.brak_spisow_tresci_do_doloczonych_ksiazek_na_ich_stronach_glownych)then
    		for nazwa_przestrzeni,element_w_podtablicy_kategorii_bledow in pairs(tabela_listy_danych_analizy_ksiazki.brak_spisow_tresci_do_doloczonych_ksiazek_na_ich_stronach_glownych)do
    			for nazwa_ksiazki,_ in  pairs(element_w_podtablicy_kategorii_bledow)do
    				local czy_pomijaj=(parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja,nazwa_przestrzeni_nazw)and parametry_modul.CzyJestTakiKluczTabeli(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja[nazwa_przestrzeni_nazw],nazwa_ksiazki))or((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki));
    		    		if(not czy_pomijaj)then
    						lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Brak spisu treści, dołączonych do "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and "stron użytkowników"
    		                                               	 or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu"
    		                                                      or "stron"))))..", do książek"..((element_w_podtablicy_kategorii_bledow==nazwy_np_modul.Main)and "" 
    		                                            or((nazwa_przestrzeni==nazwy_np_modul.Wikijunior)and " dla dzieci" 
    		                                               or ((nazwa_przestrzeni==nazwy_np_modul.User) and " użytkowników"
    		                                               	  or ((nazwa_przestrzeni==nazwy_np_modul.Wikibooks) and " brudnopisu projektu"
    		                                                      or " innych")))).."]]";
    		       end;
    		    end;
    		end;
    	end;
	    if(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja)then
    		for nazwa_przestrzeni,element_w_podtablicy_kategorii_bledow in pairs(tabela_listy_danych_analizy_ksiazki.doloczone_strony_glowne_nie_istnieja)do
    			for nazwa_ksiazki,_ in pairs(element_w_podtablicy_kategorii_bledow)do
    				local czy_ta_sama_ksiazka=((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki));
    		    	if(not czy_ta_sama_ksiazka)then
    						lancuch_znakow=lancuch_znakow.."[["..nazwy_np_modul.Category..": Nieistniejące strony główne, dołączonych do "..((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Main)and "artykułów" 
    		                                            or((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikijunior)and "artykułów dla dzieci" 
    		                                               or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.User) and "stron użytkowników"
    		                                               	 or ((nazwa_przestrzeni_nazw_strony==nazwy_np_modul.Wikibooks) and "stron brudnopisu projektu"
    		                                                      or "stron"))))..", książek"..((element_w_podtablicy_kategorii_bledow==nazwy_np_modul.Main)and "" 
    		                                            or((nazwa_przestrzeni==nazwy_np_modul.Wikijunior)and " dla dzieci" 
    		                                               or ((nazwa_przestrzeni==nazwy_np_modul.User) and " użytkowników"
    		                                               	  or ((nazwa_przestrzeni==nazwy_np_modul.Wikibooks) and " brudnopisu projektu"
    		                                                      or " innych")))).."]]";
    		       end;
    		   end;
    		end;
		end;
    end;
    return lancuch_znakow;
end;
return p;