Moduł:Nazwy
Zobacz podstrony tego modułu.
|
local m={};
function ZnajdowanieSkojarzonychPrzestrzeniNazw(przedmiotowa, dyskusja,uchwyt_przestrzeni_nazw)
if(przedmiotowa)then
return uchwyt_przestrzeni_nazw.subject;
elseif(dyskusja)then
return uchwyt_przestrzeni_nazw.talk;
else
return uchwyt_przestrzeni_nazw;
end;
end;
function WyznaczanieKanonicznejNazwy(uchwyt_przestrzeni_nazw,nazwij_projektem,nazwij_dyskusja_projektu)
local parametry_modul=require("Module:Parametry");
if(uchwyt_przestrzeni_nazw)then
if(((uchwyt_przestrzeni_nazw.canonicalName=="Project")and(nazwij_projektem))
or ((uchwyt_przestrzeni_nazw.canonicalName=="Project talk")and(nazwij_dyskusja_projektu)))then
return uchwyt_przestrzeni_nazw.canonicalName;
end;
if(uchwyt_przestrzeni_nazw.canonicalName~=uchwyt_przestrzeni_nazw.name)then return uchwyt_przestrzeni_nazw.canonicalName;end;
local kanoniczne_modul=mw.loadData("Module:Nazwy/kanoniczne");
for nazwa_kanoniczna_przestrzeni_nazw,nazwa_niekanoniczna_przestrzeni_nazw in pairs(kanoniczne_modul.aliasy)do
if(uchwyt_przestrzeni_nazw.name==nazwa_niekanoniczna_przestrzeni_nazw)then
return nazwa_kanoniczna_przestrzeni_nazw;
end;
end;
return uchwyt_przestrzeni_nazw.canonicalName;
else
return nil;
end;
end;
function NazwaPrzestrzeniNazwBazowa(przedmiotowa,dyskusja,kanoniczna,myslnik,nazwij_projektem,nazwij_dyskusja_projektu)
local uchwyt_przestrzeni_glownej=mw.site.namespaces[""];
return DalszeOperacjeTranslacjiNazwyPrzestrzeniNazw(przedmiotowa,dyskusja,kanoniczna,myslnik,uchwyt_przestrzeni_glownej,nazwij_projektem,nazwij_dyskusja_projektu);
end;
function OperacjeKreskaPoziomaDolna(myslnik,nazwa)
local parametry_modul=require("Module:Parametry");
if(myslnik)then
nazwa2,_= mw.ustring.gsub(nazwa,"[%s_]+","_");
else
nazwa2,_= mw.ustring.gsub(nazwa,"[%s_]+"," ");
end;
return mw.getContentLanguage():ucfirst(nazwa2);
end;
function NieznanePrzestrzenieNazw(nazwa,przedmiotowa,dyskusja,myslnik)
local kanoniczne_modul=mw.loadData("Module:Nazwy/kanoniczne");
for nazwa_kanoniczna_przestrzeni_nazw,nazwa_niekanoniczna_nazwy_przestrzeni_nazw in pairs(kanoniczne_modul.aliasy)do
local nazwa_kanoniczna_przestrzeni_nazw2, _ = mw.ustring.gsub(nazwa_kanoniczna_przestrzeni_nazw,"(.)"
,function (s)
return ((mw.ustring.match(s,"^%a$"))
and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);
end
);
nazwa_kanoniczna_przestrzeni_nazw2=mw.ustring.gsub(nazwa_kanoniczna_przestrzeni_nazw2,"%s+","[%s_]");
if(nazwa_kanoniczna_przestrzeni_nazw2)then
if(mw.ustring.match((nazwa)and nazwa or "","^%s*"..nazwa_kanoniczna_przestrzeni_nazw2.."%s*$"))then
local uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_niekanoniczna_nazwy_przestrzeni_nazw];
return uchwyt_przestrzeni_nazw;
end;
end;
end;
return nil;
end;
function DalszeOperacjeTranslacjiNazwyPrzestrzeniNazw(przedmiotowa,dyskusja,kanoniczna,myslnik,uchwyt_przestrzeni_nazw,nazwij_projektem,nazwij_dyskusja_projektu)
local uchwyt_przestrzeni_nazw2=ZnajdowanieSkojarzonychPrzestrzeniNazw(przedmiotowa, dyskusja,uchwyt_przestrzeni_nazw);
if(uchwyt_przestrzeni_nazw2)then
if(kanoniczna)then
local kanoniczna_nazwa=WyznaczanieKanonicznejNazwy(uchwyt_przestrzeni_nazw2,nazwij_projektem,nazwij_dyskusja_projektu);
if(kanoniczna_nazwa)then
return OperacjeKreskaPoziomaDolna(myslnik,kanoniczna_nazwa);
else
return nil;
end;
else
return OperacjeKreskaPoziomaDolna(myslnik,uchwyt_przestrzeni_nazw2.name);
end;
else
return nil;
end;
end;
function TranslacjaNieBazowejPrzestrzeniNazw(nazwa,przedmiotowa,dyskusja,kanoniczna,myslnik,nazwij_projektem,nazwij_dyskusja_projektu,czy_istnieje)
if((nazwa)and(mw.ustring.match(nazwa,"^%s*[%+%-]?%d+%s*$")))then
local uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.ustring.match(nazwa,"^%s*([%+%-]?%d+)%s*$"))];
if(uchwyt_przestrzeni_nazw)then
return DalszeOperacjeTranslacjiNazwyPrzestrzeniNazw(przedmiotowa,dyskusja,kanoniczna,myslnik,uchwyt_przestrzeni_nazw,nazwij_projektem,nazwij_dyskusja_projektu);
else
return nil;
end;
else
local uchwyt_przestrzeni_nazw=mw.site.namespaces[(nazwa)and nazwa or ""];
if(uchwyt_przestrzeni_nazw)then
return DalszeOperacjeTranslacjiNazwyPrzestrzeniNazw(przedmiotowa,dyskusja,kanoniczna,myslnik,uchwyt_przestrzeni_nazw,nazwij_projektem,nazwij_dyskusja_projektu);
else
local uchwyt_przestrzeni_nazw=NieznanePrzestrzenieNazw(nazwa,przedmiotowa,dyskusja,myslnik);
if(uchwyt_przestrzeni_nazw)then
return DalszeOperacjeTranslacjiNazwyPrzestrzeniNazw(przedmiotowa,dyskusja,kanoniczna,myslnik,uchwyt_przestrzeni_nazw,nazwij_projektem,nazwij_dyskusja_projektu);
else
if(czy_istnieje)then
return nil;
else
return OperacjeKreskaPoziomaDolna(myslnik,nazwa);
end;
end;
end;
end;
end;
function TranslacjaNazwyPrzestrzeniNazw(nazwa,przedmiotowa,dyskusja,kanoniczna,myslnik,wyswietlana,nazwij_projektem,nazwij_dyskusja_projektu,czy_istnieje)
local parametry_modul=require("Module:Parametry");
if(wyswietlana)then
if(parametry_modul.CzyTak(nazwa))then
if((mw.ustring.match(nazwa,"^%s*$"))or(mw.ustring.match(nazwa,"^%s*%(%s*[Gg][Łł][Óó][Ww][Nn][Aa]%s*%)%s*$"))or(mw.ustring.match(nazwa,"^%s*%(%s*[Mm][Aa][Ii][Nn]%s*%)%s*$")))then
local nazwa2=NazwaPrzestrzeniNazwBazowa(przedmiotowa,dyskusja,kanoniczna,nazwij_projektem,nazwij_dyskusja_projektu);
if((nazwa2)and(nazwa2==""))then
if(kanoniczna)then
return "(main)";
else
return "(główna)";
end;
else
return nazwa2;
end;
else
local nazwa2=TranslacjaNieBazowejPrzestrzeniNazw(nazwa,przedmiotowa,dyskusja,kanoniczna,myslnik, nazwij_projektem,nazwij_dyskusja_projektu,czy_istnieje);
if((nazwa2)and(nazwa2==""))then
if(kanoniczna)then
return "(main)";
else
return "(główna)";
end;
else
return nazwa2;
end;
end;
else
local nazwa2=NazwaPrzestrzeniNazwBazowa(przedmiotowa,dyskusja,kanoniczna,nazwij_projektem,nazwij_dyskusja_projektu);
if((nazwa2)and(nazwa2==""))then
if(kanoniczna)then
return "(main)";
else
return "(główna)";
end;
else
return nazwa2;
end;
end;
else
if(parametry_modul.CzyTak(nazwa))then
if((mw.ustring.match(nazwa,"^%s*$"))or(mw.ustring.match(nazwa,"^%s*%(%s*[Gg][Łł][Óó][Ww][Nn][Aa]%s*%)%s*$"))or(mw.ustring.match(nazwa,"^%s*%(%s*[Mm][Aa][Ii][Nn]%s*%)%s*$")))then
return NazwaPrzestrzeniNazwBazowa(przedmiotowa,dyskusja,kanoniczna,myslnik,nazwij_projektem,nazwij_dyskusja_projektu);
else
return TranslacjaNieBazowejPrzestrzeniNazw(nazwa,przedmiotowa,dyskusja,kanoniczna,myslnik,nazwij_projektem,nazwij_dyskusja_projektu,czy_istnieje);
end;
else
return NazwaPrzestrzeniNazwBazowa(przedmiotowa,dyskusja,kanoniczna,myslnik,nazwij_projektem,nazwij_dyskusja_projektu);
end;
end;
end;
function m.Np(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local nazwa=args.nazwa or args[1] or "";
local przedmiotowa=parametry_modul["CzyTakCiąg"](args.przedmiotowa);
local dyskusja=parametry_modul["CzyTakCiąg"](args.dyskusja);
local kanoniczna=parametry_modul["CzyTakCiąg"](args.kanoniczna);
local z_myslnikami_dolnymi=parametry_modul["CzyTakCiąg"](args["z myślnikami dolnymi"]);
local wyswietlana=parametry_modul["CzyTakCiąg"](args["wyświetlana"]);
local link=parametry_modul["CzyTakCiąg"](args.link);
local id=parametry_modul["CzyTakCiąg"](args.id);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
local czy_istnieje=parametry_modul["CzyTakCiąg"](args["istnieje"]);
local wynik_bledu_nietekstowy=parametry_modul["CzyTakCiąg"](args["wynik błędu nietekstowy"]);
local uchwyt=parametry_modul["CzyTakCiąg"](args.uchwyt)
----
local html_modul=require("Module:Html");
nazwa=nazwa and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(nazwa) or nil;
----
if((przedmiotowa)and(dyskusja))then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
nazwa=mw.ustring.gsub(nazwa,"^[%s_:]*","");
nazwa=mw.ustring.gsub(nazwa,"[%s_:]*$","");
nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," ");
if(((id)and(not link))or(uchwyt))then
local dd;
if((nazwa)and((nazwa=="")
or(mw.ustring.match(nazwa,"^%s*%(%s*[Gg][Łł][Óó][Ww][Nn][Aa]%s*%)%s*$"))
or(mw.ustring.match(nazwa,"^%s*%(%s*[Mm][Aa][Ii][Nn]%s*%)%s*$"))))then
dd="";
else
dd=nazwa;
end;
local num=mw.ustring.match(dd,"^%s*([%+%-]?%d+)%s*$");
dd=tonumber(num) or dd;
local uchwyt_przestrzeni_nazw=mw.site.namespaces[dd];
if((num)and(not uchwyt_przestrzeni_nazw))then
if(uchwyt)then return;end;
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
if(uchwyt_przestrzeni_nazw)then
local uchwyt_przestrzeni_nazw2=ZnajdowanieSkojarzonychPrzestrzeniNazw(przedmiotowa, dyskusja,uchwyt_przestrzeni_nazw)
if(uchwyt)then return uchwyt_przestrzeni_nazw2;end;
if(uchwyt_przestrzeni_nazw2)then
return uchwyt_przestrzeni_nazw2.id;
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
else
local uchwyt_przestrzeni_nazw=NieznanePrzestrzenieNazw(nazwa,przedmiotowa,dyskusja,z_myslnikami_dolnymi)
uchwyt_przestrzeni_nazw=ZnajdowanieSkojarzonychPrzestrzeniNazw(przedmiotowa, dyskusja, uchwyt_przestrzeni_nazw);
if(uchwyt)then return uchwyt_przestrzeni_nazw;end;
if(uchwyt_przestrzeni_nazw)then
if(uchwyt_przestrzeni_nazw)then
return uchwyt_przestrzeni_nazw.id;
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
if(link)then
local tabela_przestrzeni_nazw=mw.loadData("Module:Nazwy/przestrzenie").tabela_przestrzeni_nazw_wraz_z_ich_opisem_wedle_danych_stron;
local uchwyt=m.Np{["nazwa"]=nazwa,
["dyskusja"]=((dyskusja)and "tak" or ""),
["przedmiotowa"]=((przedmiotowa)and "tak" or ""),
["uchwyt"]="tak",
};
if(uchwyt)then
local kanoniczna_nazwa=WyznaczanieKanonicznejNazwy(uchwyt);
local kanoniczna_nazwa2=(uchwyt.canonicalName=="Project" or uchwyt.canonicalName=="Project talk")and uchwyt.canonicalName or nil;
if(kanoniczna_nazwa=="")then kanoniczna_nazwa="(main)";end;
local uzyskana_przetlumaczona_nazwa_przestrzeni_nazw;
if(kanoniczna)then
if(id)then
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=tostring(uchwyt.id);
else
if(uchwyt.name=="")then
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw="(main)";
else
if(((uchwyt.canonicalName=="Project")and(nazwij_projektem))or((uchwyt.canonicalName=="Project talk")and(nazwij_dyskusja_projektu)))then
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=uchwyt.canonicalName;
else
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=kanoniczna_nazwa;
end;
end
end;
else
if(id)then
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=tostring(uchwyt.id);
else
if(uchwyt.name=="")then
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw="(główna)";
else
uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=uchwyt.name;
end
end;
end;
local strona_dyskusji={"w","Pomoc:Strona dyskusji",};
local nazwa_strony=(dyskusja
or ((not przedmiotowa)
and (not dyskusja)
and ((uchwyt)and(uchwyt.isTalk)))
) and strona_dyskusji
or tabela_przestrzeni_nazw[kanoniczna_nazwa2 or kanoniczna_nazwa];
if(nazwa_strony)then
if(uzyskana_przetlumaczona_nazwa_przestrzeni_nazw)then
local bez_znacznikow=args["bez znaczników"];
local bez_przetwarzania=args["bez przetwarzania"];
return require("Module:Linki")["Link wewnętrzny"]{args={["klucz projektu"]=nazwa_strony[1],["strona"]=nazwa_strony[2],["nazwa"]=uzyskana_przetlumaczona_nazwa_przestrzeni_nazw,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,},};
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
elseif(not id)then
local bez_znacznikow=args["bez znaczników"];
local bez_przetwarzania=args["bez przetwarzania"];
return require("Module:Linki")["Link wewnętrzny"]{args={["strona"]="Wikibooks:Przestrzenie nazw",["nazwa"]=uzyskana_przetlumaczona_nazwa_przestrzeni_nazw,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,},};
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
else
local uzyskana_przetlumaczona_nazwa_przestrzeni_nazw=TranslacjaNazwyPrzestrzeniNazw(nazwa,przedmiotowa,dyskusja,kanoniczna,z_myslnikami_dolnymi,wyswietlana, nazwij_projektem,nazwij_dyskusja_projektu,czy_istnieje);
if(uzyskana_przetlumaczona_nazwa_przestrzeni_nazw)then
return uzyskana_przetlumaczona_nazwa_przestrzeni_nazw
else
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
end;
end;
end;
function m.NpDane(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local wiki_modul=require("Module:Wiki");
local klucz_projektu=args["klucz projektu"];
local kod_jezyka=args["kod języka"];
local kod_projektu=args["kod projektu"];
local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu);
local nazwa=args.nazwa or args[1] or "";
local dyskusja=args.dyskusja;
local przedmiotowa=args.przedmiotowa;
local wyswietlana=parametry_modul["CzyTakCiąg"](args["wyświetlana"]);
local id=parametry_modul["CzyTakCiąg"](args.id);
local czy_istnieje=parametry_modul["CzyTakCiąg"](args["istnieje"]);
local wynik_bledu_nietekstowy=parametry_modul["CzyTakCiąg"](args["wynik błędu nietekstowy"]);
local awaryjnie=parametry_modul["CzyTakCiąg"](args.awaryjnie);
local kanoniczna=parametry_modul["CzyTakCiąg"](args.kanoniczna);
local uchwyt=parametry_modul["CzyTakCiąg"](args.uchwyt);
local po_polsku=parametry_modul["CzyTakCiąg"](args["po polsku"]);
local html_modul=require("Module:Html");
nazwa=nazwa and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(nazwa) or nil;
klucz_projektu=klucz_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(klucz_projektu) or nil;
kod_jezyka=kod_jezyka and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_jezyka) or nil;
kod_projektu=kod_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_projektu) or nil;
----
nazwa=mw.ustring.gsub(nazwa,"^[%s_:]*","");
nazwa=mw.ustring.gsub(nazwa,"[%s_:]*$","");
nazwa=mw.ustring.gsub(nazwa,"[%s_]+"," ");
----
local link=parametry_modul.CzyTak(args.link);
if(link)then
local wartosc_kanoniczna=m.NpDane{nazwa=nazwa,przedmiotowa=przedmiotowa,dyskusja=dyskusja,kanoniczna="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu, ["wyświetlana"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",istnieje="tak",["wynik błędu nietekstowy"]="tak",}
if(not wartosc_kanoniczna)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
local wartosc_oczekiwana=m.NpDane{nazwa=nazwa,przedmiotowa=przedmiotowa,dyskusja=dyskusja,kanoniczna=kanoniczna,id=id,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu, ["po polsku"]=po_polsku,["awaryjnie"]=awaryjnie,["wyświetlana"]="tak",["z myślnikami dolnymi"]=z_myslnikami_dolnymi,["nazwij projektem"]=nazwij_projektem,["nazwij dyskusją projektu"]=nazwij_dyskusja_projektu,istnieje=czy_istnieje,["wynik błędu nietekstowy"]=wynik_bledu_nietekstowy,};
if(not wartosc_oczekiwana)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
end;
wartosc_oczekiwana=tostring(wartosc_oczekiwana);
local tabela_przestrzenii_nazw=mw.loadData("Module:Nazwy/przestrzenie").tabela_przestrzeni_nazw_wraz_z_ich_opisem_wedle_danych_stron;
local pos=not (mw.ustring.match(wartosc_kanoniczna,"^Talk$") or mw.ustring.match(wartosc_kanoniczna," talk$"))
and (tabela_przestrzenii_nazw[wartosc_kanoniczna] or {"w","Pomoc:Przestrzeń nazw"})
or {"w","Pomoc:Strona dyskusji"};
local klucz_projektu2=pos[1];
local strona2=pos[2];
local wiki_modul=require("Module:Wiki");
local nazwy_modul=require("Module:Nazwy")
local strona=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona2,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["klucz projektu bazy"]=klucz_projektu2,};
if(not strona)then
local pos={"w","Pomoc:Przestrzeń nazw"};
local strona2=pos[2];
local klucz_projektu2=pos[1];
strona=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona2,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["klucz projektu bazy"]=klucz_projektu2,};
if(not strona)then
klucz_projektu=pos[1];
kod_jezyka=nil;
kod_projektu=nil;
return require("Module:Linki")["Link wewnętrzny"]{args={["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona2,["nazwa"]=wartosc_oczekiwana,["bez znaczników"]=args["bez znaczników"],["bez przetwarzania"]=args["bez przetwarzania"],},};
end;
end;
return require("Module:Linki")["Link wewnętrzny"]{args={["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["strona"]=strona,["nazwa"]=wartosc_oczekiwana,["bez znaczników"]=args["bez znaczników"],["bez przetwarzania"]=args["bez przetwarzania"],},};
end;
----
local nazwy_przestrzenie_modul=mw.loadData("Module:Nazwy/przestrzenie");
local tabnp=nazwy_przestrzenie_modul.tabnp
local przestrzenie_nazw=nazwy_przestrzenie_modul.charakterystyczne_przestrzenie_nazw;
local pudelko_modul=require("Module:Pudełko");
local kod_jezyka_pl=pudelko_modul["Kod języka tego projektu"]();
--if(not id and not kanoniczna)then
-- if(po_polsku)then kod_jezyka=kod_jezyka_pl;end;
--end;
local tabnp_local=przestrzenie_nazw and przestrzenie_nazw[kod_projektu] or {["wiki"]="Project",};
--local tabnp_jezyk=tabnp_local and tabnp_local[kod_jezyka];
local tabnp2_local_en;
local uzupelnij_en=true;
if(tabnp_local["en"])then
if(not tabnp_local["en"]["Project"])then
tabnp2_local_en=parametry_modul["KopiujTabelęElementów"](tabnp_local["en"]);
tabnp2_local_en["Project"]={tabnp_local["wiki"],tabnp_local["wiki"].." talk",};
uzupelnij_en=false;
end;
if(not tabnp_local["en"]["User"])then
if(not tabnp2_local_en)then
tabnp2_local_en=parametry_modul["KopiujTabelęElementów"](tabnp_local["en"]);
end;
tabnp2_local_en["User"]={"User","User talk",};
uzupelnij_en=false;
end;
end;
local tabnp_jezyk_en=tabnp_local and (uzupelnij_en and tabnp_local["en"] or tabnp2_local_en) or {["Project"]={tabnp_local["wiki"],tabnp_local["wiki"].." talk",},["User"]={"User","User talk",},};
local tabnp_jezyk_zapasowe_pl={--[[["Project"]={"Strona projektu","Dyskusja strony projektu",},]]["User"]={"Użytkownik","Dyskusja użytkownika",},};
local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki");
local jezykowe_projekty=wiki_interwiki_modul.tablica_lokalne_lingwistyczne_siostrzane[kod_projektu]
local poza_jezykowe_projekty=not jezykowe_projekty;
local tabnp_jezyk_pl=tabnp_local and (tabnp_local[kod_jezyka_pl] or tabnp_jezyk_zapasowe_pl);
local tabnp_jezyk=tabnp_local and ((jezykowe_projekty and kod_jezyka~="en") and (tabnp_local[kod_jezyka] or ((not awaryjnie)and tabnp_jezyk_en))) or ((kod_jezyka=="en") and tabnp_jezyk_en or (poza_jezykowe_projekty and tabnp_jezyk_en));
local pozostale_przestrzenie=nazwy_przestrzenie_modul.podstawowe_przestrzenie_nazw;
local pozostale_przestrzenie_jezyk_en=pozostale_przestrzenie and pozostale_przestrzenie["en"];
local pozostale_przestrzenie_jezyk_pl=pozostale_przestrzenie and (pozostale_przestrzenie[kod_jezyka_pl] or pozostale_przestrzenie_jezyk_en);
local pozostale_przestrzenie_jezyk=pozostale_przestrzenie and (jezykowe_projekty and (pozostale_przestrzenie[kod_jezyka] or ((not awaryjnie)and pozostale_przestrzenie_jezyk_en)))
or ((kod_jezyka=="en") and pozostale_przestrzenie_jezyk_en or (poza_jezykowe_projekty and pozostale_przestrzenie_jezyk_en));
if(uchwyt)then
if(parametry_modul.CzyTak(nazwa))then
local nazwa_kanoniczna=m.NpDane{nazwa=nazwa, kanoniczna="tak",przedmiotowa=przedmiotowa,dyskusja=dyskusja,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,awaryjnie=awaryjnie,["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",istnieje="tak",["wynik błędu nietekstowy"]="tak",};
if(not nazwa_kanoniczna)then return;end;
local nazwa_kanoniczna_dyskusja=mw.ustring.match(nazwa_kanoniczna,"%s+[Tt][Aa][Ll][Kk]$") or mw.ustring.match(nazwa_kanoniczna,"^[Tt][Aa][Ll][Kk]$");
if(nazwa_kanoniczna_dyskusja)then
local nazwa_kanoniczna_przedmiotowa,_=mw.ustring.gsub(nazwa_kanoniczna,"%s*[Tt][Aa][Ll][Kk]$","");
local tab_prze=tabnp_jezyk[nazwa_kanoniczna_przedmiotowa] or pozostale_przestrzenie_jezyk[nazwa_kanoniczna_przedmiotowa];
if(not tab_prze)then return nil;end;
return tab_prze[2];
else
local tab_prze=tabnp_jezyk[nazwa_kanoniczna] or pozostale_przestrzenie_jezyk[nazwa_kanoniczna];
if(not tab_prze)then return nil;end;
return tab_prze[1];
end;
else
return parametry_modul["ŁączDwieTabele"](tabnp_jezyk,pozostale_przestrzenie_jezyk);
end;
end;
local num=mw.ustring.match(nazwa,"^%s*(%d+)%s*$");
if(num)then
local nazwa_kan;
if(id)then
nazwa_kan=m.Np{["nazwa"]=num,["id"]="tak",przedmiotowa=przedmiotowa,dyskusja=dyskusja,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nazwa_kan=m.Np{["nazwa"]=num,["kanoniczna"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
if(not nazwa_kan)then
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
else
if(id)then return nazwa_kan;end;
nazwa=nazwa_kan;
end;
else
local main=mw.ustring.match(nazwa,"^%s*(%([Mm][Aa][Ii][Nn]%))%s*$")
if(main)then nazwa="";end;
end;
local nazwa_local=mw.ustring.lower(parametry_modul["Odstępy"]{[1]=nazwa,[2]="tak"});
local function por_prze(nazwa2)
if(type(nazwa2)~="table")then
nazwa2=mw.ustring.lower(nazwa2);
if(nazwa_local==nazwa2)then
return true;
end;
return false;
end;
local pos=nazwa2[1];
if(pos)then
local nazwad=mw.ustring.lower(pos);
if(nazwa_local==nazwad)then return true;end;
end;
local pos=nazwa2["wyświetlana"];
if(pos)then
local nazwad=mw.ustring.lower(pos);
if(nazwa_local==nazwad)then return true;end;
end;
if(nazwa2.aliasy)then
for _,value in ipairs(nazwa2.aliasy)do
local nazwas=mw.ustring.lower(value);
if(nazwa_local==nazwas)then
return true;
end;
end;
end;
return false;
end;
local function wyswietlana_nazwa(name)
if(type(name)~="table")then
if(wyswietlana)then
if(name=="")then
if(not po_polsku)then
return "(main)";
else
return "(główna)";
end;
end;
return name;
end;
return name;
end;
if(wyswietlana)then
local element=name[1];
if(element=="")then
if(not po_polsku)then
local pos_wyswietlana=name["wyświetlana"];
if(pos_wyswietlana)then
return pos_wyswietlana;
else
return "(main)";
end;
else
return "(główna)";
end;
end;
return element;
end;
return name[1];
end;
local function wyswietlana_nazwa_kanoniczna(name,wyswietlana)
if(wyswietlana)then
return (name=="")and "(main)" or name;
end;
return name;
end;
if(id or kanoniczna)then
local pudelko_modul=require("Module:Pudełko");
local projekt=tabnp_local and tabnp_local["wiki"];
if(projekt)then
if por_prze(projekt)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_dyskusja)then
return "Project";
else
return "Project talk";
end;
elseif(nazwij_projektem)then
if(not czy_dyskusja)then
return "Project";
else
return projekt.." talk";
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_dyskusja)then
return projekt;
else
return "Project talk";
end;
else
if(not czy_dyskusja)then
return projekt;
else
return projekt.." talk";
end;
end
else
return m.Np{nazwa="Project",dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
elseif por_prze(projekt.." talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_przedmiotowa)then
return "Project talk";
else
return "Project";
end;
elseif(nazwij_projektem)then
if(not czy_przedmiotowa)then
return projekt.." talk";
else
return "Project";
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_przedmiotowa)then
return "Project talk";
else
return projekt;
end;
else
if(not czy_przedmiotowa)then
return projekt.. " talk";
else
return projekt;
end;
end
else
return m.Np{nazwa="Project talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
end;
end;
if por_prze("Project")then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_dyskusja)then
return "Project";
else
return "Project talk";
end;
elseif(nazwij_projektem)then
if(not czy_dyskusja)then
return projekt;
else
return "Projekt talk";
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_dyskusja)then
return "Project";
else
return projekt.." talk";
end;
else
if(not czy_dyskusja)then
return projekt;
else
return projekt.." talk";
end;
end
else
return m.Np{nazwa="Project",dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
elseif por_prze("Project talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_przedmiotowa)then
return "Project talk";
else
return "Project";
end;
elseif(nazwij_projektem)then
if(not czy_przedmiotowa)then
return projekt.." talk";
else
return "Projekt";
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_przedmiotowa)then
return "Project talk";
else
return projekt;
end;
else
if(not czy_przedmiotowa)then
return projekt.." talk";
else
return projekt;
end;
end
else
return m.Np{nazwa="Project talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
end;
local tabprojekt=tabnp_jezyk and tabnp_jezyk["Project"];
if(tabprojekt)then
if por_prze(tabprojekt[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_dyskusja)then
return "Project";
else
return "Project talk";
end;
elseif(nazwij_projektem)then
if(not czy_dyskusja)then
return "Project";
else
return projekt.." talk"
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_dyskusja)then
return projekt;
else
return "Project talk";
end;
else
if(not czy_dyskusja)then
return projekt;
else
return projekt.." talk";
end;
end
else
return m.Np{nazwa="Project",dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
elseif por_prze(tabprojekt[2])then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
local nazwij_projektem=parametry_modul["CzyTakCiąg"](args["nazwij projektem"]);
local nazwij_dyskusja_projektu=parametry_modul["CzyTakCiąg"](args["nazwij dyskusją projektu"]);
if(not id)then
if((nazwij_projektem)and(nazwij_dyskusja_projektu))then
if(not czy_przedmiotowa)then
return "Project talk";
else
return "Project";
end;
elseif(nazwij_projektem)then
if(not czy_przedmiotowa)then
return projekt.." talk";
else
return "Projekt";
end;
elseif(nazwij_dyskusja_projektu)then
if(not czy_przedmiotowa)then
return "Project talk";
else
return projekt;
end;
else
if(not czy_przedmiotowa)then
return projekt.." talk";
else
return projekt;
end;
end
else
return m.Np{nazwa="Project talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end
end;
end;
if por_prze("User")then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return "User";
else
return "User talk";
end;
else
return m.Np{nazwa="User",dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif por_prze("User talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
return "User talk";
else
return "User";
end;
else
return m.Np{nazwa="User talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
userprze=tabnp_jezyk and tabnp_jezyk["User"];
if(userprze)then
if por_prze(userprze[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return "User";
else
return "User talk";
end;
else
return m.Np{nazwa="User",dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif por_prze(userprze[2])then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
return "User talk";
else
return "User";
end;
else
return m.Np{nazwa="User talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
end;
---
if( pozostale_przestrzenie_jezyk)then
for name,value in pairs(pozostale_przestrzenie_jezyk)do
if por_prze(name)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return wyswietlana_nazwa_kanoniczna(name,wyswietlana);
else
if(value[2])then
return ((name~="")and(name.." talk") or "Talk");
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
else
return m.Np{nazwa=name,dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif ((name~="")and (por_prze(name.." talk"))) or((name=="")and(por_prze("Talk"))) then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
if(value[2])then
return ((name~="")and(name.." talk") or "Talk");
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return wyswietlana_nazwa_kanoniczna(name,wyswietlana);
end;
else
return m.Np{nazwa=((name~="")and(name.." talk") or "Talk"),przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif por_prze(value[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return wyswietlana_nazwa_kanoniczna(name,wyswietlana);
else
if(value[2])then
return ((name~="")and(name.." talk") or "Talk");
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
else
return m.Np{nazwa=name,dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif(value[2] and por_prze(value[2]))then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
if(value[2])then
return ((name~="")and(name.." talk") or "Talk");
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return wyswietlana_nazwa_kanoniczna(name,wyswietlana);
end;
else
return m.Np{nazwa=((name~="")and(name.." talk") or "Talk"),przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
end;
end;
---
if(tabnp_jezyk)then
for name,value in pairs(tabnp_jezyk)do
if((name~="Project")and(name~="User"))then
if por_prze(name)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return wyswietlana_nazwa(name);
else
if(value[2])then
return name.." talk";
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
else
return m.Np{nazwa=name,dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif por_prze(name.." talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
if(value[2])then
return name.." talk";
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return wyswietlana_nazwa(name);
end;
else
return m.Np{nazwa=((name~="")and name.." talk" or "Talk"),przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
elseif por_prze(value[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return wyswietlana_nazwa(name);
else
if(value[2])then
return name.." talk";
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
else
return m.Np{nazwa=name,dyskusja=dyskusja,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),}
end;
elseif(por_prze(value[2]))then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(not czy_przedmiotowa)then
if(value[2])then
return name.." talk";
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return wyswietlana_nazwa(name);
end;
else
return m.Np{nazwa=name.." talk",przedmiotowa=przedmiotowa,id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
end;
end;
end;
kanon=tabnp[nazwa];
local nazwa2;
if(not kanon)then
nazwa2=mw.ustring.match(nazwa, "^(.+%w)[%s_]+talk$");
if(nazwa2)then
kanon=tabnp[nazwa2];
elseif(por_prze("Talk"))then
kanon=tabnp[""];
elseif(por_prze(""))then
kanon=tabnp[""];
end;
else
nazwa2=nazwa;
end;
if(kanon)then
if(not id)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not id)then
if(czy_dyskusja)then
return nazwa2.." talk";
elseif(czy_przedmiotowa)then
return nazwa2;
else
return nazwa;
end;
else
return m.Np{nazwa=nazwa2,dyskusja=dyskusja,przedmiotowa=przedmiotowa, id="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
end;
if awaryjnie then
if((kod_jezyka~=kod_jezyka_pl)and(kod_jezyka~="en"))and(jezykowe_projekty)then
if por_prze("")then
return m.Np{nazwa="",dyskusja=dyskusja,["wyświetlana"]=((wyswietlana)and "tak" or ""),id=(id)and"tak" or "",kanoniczna=(kanoniczna)and "tak" or "",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
local wiki_modul=require("Module:Wiki");
for np,strona in pairs(tabnp)do
local strona2=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["kod języka bazy"]="pl",["kod projektu bazy"]=(np~="Project")and "w" or "b",};
if(strona2)then
local np2=mw.ustring.match(strona2,"^%s*([^:]+)%s*:");
if(((np2)and (por_prze(np2)or por_prze(np)))or((not np2)and np==""))then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not id)then
if(not czy_dyskusja)then
return np;
else
return m.Np{["nazwa"]=np,["dyskusja"]=dyskusja,["kanoniczna"]="tak",["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
else
return m.Np{["nazwa"]=np,["id"]="tak",["dyskusja"]=dyskusja,};
end;
end;
end;
end;
end;
end;
if(awaryjnie)then
return m.Np{["nazwa"]=nazwa,["dyskusja"]=dyskusja,["przedmiotowa"]=przedmiotowa,["id"]=(id)and"tak" or "",["kanoniczna"]=(kanoniczna)and "tak" or "",["nazwij projektem"]=args["nazwij projektem"],["nazwij dyskusją projektu"]=args["nazwij dyskusją projektu"],["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
local pudelko_modul=require("Module:Pudełko");
local kod_jezyka_pl=pudelko_modul["Kod języka tego projektu"]();
local projekt=tabnp_local and tabnp_local["wiki"];
local projekt_jezyk=tabnp_jezyk and tabnp_jezyk["Project"] or {projekt, projekt.." talk"};
local projekt_jezyk_pl=tabnp_jezyk_pl and tabnp_jezyk_pl["Project"];
local function Zwracanie(pos1,pos2,name,numer)
if((po_polsku)and(pos1))then
local pos=name and (pos1[name] or {})[numer] or (not name and pos1[numer]);
if(pos)then
return wyswietlana_nazwa(pos);
end;
end;
local pos=pos2[numer];
return wyswietlana_nazwa(pos);
end;
if(projekt_jezyk)then
if(projekt)then
if por_prze(projekt)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
end;
elseif por_prze(projekt.." talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil, 1);
end;
end;
end;
if por_prze("Project")then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
end;
elseif por_prze("Project talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
end;
end;
if por_prze(projekt_jezyk[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1)
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
end;
elseif por_prze(projekt_jezyk[2])then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
end;
end;
end;
local projekt_jezyk=tabnp_jezyk and tabnp_jezyk["User"];
local projekt_jezyk_pl=tabnp_jezyk_pl and tabnp_jezyk_pl["User"];
if(projekt_jezyk)then
if por_prze("User")then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
end;
elseif por_prze("User talk")then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa)
if(not czy_przedmiotowa)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
end;
end;
if por_prze(projekt_jezyk[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
end;
elseif por_prze(projekt_jezyk[2])then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,2);
else
return Zwracanie(projekt_jezyk_pl,projekt_jezyk,nil,1);
end;
end;
end;
if((tabnp_jezyk and not po_polsku) or (po_polsku and tabnp_jezyk_pl and tabnp_jezyk))then
for name,value in pairs(tabnp_jezyk)do
if((name~="Project")and(name~="User"))then
if por_prze(name)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(tabnp_jezyk_pl,value,name,1);
else
if(value[2])then
return Zwracanie(tabnp_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
elseif por_prze(name.." talk") then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
if(value[2])then
return Zwracanie(tabnp_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return Zwracanie(tabnp_jezyk_pl,value,name,1);
end;
elseif por_prze(value[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(tabnp_jezyk_pl,value,name,1);
else
if(value[2])then
return Zwracanie(tabnp_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
elseif(por_prze(value[2]))then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
if(value[2])then
return Zwracanie(tabnp_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return Zwracanie(tabnp_jezyk_pl,value,name,1);
end;
end;
end;
end;
end;
---
if ((pozostale_przestrzenie_jezyk and not po_polsku) or (po_polsku and pozostale_przestrzenie_jezyk_pl and pozostale_przestrzenie_jezyk))then
for name,value in pairs(pozostale_przestrzenie_jezyk)do
if por_prze(name)then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,1);
else
if(value[2])then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
elseif ((name~="")and (por_prze(name.." talk"))) or ((name=="")and (por_prze("Talk"))) then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
if(value[2])then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,1);
end;
elseif por_prze(value[1])then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,1);
else
if(value[2])then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
elseif(value[2] and por_prze(value[2]))then
local czy_przedmiotowa=parametry_modul["CzyTakCiąg"](przedmiotowa);
if(not czy_przedmiotowa)then
if(value[2])then
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,2);
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
else
return Zwracanie(pozostale_przestrzenie_jezyk_pl,value,name,1);
end;
end;
end;
end;
---
if awaryjnie then
if((kod_jezyka~=kod_jezyka_pl)and(kod_jezyka~="en"))and(jezykowe_projekty)then
if por_prze("")then
return m.Np{nazwa="",dyskusja=dyskusja,["wyświetlana"]=((wyswietlana)and "tak" or ""),kanoniczna=((po_polsku)and "" or "tak"),};
end;
local wiki_modul=require("Module:Wiki");
for np,strona in pairs(tabnp)do
local strona2=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["kod języka bazy"]="pl",["kod projektu bazy"]=(np~="Project")and "w" or "b",};
if(strona2)then
local np2=mw.ustring.match(strona2,"^%s*([^:]+)%s*:");
if(((np2)and (por_prze(np2)or por_prze(np)))or((not np2)and np==""))then
local czy_dyskusja=parametry_modul["CzyTakCiąg"](dyskusja);
if(not czy_dyskusja)then
if(not po_polsku)then
return np2;
else
return m.Np{["nazwa"]=np,["kanoniczna"]=((po_polsku)and "" or "tak"),["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
else
return m.Np{["nazwa"]=np,["dyskusja"]=dyskusja,["kanoniczna"]=((po_polsku)and "" or "tak"),["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
end;
end;
end;
end;
end;
end;
if(awaryjnie)then
return m.Np{["nazwa"]=nazwa,["dyskusja"]=dyskusja,["przedmiotowa"]=przedmiotowa,["kanoniczna"]=((po_polsku)and "" or (((kod_jezyka=="en")or(poza_jezykowe_projekty)) and "tak" or "")),["istnieje"]=((czy_istnieje)and "tak" or ""),["wynik błędu nietekstowy"]=((wynik_bledu_nietekstowy)and "tak" or ""),};
else
if(czy_istnieje)then
if(wynik_bledu_nietekstowy)then return;else return "(błąd)";end;
else
return nazwa;
end;
end;
end;
end;
m["NAZWASERWISU"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local link=PobierzParametr("link");
local za=PobierzParametr("za");
local po=PobierzParametr("po");
local wikipedia=PobierzParametr("wikipedia");
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
-----
local html_modul=require("Module:Html");
nazwa=nazwa and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(nazwa) or nil;
klucz_projektu=klucz_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(klucz_projektu) or nil;
kod_jezyka=kod_jezyka and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_jezyka) or nil;
kod_projektu=kod_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_projektu) or nil;
-----
local w_jezyku_wiki=PobierzParametr("w języku wiki");
local bez_znacznikow=PobierzParametr("bez znaczników");
local bez_przetwarzania=PobierzParametr("bez przetwarzania");
local parametry_modul=require("Module:Parametry");
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 wiki_modul=require("Module:Wiki");
local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu);
local lista_projektow=mw.loadData("Module:Nazwy/przestrzenie").lista_kody_projektu_wraz_z_ich_nazwami_stron;
local wiki_interwiki_modul=mw.loadData("Module:Wiki/interwiki");
local tablica_aliasowe_kody_projektu=wiki_interwiki_modul.tablica_aliasowe_kody_projektu;
local interwikimap=wiki_interwiki_modul.interwikimap;
local url=interwikimap[kod_projektu];
local aliasy=tablica_aliasowe_kody_projektu[url];
local projekt=nil;
for kod,_ in pairs(aliasy)do
projekt=lista_projektow[kod];
if(projekt)then break;end;
end;
if(not projekt)then
local html_modul=require("Module:html");
local adres=html_modul["UrlBezProtokołu"](url);
projekt=mw.ustring.match(adres,"^//([%a%.]+)");
end;
if(not projekt)then
projekt="Wikibooks";
kod_jezyka=kod_jezyka_tego_projektu;
kod_projektu=kod_projektu_tego_projektu;
end;
local wikipedia=parametry_modul.CzyTak(wikipedia);
local link=parametry_modul.CzyTak(link);
local wiki_modul=require("Module:Wiki");
local function Nazwa_projektu()
return wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=projekt,["kod języka"]=kod_jezyka,["kod projektu"]="w",["kod języka bazy"]=kod_jezyka_tego_projektu,["kod projektu bazy"]="w",} or projekt;
end;
local function Nazwa_strony_glownej()
return wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=pudelko_modul["Strona główna tego projektu"](),["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["kod języka bazy"]=kod_jezyka_tego_projektu,["kod projektu bazy"]=kod_projektu_tego_projektu,} or pudelko_modul["Strona główna tego projektu"]();
end;
local nazwa_projektu2=Nazwa_projektu();
local nazwa=((link)and (nazwa or (parametry_modul.CzyTak(w_jezyku_wiki)and nazwa_projektu2 or projekt)) or nazwa_projektu2);
if(link)then
local linki_modul=require("Module:Linki");
if(wikipedia)then
if(kod_jezyka==kod_jezyka_tego_projektu)then
return linki_modul["Link wewnętrzny"]{["strona"]=nazwa_projektu2,["nazwa"]=nazwa,za=za,po=po,["kod projektu"]="w",["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,};
else
return linki_modul["Link wewnętrzny"]{["strona"]=nazwa_projektu2,["nazwa"]=nazwa,za=za,po=po,["kod projektu"]="w",["kod języka"]=kod_jezyka,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,};
end;
else
if(kod_jezyka==kod_jezyka_tego_projektu)then
if(kod_projektu==kod_projektu_tego_projektu)then
return linki_modul["Link wewnętrzny"]{["strona"]=Nazwa_strony_glownej(),["nazwa"]=nazwa,za=za,po=po,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,};
else
return linki_modul["Link wewnętrzny"]{["strona"]=Nazwa_strony_glownej(),["nazwa"]=nazwa,za=za,po=po,["kod projektu"]=kod_projektu,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,}
end;
else
if(kod_projektu==kod_projektu_tego_projektu)then
return linki_modul["Link wewnętrzny"]{["strona"]=Nazwa_strony_glownej(),["nazwa"]=nazwa,za=za,po=po,["kod języka"]=kod_jezyka,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,}
else
return linki_modul["Link wewnętrzny"]{["strona"]=Nazwa_strony_glownej(),["nazwa"]=nazwa,za=za,po=po,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["bez znaczników"]=bez_znacznikow,["bez przetwarzania"]=bez_przetwarzania,}
end;
end;
end;
else
return nazwa;
end;
end;
m["NAZWAPRZESTRZENI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local bez_zmiany_adresu=PobierzParametr("bez zmiany adresu");
local html_modul=require("Module:Html");
nazwa=nazwa and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(nazwa) or nil;
klucz_projektu=klucz_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(klucz_projektu) or nil;
kod_jezyka=kod_jezyka and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_jezyka) or nil;
kod_projektu=kod_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_projektu) or nil;
local pelna_nazwa=nazwa;
local parametry_modul=require("Module:Parametry");
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
if(not pelna_nazwa)then
local title=mw.title.getCurrentTitle();
if(not title)then return "";end;
local f,_= mw.ustring.gsub(title.nsText,"_"," ");
return f;
elseif((pelna_nazwa)and(pelna_nazwa==""))then
return "";
end;
elseif(not pelna_nazwa)then
local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu);
local pudelko_modul=require("Module:Pudełko");
local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"]();
local strona=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona_glowna_tego_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["kod języka bazy"]="pl",["kod projektu bazy"]="b",};
strona=strona or strona_glowna_tego_projektu;
local np=mw.ustring.match(strona,"^%s*([^:]+)%s*:");
if(not np)then return "";end;
return np;
end;
local html_modul=require("Module:Html");
pelna_nazwa=parametry_modul.CzyTak(bez_zmiany_adresu) and pelna_nazwa or html_modul["NazwaStronyAdresu"](pelna_nazwa,true);
while(true)do
local nazwa_przestrzeni=mw.ustring.match(pelna_nazwa,"^[%s_:]*([^:]*[^%s_:])[%s_:]*:.*$");
if(not nazwa_przestrzeni)then
return "";
else
nazwa_przestrzeni=mw.ustring.gsub(nazwa_przestrzeni,"[%s_]+"," ");
end;
local nazwy_modul=require("Module:Nazwy");
local nstext;
if(czy_biezaca_wiki)then
nstext=nazwy_modul.Np{nazwa=nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nstext=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
if(nstext) then
if(nstext~="")then
return nstext;
else
if(nazwa_przestrzeni~="")then
pelna_nazwa,_=mw.ustring.gsub(pelna_nazwa,"^[%s_:]*([^:]*[^%s_:])[%s_:]*:%s*","");
else
return "";
end;
end;
else
return "";
end;
end;
end;
m["PRZEDMIOTOWAPRZESTRZEŃ"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwa_przestrzeni_nazw=require("Module:Nazwy")["NAZWAPRZESTRZENI"](frame);
local nazwy_modul=require("Module:Nazwy");
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
return nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, przedmiotowa="tak"};
else
return nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,przedmiotowa="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
end;
end;
m["PRZESTRZEŃDYSKUSJI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwa_przestrzeni_nazw=require("Module:Nazwy")["NAZWAPRZESTRZENI"](frame);
local nazwy_modul=require("Module:Nazwy");
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
return nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak"};
else
return nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw, dyskusja="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
end;
end;
m["NAZWASTRONY"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local bez_zmiany_adresu=PobierzParametr("bez zmiany adresu");
local html_modul=require("Module:Html");
nazwa=nazwa and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(nazwa) or nil;
klucz_projektu=klucz_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(klucz_projektu) or nil;
kod_jezyka=kod_jezyka and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_jezyka) or nil;
kod_projektu=kod_projektu and html_modul.UsuwanieSpecjalnychNieschematycznychSymboli(kod_projektu) or nil;
local pelna_nazwa=nazwa;
local parametry_modul=require("Module:Parametry");
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
if(not pelna_nazwa)then
local title=mw.title.getCurrentTitle();
if(not title)then return "";end;
local f,_=mw.ustring.gsub(title.text,"_"," ");
return f;
elseif((pelna_nazwa)and(pelna_nazwa==""))then
return "";
end;
elseif(not pelna_nazwa)then
local kod_jezyka,kod_projektu=wiki_modul.KodyWiki(klucz_projektu,kod_jezyka,kod_projektu);
local pudelko_modul=require("Module:Pudełko");
local strona_glowna_tego_projektu=pudelko_modul["Strona główna tego projektu"]();
local strona=wiki_modul.WikidaneOdpowiednikStrony{["nazwa strony"]=strona_glowna_tego_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["kod języka bazy"]="pl",["kod projektu bazy"]="b",};
strona=strona or strona_glowna_tego_projektu;
local nazwa_strony=mw.ustring.match(strona,"^%s*[^:]+%s*:%s*(.*[^%s])%s*$");
if(not nazwa_strony)then return mw.getContentLanguage():ucfirst(strona);end;
nazwa_strony=mw.getContentLanguage():ucfirst(nazwa_strony);
return nazwa_strony;
end;
local html_modul=require("Module:Html");
pelna_nazwa=parametry_modul.CzyTak(bez_zmiany_adresu) and pelna_nazwa or html_modul["NazwaStronyAdresu"](pelna_nazwa,true);
while(true)do
local nazwa_przestrzeni=mw.ustring.match(pelna_nazwa,"^[%s_:]*([^:]*[^%s_:])[%s_:]*:.*$");
if(not nazwa_przestrzeni)then
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"^[%s_:]*","");
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"[%s_]*$","");
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"[%s_]+"," ");
return mw.getContentLanguage():ucfirst(pelna_nazwa);
else
nazwa_przestrzeni=mw.ustring.gsub(nazwa_przestrzeni,"[%s_]+"," ");
end;
local nstext;
local nazwy_modul=require("Module:Nazwy");
if(czy_biezaca_wiki)then
nstext=nazwy_modul.Np{nazwa=nazwa_przestrzeni,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nstext=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
if(nstext)then
if(nstext~="")or((nstext=="")and(nazwa_przestrzeni==""))then
local nazwa_jednostki=mw.ustring.match(pelna_nazwa,"^[%s_:]*[^:]*[^%s_:][%s_:]*:[%s_:]*(.*[^%s_])[%s_]*$");
if(not nazwa_jednostki)then nazwa_jednostki="";end;
nazwa_jednostki=mw.ustring.gsub(nazwa_jednostki,"[%s_]+"," ");
return mw.getContentLanguage():ucfirst(nazwa_jednostki);
else
pelna_nazwa,_=mw.ustring.gsub(pelna_nazwa,"^[%s_:]*([^:]*[^%s_:])[%s_:]*:%s*","");
end;
else
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"^[%s_:]*","");
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"[%s_]*$","");
pelna_nazwa=mw.ustring.gsub(pelna_nazwa,"[%s_]+"," ");
return mw.getContentLanguage():ucfirst(pelna_nazwa);
end;
end;
end;
m["BAZOWANAZWASTRONY"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa2=nazwy_modul["NAZWASTRONY"](frame);
local base=mw.ustring.match(nazwa2,"^(.+)/[^/]+$");
return (base)and base or nazwa2;
end;
m["PEŁNANAZWASTRONY"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"](frame);
local nazwa2=nazwy_modul["NAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["PEŁNABAZOWANAZWASTRONY"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"](frame);
local nazwa2=nazwy_modul["BAZOWANAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["PRZEDMIOTOWABAZOWANAZWASTRONY"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"](frame);
local nazwa2=nazwy_modul["BAZOWANAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["BAZOWANAZWASTRONYDYSKUSJI"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["PRZESTRZEŃDYSKUSJI"](frame);
local nazwa2=nazwy_modul["BAZOWANAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["PRZEDMIOTOWANAZWASTRONY"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"](frame);
local nazwa2=nazwy_modul["NAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["NAZWASTRONYDYSKUSJI"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["PRZESTRZEŃDYSKUSJI"](frame);
local nazwa2=nazwy_modul["NAZWASTRONY"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa2 or nazwa2;
end;
m["CzęśćTytułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tytul=PobierzParametr(1);
local ktora=PobierzParametr(2);
ktora=tonumber(ktora) or 1;
local czesc_tytulu=mw.ustring.match(tytul,"^%s*([^/]*"..mw.ustring.rep("/[^/]*",ktora-1)..")")
return (czesc_tytulu)and czesc_tytulu or tytul;
end;
m["NAZWAKSIĄŻKI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwy_modul=require("Module:Nazwy");
local nazwa_strony=nazwy_modul["NAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przedmiotowa_przestrzeni_nazw,["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przedmiotowa_przestrzeni_nazw,["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local kanoniczna=nazwy_np_modul.kanoniczna;
if((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.MainDisplayName)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Wikijunior))then
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=1,};
elseif(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.User)then
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=2,};
elseif((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Project)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Template)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Module))then
if(mw.ustring.match(nazwa_strony,"^[Bb]rudnopis/[^/]*/.-$"))then
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=3,};
else
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=1,};
end;
else
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=1,};
end;
end;
m["PEŁNANAZWAKSIĄŻKI"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"](frame);
local nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](frame);
return (nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":"..nazwa_ksiazki or nazwa_ksiazki;
end;
m["NAZWAARTYKUŁUKSIĄŻKI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwy_modul=require("Module:Nazwy");
local nazwa_strony=nazwy_modul["NAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(czy_biezaca_wiki)then
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przedmiotowa_przestrzeni_nazw,["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przedmiotowa_przestrzeni_nazw,["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local kanoniczna=nazwy_np_modul.kanoniczna;
local nazw;
if((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.MainDisplayName)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Wikijunior))then
nazw=mw.ustring.match(nazwa_strony,"^[^/]*/(.*)$");
elseif(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.User)then
nazw=mw.ustring.match(nazwa_strony,"^[^/]*/[^/]*/(.*)$");
elseif((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Project)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Template)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Module))then
if(mw.ustring.match(nazwa_strony,"^[Bb]rudnopis/[^/]*/.-$"))then
nazw=mw.ustring.match(nazwa_strony,"^[Bb]rudnopis/[^/]*/[^/]*/(.*)$");
else
nazw=mw.ustring.match(nazwa_strony,"^[^/]*/(.*)$");
end;
else
nazw=mw.ustring.match(nazwa_strony,"^[^/]*/(.*)$");
end;
return nazw or "";
end;
m["NAZWAARTYKUŁUKSIĄŻKI2"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local artykul=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](frame);
if(artykul=="")then
local nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](frame);
local tytul=mw.ustring.match(nazwa_ksiazki,"([^/]*)$");
return tytul or nazwa_ksiazki;
else
return artykul;
end;
end;
m["PEŁNANAZWAARTYKUŁUKSIĄŻKI"]=function(frame)
local nazwy_modul=require("Module:Nazwy");
local artykul=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](frame);
local nazwa_ksiazki=nazwy_modul["SUBNAZWAKSIĄŻKI"](frame);
return ((artykul~="")and(nazwa_ksiazki.."/") or nazwa_ksiazki)..artykul;
end;
m["PEŁNANAZWAPRZESTRZENIKSIĄŻKI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni_nazw=nazwy_modul["NAZWAPRZESTRZENI"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local wiki_modul=require("Module:Wiki");
local czy_biezaca_wiki=wiki_modul["CzyBieżącaWiki"]{["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local nazwa_przedmiotowa_przestrzeni_nazw;
if(czy_biezaca_wiki)then
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.Np{nazwa=nazwa_przestrzeni_nazw,["przedmiotowa"]="tak",["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
else
nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul.NpDane{nazwa=nazwa_przestrzeni_nazw,["przedmiotowa"]="tak",["wyświetlana"]="tak",["kanoniczna"]="tak",["nazwij projektem"]="tak",["nazwij dyskusją projektu"]="tak",["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,["istnieje"]="tak",["wynik błędu nietekstowy"]="tak",};
end;
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
local kanoniczna=nazwy_np_modul.kanoniczna;
if((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.MainDisplayName)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Wikijunior))then
return nazwa_przestrzeni_nazw;
elseif(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.User)then
local pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(mw.ustring.match(pelna_nazwa_strony,"^[^/]*/.*"))then
return nazwy_modul["CzęśćTytułu"]{[1]=pelna_nazwa_strony,[2]=1,};
else
return nazwa_przestrzeni_nazw;
end;
elseif((nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Project)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Template)or(nazwa_przedmiotowa_przestrzeni_nazw==kanoniczna.Module))then
local pelna_nazwa_strony=nazwy_modul["PEŁNANAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(mw.ustring.match(pelna_nazwa_strony,"^"..((nazwa_przestrzeni_nazw~="")and nazwa_przestrzeni_nazw..":" or "").."[Bb]rudnopis/[^/]+/.-$"))then
return nazwy_modul["CzęśćTytułu"]{[1]=pelna_nazwa_strony,[2]=2,};
else
return nazwa_przestrzeni_nazw;
end;
else
return nazwa_przestrzeni_nazw;
end;
end;
m["NAZWAPRZESTRZENIKSIĄŻKI"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa") or PobierzParametr(1);
local klucz_projektu=PobierzParametr("klucz projektu");
local kod_jezyka=PobierzParametr("kod języka");
local kod_projektu=PobierzParametr("kod projektu");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przedmiotowa_przestrzeni_nazw=nazwy_modul["PRZEDMIOTOWAPRZESTRZEŃ"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
if((nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.Main)or(nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.Wikijunior))then
return "";
elseif(nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.User)then
local nazwa_strony=nazwy_modul["NAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(mw.ustring.match(nazwa_strony,"^[^/]*/.*"))then
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=1,};
else
return "";
end;
elseif((nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.Wikibooks)or(nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.Template)or(nazwa_przedmiotowa_przestrzeni_nazw==nazwy_np_modul.Module))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"]{nazwa=nazwa,["klucz projektu"]=klucz_projektu,["kod języka"]=kod_jezyka,["kod projektu"]=kod_projektu,};
if(mw.ustring.match(nazwa_strony,"^[Bb]rudnopis/[^/]+/.-$"))then
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=2,};
else
return "";
end;
else
return "";
end;
end;
m["NAZWASUBSTRONY"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony2=nazwy_modul["NAZWASTRONY"](frame);
return mw.ustring.match(pelna_nazwa_strony2,"[^/]*$");
end;
m["SUBNAZWAKSIĄŻKI"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
return nazwy_modul["NAZWASUBSTRONY"]{nazwa=nazwy_modul["NAZWAKSIĄŻKI"](frame)};
end;
m["NAZWAKORZENIASTRONY"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local nazwa_strony=nazwy_modul["NAZWASTRONY"](frame);
return nazwy_modul["CzęśćTytułu"]{[1]=nazwa_strony,[2]=1,};
end;
m["PEŁNANAZWAKORZENIASTRONY"] = function(frame)
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony_2=nazwy_modul["PEŁNANAZWASTRONY"](frame);
return nazwy_modul["CzęśćTytułu"]{[1]=pelna_nazwa_strony_2,[2]=1,};
end;
m["NazwaModułu"]=function(...)
local args={ ... };
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa_przestrzeni=PobierzParametr(1);
local nazwa_przestrzeni_ksiazki=PobierzParametr(2);
local nazwa_ksiazki=PobierzParametr(3);
local nazwa_artykulu=PobierzParametr(4);
return (((nazwa_przestrzeni~="")and(nazwa_przestrzeni..":") or "")..((nazwa_przestrzeni_ksiazki~="")and(nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="")and("/"..nazwa_artykulu) or ""));
end;
return m