Moduł:Książkowe

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 NazwaKsiazkawaSilnik(frame,funkcja_nazw)
	local parametry_modul=require("Module:Parametry");
	local PobierzParametr=parametry_modul.PobierzParametr(frame);
	local pelna_nazwa_strony=PobierzParametr("nazwa") or PobierzParametr(1);
	local bez_transformacji=PobierzParametr("bez transformacji");
	local funkcja=PobierzParametr("funkcja");
	local modul=PobierzParametr("moduł");
	pelna_nazwa_strony=pelna_nazwa_strony and ((parametry_modul.CzyTak{[1]=bez_transformacji})and pelna_nazwa_strony or require("Module:"..(parametry_modul.CzyTak(modul)and modul or "Html"))[parametry_modul.CzyTak(funkcja)and funkcja or "TransformacjaKoduZnakuDoZnakuŁancucha"](pelna_nazwa_strony)) or nil;
	local nazwy_modul=require("Module:Nazwy");
	local uzyskana_nazwa_jednostki=nazwy_modul[funkcja_nazw](pelna_nazwa_strony);
	return uzyskana_nazwa_jednostki;
end;
----
p["NazwaPrzestrzeni"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"NAZWAPRZESTRZENI");
end;
p["NazwaPrzestrzeniKsiążki"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"NAZWAPRZESTRZENIKSIĄŻKI");
end;
p["NazwaTytułuKsiążki"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"SUBNAZWAKSIĄŻKI");
end;
p["NazwaArtykułuKsiążki"]=function(frame)
	return NazwaKsiazkawaSilnik(frame,"NAZWAARTYKUŁUKSIĄŻKI");
end;
----
p["NazwaKsiążki"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"NAZWAKSIĄŻKI");
end;
p["PełnaNazwaKsiążki"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"PEŁNANAZWAKSIĄŻKI");
end;
p["PełnaNazwaArtykulu"] = function(frame)
	return NazwaKsiazkawaSilnik(frame,"PEŁNANAZWASTRONY");
end;
p["PełnaNazwaStronicowejKsiążki"]=function(frame)
	local parametry_modul=require("Module:Parametry");
	local PobierzParametr=parametry_modul.PobierzParametr(frame);
	local nazwa_ksiazki=PobierzParametr("nazwa") or PobierzParametr(1);
	local bez_transformacji=PobierzParametr("bez transformacji");
	local funkcja=PobierzParametr("funkcja");
	local modul=PobierzParametr("moduł");
	
	if(not nazwa_ksiazki)then
		local ksiazkowe_modul=require("Module:Książkowe");
		return ksiazkowe_modul["PełnaNazwaKsiążki"]{[1]=nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
	elseif(nazwa_ksiazki=="")then
		return "";
	end;
	local dwukropek=mw.ustring.match(nazwa_ksiazki,"^:");
	if(dwukropek)then 
		local ksiazkowe_modul=require("Module:Książkowe");
		return ksiazkowe_modul["PełnaNazwaKsiążki"]{[1]=nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
	else
		local nazwy_modul=require("Module:Nazwy");
		local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
		local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");

		local ksiazkowe_modul=require("Module:Książkowe");

		local czy_nazwa_ksiazki_z_przestrzenia=(nazwa_przestrzeni~="");
		if czy_nazwa_ksiazki_z_przestrzenia then
			return ksiazkowe_modul["PełnaNazwaKsiążki"]{[1]=nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
		else
			local title_main=mw.title.makeTitle('',nazwa_ksiazki);
			if((title_main)and(title_main.exists))then
				return ksiazkowe_modul["NazwaKsiążki"]{[1]=nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
			else
				local title_wikijunior=mw.title.makeTitle(nazwy_np_modul.Wikijunior,nazwa_ksiazki);
				if((title_wikijunior)and(title_wikijunior.exists))then
					return ((nazwy_np_modul.Wikijunior~="")and nazwy_np_modul.Wikijunior..":" or "")..ksiazkowe_modul["NazwaKsiążki"]{[1]=nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
				else
					local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"]();
					local nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"]();
					local nazwa_ksiazki=parametry_modul.CzyTak(nazwa_ksiazki) and nazwa_ksiazki or nazwy_modul["SUBNAZWAKSIĄŻKI"]();
					
					local pelna_nazwa_ksiazki=((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")
					                                    ..nazwa_przestrzeni_ksiazki
					                                           ..((nazwa_ksiazki~="")and(((nazwa_przestrzeni_ksiazki~="") and "/" or "")..nazwa_ksiazki) or "");
					return ksiazkowe_modul["PełnaNazwaKsiążki"]{[1]=pelna_nazwa_ksiazki,["bez transformacji"]=bez_transformacji,["funkcja"]=funkcja,["moduł"]=modul};
				end;
			end;
		end;
	end;
end;
return p;