Moduł:Wiki/interwiki
Przejdź do nawigacji
Przejdź do wyszukiwania
Zobacz podstrony tego modułu.
|
local s={};
s.kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_1={
["w"]="wiki",
["b"]="wikibooks",
["wikt"]="wiktionary",
["q"]="wikiquote",
["s"]="wikisource",
["voy"]="wikivoyage",
["n"]="wikinews",
["v"]="wikiversity",
};
s.kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_2={
["commons"]="commonswiki",
["wikispecies"]="specieswiki",
["d"]="wikidatawiki",
["mw"]="mediawikiwiki",
["m"]="metawiki",
["wikimania"]="wikimaniawiki",
};
--funkcje
local p={};
p["KodProjektuAngielskichProjektówSiostrzanych"]=function()
local przestrzenie_alternatywne={["wikipedia"]="w",["wikibooks"]="b",["wiktionary"]="wikt",["wikiquote"]="q",["wikisource"]="s",["wikivoyage"]="voy",["wikinews"]="n",["wikiversity"]="v",["commons"]="commons",["wikispecies"]="wikispecies",["wikidata"]="d",["mediawikiwiki"]="mw",["meta"]="m",["wikimania"]="wikimania",};
return przestrzenie_alternatywne;
end;
p["TablicaKodówProjektów"]=function()
local tabprojekt=mw.site.interwikiMap();
for kod,element in pairs(tabprojekt)do
if(mw.language.isKnownLanguageTag(kod))then
tabprojekt[kod]=nil;
else
tabprojekt[kod]=element.url;
end;
end;
return tabprojekt;
end;
p["TablicaAliasówKodówProjektów"]=function()
local tabprojekt=mw.site.interwikiMap();
local tablica_aliasow={}
for kod,element in pairs(tabprojekt)do
if(not mw.language.isKnownLanguageTag(kod))then
if(not tablica_aliasow[element.url])then
tablica_aliasow[element.url]={}
end;
tablica_aliasow[element.url][kod]=true;
end;
end;
return tablica_aliasow;
end;
p["TablicaKodówProjektówWikiDanych"]=function()
local interwikimap=s.interwikimap;
local interwiki_jezykowe=s.kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_1;
local interwiki_angielskie=s.kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_2;
local tab_jezykowe={};
local tab_angielskie={};
for kod, wartosc in pairs(interwiki_jezykowe)do tab_jezykowe[kod]=wartosc; end;
for kod, wartosc in pairs(interwiki_angielskie)do tab_angielskie[kod]=wartosc; end;
local tab_interwiki={jezykowe=tab_jezykowe,angielskie=tab_angielskie,};
local function Interwiki(interwiki_jakie,interwiki_nowe)
for kod, idwiki in pairs(interwiki_jakie)do
for kod_interwikimap,url in pairs(interwikimap)do
if(kod_interwikimap==kod)then
for kod_interwikimap2,url2 in pairs(interwikimap)do
if(kod_interwikimap~=kod_interwikimap2)then
if(url==url2)then
if(tab_interwiki[interwiki_nowe][kod_interwikimap2]==nil)then
tab_interwiki[interwiki_nowe][kod_interwikimap2]=idwiki;
end;
end;
end;
end;
break;
end;
end;
end;
end;
Interwiki(interwiki_jezykowe,"jezykowe");
Interwiki(interwiki_angielskie,"angielskie");
return tab_interwiki;
end;
p["TablicaPozaJęzykowychProjektówSiostrzanych"]=function(frame)
local wiki_kody_projektow_wikidane=s.kody_projektow_wikidane;
local interwikimap=s.interwikimap;
local interwiki2=wiki_kody_projektow_wikidane.jezykowe;
local tabelka={};
for kod,element in pairs(interwikimap)do
if(interwiki2[kod]==nil)then
tabelka[kod]=element;
end;
end;
return tabelka;
end;
p["TablicaProjektówPozaWikidane"]=function()
local interwikimap=s.interwikimap;
local parametry_modul=require("Module:Parametry");
local wiki_interwiki=s.kody_projektow_wikidane;
local kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_1=wiki_interwiki.jezykowe;
local kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_2=wiki_interwiki.angielskie;
local interwikimap_nowy=parametry_modul["TwórzTabelęBezElementówTabel"]{
[1] = interwikimap,
[2] = kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_1,
[3] = kody_projektow_z_indetyfikatorow_globalnej_danej_wiki_2,
}
return interwikimap_nowy;
end;
p["TablicaLokalnychJęzykowychProjektówSiostrzanych"]=function()
local wiki_interwiki=s.kody_projektow_wikidane;
local parametry_modul=require("Module:Parametry");
local tablokalnejezykowesiostrzane={};
for kod,_ in pairs(wiki_interwiki.jezykowe)do
tablokalnejezykowesiostrzane[kod]=true;
end;
return tablokalnejezykowesiostrzane;
end;
p["TablicaLokalnychProjektówSiostrzanych"]=function()
local wiki_interwiki=s.kody_projektow_wikidane;
local tabela1=wiki_interwiki.jezykowe;
local tabela2=wiki_interwiki.angielskie;
local parametry_modul=require("Module:Parametry");
local tabela={};
for name,_ in pairs(tabela1)do
tabela[name]=true;
end;
for name,_ in pairs(tabela2)do
tabela[name]=true;
end;
return tabela;
end;
--koniec funkcje
--interwiki
s.interwikimap=p["TablicaKodówProjektów"]();
s.interwiki_siostrzane_angielskie=p["KodProjektuAngielskichProjektówSiostrzanych"]();
----interprojekty wikidane
s.kody_projektow_wikidane=p["TablicaKodówProjektówWikiDanych"]();
----interprojekty
s.tab_nowiki_data=p["TablicaProjektówPozaWikidane"]();
s.tab_lokalne_jezykowe_siostrzane=p["TablicaLokalnychJęzykowychProjektówSiostrzanych"]();
s.tab_lokalne_siostrzane=p["TablicaLokalnychProjektówSiostrzanych"]();
s.poza_jezykowe_projekty_siostrzane=p["TablicaPozaJęzykowychProjektówSiostrzanych"]();
s.tablica_aliasow_kodow_projektow=p["TablicaAliasówKodówProjektów"]();
return s;