Wikibooks plwikibooks https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna MediaWiki 1.47.0-wmf.10 first-letter Media Specjalna Dyskusja Wikipedysta Dyskusja wikipedysty Wikibooks Dyskusja Wikibooks Plik Dyskusja pliku MediaWiki Dyskusja MediaWiki Szablon Dyskusja szablonu Pomoc Dyskusja pomocy Kategoria Dyskusja kategorii Wikijunior Dyskusja Wikijuniora TimedText TimedText talk Moduł Dyskusja modułu Wydarzenie Dyskusja wydarzenia Moduł:StronicowyParser/ZbieranieDanychStron 828 55009 547507 547404 2026-07-11T10:42:00Z Persino 2851 547507 Scribunto text/plain local p={}; function p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,lista_dwuelementowa,kod) if(lista_dwuelementowa)then local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu]; if(not tab_obiekt)then tabela_elementow_strony_kodow[nazwa_obiektu]={}; tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu]; end; local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji; if(not uchwyty_bez_numeracji)then tab_obiekt.uchwyty_bez_numeracji={}; uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji; end; uchwyty_bez_numeracji[kod]=lista_dwuelementowa; end; end; function p.WydobywanieUchwytuZeiBezNumeracji(self,tabela_elementow_strony_kodow,nazwa_obiektu,kod) local tab_obiekt=tabela_elementow_strony_kodow[nazwa_obiektu]; if(not tab_obiekt)then return nil;end; local uchwyty_bez_numeracji=tab_obiekt.uchwyty_bez_numeracji; if(uchwyty_bez_numeracji)then return uchwyty_bez_numeracji[kod]; end; end; function p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie) local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne"); kod_uchwytu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(kod_uchwytu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or kod_uchwytu; local html_modul=require("Module:Html"); kod_uchwytu=html_modul.DecodeHtml(kod_uchwytu,true); if(kod_uchwytu~="")then KtorySzablonMaZwracacKategorie(kod_uchwytu); local lista_dwuelementowa={}; lista_dwuelementowa[1]=kod_uchwytu; local parametry_modul=require("Module:Parametry"); if((not tablica_zmiennych.sprawdzenie_dokonane_obiektu)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu])))then local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu); end; tablica_zmiennych.sprawdzenie_dokonane_obiektu=true; end; if(tab_numer)then tab_numer[nazwa_obiektu]=tab_numer[nazwa_obiektu]+1; local numer=tab_numer[nazwa_obiektu]; table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],numer,lista_dwuelementowa); else table.insert(tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu],lista_dwuelementowa); end; return lista_dwuelementowa; end; end; function p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,nazwa_obiektu, czy_artykul_korzystany,numer_numeracji,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie) local kod_uchwytu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[numer_numeracji]; if(kod_uchwytu)then local lista_dwuelementowa=p.RozpatrywanieElementuUchwytuNumeracji(self,kod_uchwytu,tab_numer,tablica_zmiennych, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, nazwa_obiektu, czy_artykul_korzystany,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); return lista_dwuelementowa; end; end; function p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu) if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then if(nazwa_artykulu=="")then return;end; local czy_element_wystepuje_w_tablicy=false; local tablica_przestrzeni_wszystkiego=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron; if(tablica_przestrzeni_wszystkiego)then local tabela_przestrzeni_ksiazek=tablica_przestrzeni_wszystkiego[nazwa_przestrzeni]; if(tabela_przestrzeni_ksiazek)then local tabela_ksiazek=tabela_przestrzeni_ksiazek[nazwa_przestrzeni_ksiazki] if(tabela_ksiazek)then local tab_ksiazki=tabela_ksiazek[nazwa_ksiazki]; if(tab_ksiazki)then if(tab_ksiazki.spis)then --czy_lista_niepusta=true; for _,tab_value1 in ipairs(tab_ksiazki.spis)do if(tab_value1[2])then for _,nazwa_artykulu1 in ipairs(tab_value1[2])do if(nazwa_artykulu1[1]==nazwa_artykulu)then czy_element_wystepuje_w_tablicy=true; break; end; end; end; if(czy_element_wystepuje_w_tablicy)then break;end; end; end; end; end; end; end; if(not czy_element_wystepuje_w_tablicy)then local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni~=nazwa_przestrzeni) or(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu~=nazwa_przestrzeni_ksiazki) or(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu~=nazwa_ksiazki) or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=nazwa_artykulu))then if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych stron",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki); end; elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisu treści do korzystanych stron"))then if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisu treści do korzystanych stron"); end; end; end; end; end; function p.PusteParametryReferencji(self, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu) local czy_ksiazka_z_tylko_odstepami_lub_pusty=(nazwa_ksiazki)and (nazwa_ksiazki=="") or nil; local czy_artykul_z_tylko_odstepami_lub_pusty=(nazwa_artykulu)and (nazwa_artykulu=="") or nil; local czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty=(uchwyt_obiektu)and (uchwyt_obiektu=="") or nil; ---- local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); ---- if(czy_uchwyt_obiektu_z_tylko_odstepami_lub_pusty)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,1); end; end; if(czy_artykul_z_tylko_odstepami_lub_pusty)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,2); end; end; if(czy_ksiazka_z_tylko_odstepami_lub_pusty)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",nazwa_obiektu,3); end; end; end; function p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca,bezuchwytowe) local nazwa_artykulu=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[bezuchwytowe and 1 or 2]; local pelna_nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[bezuchwytowe and 2 or 3]; local parametry_modul=require("Module:Parametry"); local nazwy_modul=require("Module:Nazwy"); local html_modul=require("Module:Html"); if(nazwa_artykulu)then nazwa_artykulu=html_modul.DecodeHtml(nazwa_artykulu,true); local techniczne_modul=require("Module:Techniczne"); nazwa_artykulu=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=nazwa_artykulu,[2]="",}; end; local nazwa_ksiazki;local nazwa_przestrzeni_ksiazki;local nazwa_przestrzeni; if(pelna_nazwa_ksiazki)then pelna_nazwa_ksiazki=html_modul.DecodeHtml(pelna_nazwa_ksiazki,true); local techniczne_modul=require("Module:Techniczne"); pelna_nazwa_ksiazki=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=pelna_nazwa_ksiazki,[2]=nazwa_modulu_aktualna_czy_biezaca,}; ---- local tabela_nazw={}; local ksiazkowe_modul=require("Module:Książkowe"); pelna_nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](pelna_nazwa_ksiazki,tabela_nazw); nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](pelna_nazwa_ksiazki,tabela_nazw); nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw); nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](pelna_nazwa_ksiazki,tabela_nazw))); --pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,""); end; return nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu; end; function p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie,czy_inna_wartosc_tekst,tab_nazwy) local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu; if(not czy_inna_wartosc_tekst)then nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca,true); else nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=tab_nazwy[1],tab_nazwy[2],tab_nazwy[3],tab_nazwy[4]; end; --local ksiazkowe_modul=require("Module:Książkowe"); --pelna_nazwa_ksiazki=pelna_nazwa_ksiazki or ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](); --nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"](); if((nazwa_przestrzeni)or(nazwa_przestrzeni_ksiazki)or(nazwa_ksiazki)or(nazwa_artykulu))then local tabela_nazw={}; local ksiazkowe_modul=require("Module:Książkowe"); local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw); local nazwa_przestrzeni_ksiazki=nazwa_przestrzeni_ksiazki or ksiazkowe_modul["NazwaPrzestrzeniKsiążki"](nil,tabela_nazw); local nazwa_ksiazki=nazwa_ksiazki or ksiazkowe_modul["NazwaTytułuKsiążki"](nil,tabela_nazw); local nazwa_artykulu=nazwa_artykulu or ksiazkowe_modul["NazwaArtykułuKsiążki"](nil,tabela_nazw); if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end; local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false); end; end; function p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,czy_szablon_pudelkowy_strony_zbiorczej,KtorySzablonMaZwracacKategorie) local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"]; local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"]; if((not nazwa_przestrzeni)and(not nazwa_jednostki))then return;end; local parametry_modul=require("Module:Parametry"); if((nazwa_jednostki) and (nazwa_jednostki==""))then return;end; local szablonowe_modul=require("Module:Szablonowe"); if((nazwa_jednostki and mw.ustring.match(nazwa_jednostki,szablonowe_modul.NormaWzoruKodowaniaTekstu())) or (nazwa_przestrzeni and mw.ustring.match(nazwa_przestrzeni,szablonowe_modul.NormaWzoruKodowaniaTekstu())) )then return;end; local nazwy_modul=require("Module:Nazwy"); local ksiazkowe_modul=require("Module:Książkowe"); local html_modul=require("Module:Html"); if(nazwa_jednostki)then nazwa_jednostki=html_modul.DecodeHtml(nazwa_jednostki,true); end; local tabela_nazw_art={}; local nazwa_jednostki=(nazwa_jednostki and mw.ustring.gsub(nazwa_jednostki,"^([^#]*)#(.*)$","%1") or nil ) or ksiazkowe_modul["NazwaArtykułu"](nil,tabela_nazw_art); if(nazwa_przestrzeni)then nazwa_przestrzeni=html_modul.DecodeHtml(nazwa_przestrzeni,true); end; local nazwa_przestrzeni=nazwa_przestrzeni or ksiazkowe_modul["NazwaPrzestrzeni"](nil,tabela_nazw_art); local strona=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki; local techniczne_modul=require("Module:Techniczne"); strona=techniczne_modul["PrzeszkałćAdresWzględnyStronyNaBezwzględny"]{[1]=strona,[2]=self.nazwa_modulu_biezaca,}; --strona=ksiazkowe_modul["PEŁNANAZWASTRONY"](strona); local tabela_nazw={}; local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw); local nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw); local nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and (nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw)) or (nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw))); local nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazw); if(KtorySzablonMaZwracacKategorie)then KtorySzablonMaZwracacKategorie();end; local tabela_listy_danych_analizy_ksiazki=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,nil,czy_szablon_pudelkowy_strony_zbiorczej); end; function p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca) local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca); local nazwy_modul=require("Module:Nazwy"); local czy_inna_wartosc_tekst=true; if((nazwa_artykulu)and(nazwa_ksiazki))then --local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni; tabela_parametrow_szablonu["nazwa jednostki"]=nazwy_modul["NazwaModułu"]("",nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst,{nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,}); elseif((nazwa_artykulu)and(not nazwa_ksiazki))then local ksiazkowe_modul=require("Module:Książkowe"); local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"](); local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or (ksiazkowe_modul["NazwaKsiążki"]()..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "")); ---- tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni; tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki; p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst,{nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,}); elseif((not nazwa_artykulu)and(nazwa_ksiazki))then local ksiazkowe_modul=require("Module:Książkowe"); local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,""); local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ksiazkowe_modul["NazwaPrzestrzeni"](); local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or ksiazkowe_modul["NazwaKsiążki"](); ---- tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=nazwa_przestrzeni; tabela_parametrow_szablonu["nazwa jednostki"]=nazwa_jednostki; p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst,{nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,}); else p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,nil,czy_inna_wartosc_tekst,{nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,}); end; end; function p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,__FUNKCJA_SPRAWDZANIE) local pudelko_modul=require("Module:Pudełko"); if(((nazwa_przestrzeni)and(((nazwa_przestrzeni~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni)))or(nazwa_przestrzeni==""))) and((nazwa_przestrzeni_ksiazki)and(((nazwa_przestrzeni_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_przestrzeni_ksiazki)))or(nazwa_przestrzeni_ksiazki==""))) and((nazwa_ksiazki)and(nazwa_ksiazki~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_ksiazki))) and((nazwa_artykulu)and(((nazwa_artykulu~="")and(not pudelko_modul["CzyNiepoprawnaNazwa"](nazwa_artykulu)))or(nazwa_artykulu==""))) )then if(__FUNKCJA_SPRAWDZANIE)then __FUNKCJA_SPRAWDZANIE(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu); end; else local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni) and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki) and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki) and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron"))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy korzystanych stron"); end; else if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nieprawidłowe nazwy stron dołączanych do stron"))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nieprawidłowe nazwy stron dołączanych do stron"); end; end; end; end; function p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz) local linkobiekttab=tablica_zmiennych.linkobiekt[nazwa_obiektu]; local parametry_modul=require("Module:Parametry"); if((not tablica_zmiennych.sprawdzenie_dokonane_linku)and(not parametry_modul["CzySąElementyNumerowaneTablicy"](linkobiekttab)))then local parametry_modul=require("Module:Parametry"); local nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; local nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu; local nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu; local nazwa_artykulu=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu; local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki)))then p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); end; tablica_zmiennych.sprawdzenie_dokonane_linku=true; end; table.insert(linkobiekttab,uchwyt_obiektu); if(czy_pobierz)then if(not tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane)then tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane={}; end; table.insert(tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane,{{nazwa_obiektu,uchwyt_obiektu,},{obiekt,kod,},}); end; end; function p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz) p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,function() local parametry_modul=require("Module:Parametry"); if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(parametry_modul.CzyTak(nazwa_ksiazki))and(nazwa_artykulu))then local tablica_zmiennych2={}; tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2={} local tabela_listy_danych_analizy_ksiazki0,tablica_zmiennych2,czy_inna=p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, false,tablica_zmiennych2); if(tabela_listy_danych_analizy_ksiazki0)then if((not czy_inna)or(not tablica_zmiennych2))then return;end; local stronicowyparser_szablony_tekstu_modul=require("Module:StronicowyParser/SzablonyTekstu"); local JuzPoliczone=function() if(czy_pobierz)then stronicowyparser_szablony_tekstu_modul.UstawianiePobierz(tablica_zmiennych,tablica_zmiennych2,obiekt,kod,nazwa_obiektu,uchwyt_obiektu,false); end; if(not tablica_zmiennych2.dane_juz_policzone)then tablica_zmiennych2.dane_juz_policzone={};end; local tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]; if(not tab_nazwa_obiektu)then tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]={}; tab_nazwa_obiektu=tablica_zmiennych2.dane_juz_policzone[nazwa_obiektu]; end; local tab_uchwyt=tab_nazwa_obiektu[uchwyt_obiektu]; if(tab_uchwyt)then return true; end; tab_nazwa_obiektu[uchwyt_obiektu]=true; return false; end; if(not parametry_modul.CzyTak(tabela_listy_danych_analizy_ksiazki0))then local czy_policzone=JuzPoliczone(); if(czy_policzone)then return; end; else JuzPoliczone(); end; stronicowyparser_szablony_tekstu_modul.DodawanieDoBazySzablonuTekstuStronyKorzystanejElementyInnejStrony(tablica_zmiennych,tablica_zmiennych2); p.SprawdzanieCzyJestTakiElementSpisuRzeczyWoluminowychPozycji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu); local czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2=tablica_zmiennych2.tabela_listy_danych_analizy_ksiazki2[nazwa_obiektu]; local CzyLink=czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2.CzyLink; local ile_razy=0; if(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2)then for _, parametry_obiektu in ipairs(czy_jest_nazwa_obiektu_w_tabela_listy_danych_analizy_ksiazki2) do if(parametry_obiektu[1]==uchwyt_obiektu)then ile_razy=ile_razy+1; if(ile_razy>1)then break;end; end; end; end if(ile_razy~=1)then local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..nazwa_obiektu); end; p.PusteParametryReferencji(self,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); end; else local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera"))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"błąd wewnętrzny modułu lua stronicowego parsera"); end; end; else p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); end; end); end; function p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,nazwa_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,czy_pobierz) local uchwyt_obiektu=tabela_parametrow_szablonu["uchwyt"] or tabela_parametrow_szablonu[1]; local nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu=p.SzablonyReferencjiParametrowych(tabela_parametrow_szablonu,self.nazwa_modulu_biezaca); ---- local parametry_modul=require("Module:Parametry"); if(parametry_modul.CzyTak(uchwyt_obiektu))then local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne"); uchwyt_obiektu=stronicowyparser_potrzebne_modul.DekodowanieNazwySzablonu(uchwyt_obiektu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,true) or uchwyt_obiektu; local html_modul=require("Module:Html"); uchwyt_obiektu=html_modul.DecodeHtml(uchwyt_obiektu,true); end; ---- local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); ---- if(parametry_modul.CzyTak(uchwyt_obiektu))then nazwa_artykulu=(nazwa_artykulu or (nazwa_ksiazki and "" or nil)); if(nazwa_artykulu)then if(nazwa_artykulu~="")then if(not nazwa_ksiazki)then nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu; nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu; elseif(nazwa_ksiazki=="")then p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); return; end; elseif((nazwa_ksiazki)and(nazwa_ksiazki~=""))then nazwa_artykulu=""; elseif((nazwa_ksiazki)and(nazwa_ksiazki==""))then p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); return; else nazwa_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; nazwa_przestrzeni_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu; nazwa_ksiazki=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu; end; if((nazwa_przestrzeni~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni) or(nazwa_przestrzeni_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu) or(nazwa_ksiazki~=self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu) or(nazwa_artykulu~=self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then p.LinkowanieInnychStron(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,czy_pobierz); else p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz); p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); end; else p.LinkowanieFinalizowaniePrac(self,obiekt,kod,tablica_zmiennych,nazwa_obiektu,uchwyt_obiektu,tablica_analizy_obiektow_strony_dany_modul,czy_pobierz) p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); end; elseif((uchwyt_obiektu)and(uchwyt_obiektu==""))then p.SprawdzanieCzyJestNiepoprawnaNazwaStrony(self, nazwa_obiektu, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu,nil); p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); elseif(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu))then p.PusteParametryReferencji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, uchwyt_obiektu, nazwa_obiektu); stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak uchwytu",nazwa_obiektu); end; KtorySzablonMaZwracacKategorie(uchwyt_obiektu); end; function p.ZbieranieInformacjiStronyEwentualnieWrazSkojarzonymi(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu, czy_artykul_korzystany,tablica_zmiennych,czy_szablon_pudelkowy_strony_zbiorczej) local function __FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu) if(not self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni])then self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]={};end; local tablica_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]; if(not tablica_przestrzeni[nazwa_przestrzeni_ksiazki])then tablica_przestrzeni[nazwa_przestrzeni_ksiazki]={};end; local tablica_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki]; if(not tablica_przestrzeni_ksiazki[nazwa_ksiazki])then tablica_przestrzeni_ksiazki[nazwa_ksiazki]={};end; local tablica_ksiazki=tablica_przestrzeni_ksiazki[nazwa_ksiazki]; if(not tablica_ksiazki.lista_podstron_woluminu)then tablica_ksiazki.lista_podstron_woluminu={};end; if(nazwa_artykulu)then if(not tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu])then tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu]={};end; local artykul_analizowany=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu]; return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany; else return tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki; end; end; local function __FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu) if(not czy_artykul_korzystany)then if(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni and self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu and self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu)then if((self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu==nazwa_przestrzeni_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu==nazwa_ksiazki)and(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu==nazwa_artykulu))then return 0,nil,nil,nil,nil,nil,self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron,false; else if(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci)then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=true; end; end; else return nil; end; end; if(self.tabela_listy_danych_analizy_ksiazki)then if(self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron)then local tabela_przestrzeni=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]; if(tabela_przestrzeni)then local tabela_przestrzeni_ksiazki=tabela_przestrzeni[nazwa_przestrzeni_ksiazki]; if(tabela_przestrzeni_ksiazki)then local tabela_ksiazka=tabela_przestrzeni_ksiazki[nazwa_ksiazki]; if(tabela_ksiazka)then local lista_artykolow=tabela_ksiazka.lista_podstron_woluminu; if(lista_artykolow)then local tabela_artykul=lista_artykolow[nazwa_artykulu]; if(tabela_artykul)then local dane_zebrane_ze_stron=tabela_artykul.dane_zebrane_ze_stron; return 0,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,true; end; end; end; end; end; else return nil; end; else return nil; end; return true; end; local nazwy_modul=require("Module:Nazwy"); local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni,dane_zebrane_ze_stron,czy_inna=__FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); local function StronaSubstFunkcja(tabela_artykul,spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu) if((czy_szablon_pudelkowy_strony_zbiorczej)and(not czy_artykul_korzystany)and(tabela_artykul)and(not tabela_artykul.strona_zbiorcza))then --local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst"); local TakFun=function(frame) return "tak";end;local NieFun=function(frame) return "";end; tabela_artykul.strona_zbiorcza=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); end; end; if(not wartosc_wyniku)then return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna; elseif((wartosc_wyniku==0)and(tabela_artykul))then StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); return wartosc_wyniku,dane_zebrane_ze_stron,czy_inna; end; ---- local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); if((nazwa_przestrzeni~=nazwy_np_modul.Main) and(nazwa_przestrzeni~=nazwy_np_modul.Wikijunior) and((nazwa_przestrzeni~=nazwy_np_modul.User)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^([^/]+)$"))) and((nazwa_przestrzeni~=nazwy_np_modul.Wikibooks)or(not mw.ustring.match(nazwa_przestrzeni_ksiazki,"^%s*[Bb]rudnopis/([^/]+)$"))) )then stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki); end; ---- local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); local parametry_modul=require("Module:Parametry"); local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne"); ---- local tekst_rozwiniety_calego_artykulu_ref=nil; local tablica_analizy_obiektow_strony_dany_modul_ref=nil; local tablica_danych_parametrow_szablonu_strony_ref=nil; ---- local function InneInformacjePrzebneDoAnalizowanejKsiazki() if(not (stronicowyparser_problemy_modul.CzyJestTakiElementTabeliProblemu(self,"strony poza zakresem obsługiwanym",nil,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)))then if((nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki)and(nazwa_ksiazki))then if(czy_artykul_korzystany)then if(not self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"])then self.tabela_listy_danych_analizy_ksiazki["CzyArtykułKsiążki"]="tak";end; end; local czy_ksiazka_istnieje_w_tablicy=((tablica_ksiazki)and(tablica_ksiazki.czy_spis_analizowano))and true or false; if(not czy_ksiazka_istnieje_w_tablicy)then tablica_ksiazki.czy_spis_analizowano=true; local stronicowyparser_spistresci_modul=require("Module:StronicowyParser/SpisTreści"); local nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp; local tabela_artykulow,tabela_licencji_spisu_tresci,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,adres_ksiazki_glownego_spisu_tresci=stronicowyparser_spistresci_modul.ZbieranieInformacjiSpisuRzeczyWoluminuEwentualnieWedleAutonawigacji(self,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,czy_artykul_korzystany,function(nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona) local tablica_przestrzeni_strona=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni_strona]; if(tablica_przestrzeni_strona)then local tablica_przestrzeni_ksiazki_strona=tablica_przestrzeni_strona[nazwa_przestrzeni_ksiazki_strona]; if(tablica_przestrzeni_ksiazki_strona)then local tablica_ksiazki_strona=tablica_przestrzeni_ksiazki_strona[nazwa_ksiazki_strona]; if(tablica_ksiazki_strona)then if(tablica_ksiazki_strona.spis)then nazwa_przestrzeni_strona_temp,nazwa_przestrzeni_ksiazki_strona_temp,nazwa_ksiazki_strona_temp=nazwa_przestrzeni_strona,nazwa_przestrzeni_ksiazki_strona,nazwa_ksiazki_strona; tablica_ksiazki.spis=tablica_ksiazki_strona.spis; tablica_ksiazki.licencja=tablica_ksiazki_strona.licencja; tablica_ksiazki.nazwa_bazowego_spisu=tablica_ksiazki_strona.nazwa_bazowego_spisu; tablica_ksiazki.tab_inne_spisy=tablica_ksiazki_strona.tab_inne_spisy; tablica_ksiazki.dodatkowe_strony_woluminu=tablica_ksiazki_strona.dodatkowe_strony_woluminu; tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=tablica_ksiazki_strona.adres_woluminu_bazowego_spisu_rzeczy; tablica_ksiazki.referencja_do_nowej_formy_spisu={tablica_przestrzeni_strona,tablica_przestrzeni_ksiazki_strona,tablica_ksiazki_strona,}; return 1; end; end; end end; end,function(tekst_rozwiniety_calego_artykulu_ref_spis,nazwa_przestrzeni_ref_spis,nazwa_przestrzeni_ksiazki_ref_spis,nazwa_ksiazki_ref_spis,nazwa_artykulu_ref_spis,tablica_analizy_obiektow_strony_dany_modul_ref_spis,tablica_danych_parametrow_szablonu_strony_ref_spis) ---- if((nazwa_przestrzeni==nazwa_przestrzeni_ref_spis)and(nazwa_przestrzeni_ksiazki==nazwa_przestrzeni_ksiazki_ref_spis)and(nazwa_ksiazki==nazwa_ksiazki_ref_spis)and(nazwa_artykulu==nazwa_artykulu_ref_spis))then tekst_rozwiniety_calego_artykulu_ref=tekst_rozwiniety_calego_artykulu_ref_spis; local parametry_modul=require("Module:Parametry"); tablica_analizy_obiektow_strony_dany_modul_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_analizy_obiektow_strony_dany_modul_ref_spis); tablica_danych_parametrow_szablonu_strony_ref=parametry_modul["KopiujRekurencyjnieTabelęElementów"](tablica_danych_parametrow_szablonu_strony_ref_spis); end; ---- end); local function __FUNKCJA_SPISU(tablica_ksiazki,czy_podac_adres) tablica_ksiazki.spis=tabela_artykulow; if(czy_artykul_korzystany)then tablica_ksiazki.licencja=tabela_licencji_spisu_tresci; end; tablica_ksiazki.nazwa_bazowego_spisu=nazwa_glownego_spisu; tablica_ksiazki.tab_inne_spisy=tab_inne_spisy; tablica_ksiazki.dodatkowe_strony_woluminu=dodatkowe_artykuly; tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy=czy_podac_adres and adres_ksiazki_glownego_spisu_tresci or nil; end; if(tabela_artykulow==0)then if(czy_artykul_korzystany)then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"korzystana strona główna nie istnieje"); else stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"dołączone strony główne nie istnieją",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki); end; elseif(tabela_artykulow)then if(parametry_modul.TypeTable(tabela_artykulow))then if(adres_ksiazki_glownego_spisu_tresci)then __FUNKCJA_SPISU(tablica_ksiazki,true); local tablica_ksiazki_stara=tablica_ksiazki; local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true); local nazwa_przestrzeni=adres_ksiazki_glownego_spisu_tresci[1]; local nazwa_przestrzeni_ksiazki=adres_ksiazki_glownego_spisu_tresci[2]; local nazwa_ksiazki=adres_ksiazki_glownego_spisu_tresci[3]; if((kod_wyniku==1)or(kod_wyniku==2))then local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul); if(not wartosc_wyniku)then return wartosc_wyniku,true; elseif((wartosc_wyniku==0)and(tabela_artykul))then local nazwa_artykulu=artykul; StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); return wartosc_wyniku,true; end; local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni ,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul); tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,}; __FUNKCJA_SPISU(tablica_ksiazki,false); return nil,nil,artykul,kod_wyniku; elseif((kod_wyniku==3)or(kod_wyniku==4))then local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,artykul); tablica_ksiazki_stara.referencja_do_nowej_formy_spisu={tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,}; __FUNKCJA_SPISU(tablica_ksiazki,false); return nil,nil,artykul,kod_wyniku; end; else __FUNKCJA_SPISU(tablica_ksiazki,false); end; elseif(tabela_artykulow~=1)then local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); if(not wartosc_wyniku)then return wartosc_wyniku,true; elseif((wartosc_wyniku==0)and(tabela_artykul))then StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); return wartosc_wyniku,true; end; end; else if(czy_artykul_korzystany)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych"))then if(((self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=="")and(nazwa_artykulu~=""))or(self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu~=""))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"brak spisów treści do korzystanych książek na ich stronach głównych"); end; end; else stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"brak spisów treści do dołączonych książek na ich stronach głównych",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki); end; end; end; end; end; end; ---- local wartosc_wyniku,wynik_bledu,artykul_bazowy,kod_wyniku_bazowy=InneInformacjePrzebneDoAnalizowanejKsiazki(); if(wynik_bledu)then return wartosc_wyniku;end; local kod_wyniku_przekierowan=kod_wyniku_bazowy; ---- --if((not tablica_przestrzeni)or(not tablica_przestrzeni_ksiazki)or(not tablica_ksiazki)or(not artykul_analizowany))then -- tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); --end; ---- if(tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy)and((kod_wyniku_bazowy==1)or(kod_wyniku_bazowy==2))then ---- nazwa_przestrzeni=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[1]; nazwa_przestrzeni_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[2]; nazwa_ksiazki=tablica_ksiazki.adres_woluminu_bazowego_spisu_rzeczy[3]; nazwa_artykulu=artykul_bazowy; ---- tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki=tablica_ksiazki.referencja_do_nowej_formy_spisu[1],tablica_ksiazki.referencja_do_nowej_formy_spisu[2],tablica_ksiazki.referencja_do_nowej_formy_spisu[3]; end; local tabela_artykulow=tablica_ksiazki.spis; if(tabela_artykulow)then local nazwa_glownego_spisu=tablica_ksiazki.nazwa_bazowego_spisu; local tab_inne_spisy=tablica_ksiazki.tab_inne_spisy; local dodatkowe_artykuly=tablica_ksiazki.dodatkowe_strony_woluminu local artykul,kod_wyniku=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_glownego_spisu,tab_inne_spisy,dodatkowe_artykuly,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,false); if((kod_wyniku==1)or(kod_wyniku==2))then nazwa_artykulu=artykul; local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); if(not wartosc_wyniku)then return wartosc_wyniku; elseif((wartosc_wyniku==0)and(tabela_artykul))then StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); return wartosc_wyniku; end; tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); elseif((kod_wyniku==3)or(kod_wyniku==4))then local nazwa_artykulu=artykul; local tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); end; kod_wyniku_przekierowan=kod_wyniku_przekierowan or kod_wyniku; end; local nazwa_modulu=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); local PrzekierownieAwaryjne=function() if((not kod_wyniku_przekierowan)or((kod_wyniku_bazowy==1)or(kod_wyniku_bazowy==2)))then --local artykul2,kod_wyniku2=stronicowyparser_potrzebne_modul.OdpowiednikNaPrzemianArtykularnychStronWoluminu(tabela_artykulow,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,true); local techniczne_modul=require("Module:Techniczne"); local strona=techniczne_modul.PrzekierowanieDoStrony(nazwa_modulu); if(strona)then if(strona~=nazwa_modulu)then ---- local tabela_nazw={}; nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona,tabela_nazw); nazwa_przestrzeni_ksiazki=nazwy_modul["NAZWAPRZESTRZENIKSIĄŻKI"](strona,tabela_nazw); nazwa_ksiazki=((nazwa_przestrzeni_ksiazki~="") and nazwy_modul["SUBNAZWAKSIĄŻKI"](strona,tabela_nazw) or nazwy_modul["NAZWAKSIĄŻKI"](strona,tabela_nazw)); nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona,tabela_nazwa); local wartosc_wyniku,tabela_artykul,lista_artykolow,tabela_ksiazka,tabela_przestrzeni_ksiazki,tabela_przestrzeni=__FUNKCJA_POBIERANIE(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); if(not wartosc_wyniku)then return wartosc_wyniku; elseif((wartosc_wyniku==0)and(tabela_artykul))then StronaSubstFunkcja(tabela_artykul,tabela_ksiazka.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); return wartosc_wyniku; end; tablica_przestrzeni,tablica_przestrzeni_ksiazki,tablica_ksiazki,artykul_analizowany=__FUNKCJA_ARTYKULU(nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); nazwa_modulu=strona; else return 0; end; end; end; end; local wynik=PrzekierownieAwaryjne(); if(czy_artykul_korzystany)then self.nazwa_modulu_biezaca=nazwa_modulu; end; if(wynik)then return wynik;end; ---- if(czy_artykul_korzystany)then if((not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)and(not self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu))then self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni=nazwa_przestrzeni; self.tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu=nazwa_przestrzeni_ksiazki; self.tabela_listy_danych_analizy_ksiazki.nazwa_woluminu=nazwa_ksiazki; self.tabela_listy_danych_analizy_ksiazki.nazwa_podstrony_woluminu=nazwa_artykulu; end; end; local nazwa_modulu_aktualna_czy_biezaca=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu) or nazwa_modulu; -- przydzielanie tablicy if(czy_artykul_korzystany)then artykul_analizowany.artykul_biezacy=true; tablica_ksiazki.ksiazka_analizowana=true; end; --koniec --local iterator=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,"{{[^{}]-}}"); if(not tablica_zmiennych)then tablica_zmiennych={};end; if(not tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2)then tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2={};end; local stronicowyparser_obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty"); for _,element_w_tablicy_obiekt in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do local CzyLink=element_w_tablicy_obiekt.CzyLink; local CzyNum=element_w_tablicy_obiekt.CzyNum; local wartosc=element_w_tablicy_obiekt[1]; tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum,}; if(czy_artykul_korzystany)then tablica_zmiennych.linkobiekt[wartosc]={CzyLink=CzyLink,CzyNum=CzyNum;};end; end; local function StronaZbiorcza() if(czy_artykul_korzystany)then local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst"); local TakFun=function(frame) return true;end;local NieFun=function(frame) return nil;end; local wynik=stronicowyparser_stronasubst_modul.AnalizaStronaSubst(self.tabela_listy_danych_analizy_ksiazki,tablica_ksiazki.spis,nil,TakFun,NieFun,nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); artykul_analizowany.strona_zbiorcza=(wynik and "tak" or ""); return wynik; end; return nil; end; local strona_zbiorcza=StronaZbiorcza(); local pelna_nazwa_ksiazki=nazwy_modul["NazwaModułu"](nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,""); local stronicowyparser_tekst_modul=require("Module:StronicowyParser/Tekst"); ---- local tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony; if((not tekst_rozwiniety_calego_artykulu_ref)or(not tablica_analizy_obiektow_strony_dany_modul_ref)or(not tablica_danych_parametrow_szablonu_strony_ref))then tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=stronicowyparser_tekst_modul.RekurencyjnyZakodowanoSpreparowanyWikikodStrony(self,nazwa_modulu_aktualna_czy_biezaca,(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))and true or nil), nil) else tekst_rozwiniety_calego_artykulu,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony=tekst_rozwiniety_calego_artykulu_ref,tablica_analizy_obiektow_strony_dany_modul_ref,tablica_danych_parametrow_szablonu_strony_ref; end; ---- if(not czy_artykul_korzystany)then if(not tekst_rozwiniety_calego_artykulu)then return 0;end; end; if(czy_artykul_korzystany)then if(not tekst_rozwiniety_calego_artykulu)then if(strona_zbiorcza)then self.tabela_listy_danych_analizy_ksiazki["CzyStronaSubst"]="tak"; end; return nil; end; end; local szablonowe_modul=require("Module:Szablonowe"); local parametry_modul=require("Module:Parametry"); if((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.inna_strona_aktualna_niz_biezaca))then local aktualna_nazwa_modulu=self.tabela_listy_danych_analizy_ksiazki.alternatywna and nazwa_modulu_aktualna_czy_biezaca or nazwy_modul["NazwaModułu"](self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_przestrzeni_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_ksiazki,self.tabela_listy_danych_analizy_ksiazki.aktualna_nazwa_artykulu); local tekst=stronicowyparser_tekst_modul.SpreparowanyWikikodStrony(self,aktualna_nazwa_modulu); if(tekst)then local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst,aktualna_nazwa_modulu); local tablica_danych_parametrow_szablonu_strony={}; for szablon,obiekt,kod in iterator do if(obiekt=="SZABLON")then local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,aktualna_nazwa_modulu,function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod) if(stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu])then self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak"; self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak"; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; return true; elseif(stronicowyparser_obiekty_modul.strona_start[nazwa_szablonu])then self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak"; self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"]; local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or ""; local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC"; if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; end; return true; end; end); if(wynik)then break;end; end; end; end; end; local uzyskano_w_wyniku_parsowania_wywolanie_szablonu; local analiza_stron_korzystanych_zbiorczych=nil; local stronastart=nil; ---- local tablica_obiekty=stronicowyparser_obiekty_modul.obiekty; local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty; local format_elementowy_referencji_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_referencji_obiektowy; local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu; local szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu; local szablony_wykorzystywane_przez_strony_zbiorcze=stronicowyparser_obiekty_modul.szablony_wykorzystywane_przez_strony_zbiorcze; local format_elementowy_obiektowy=stronicowyparser_obiekty_modul.format_elementowy_obiektowy; local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.numerowane_obiekty; local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_napisu_wprowadzenia_tekstu; local szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu=stronicowyparser_obiekty_modul.szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane.nienumerowane_obiekty_tekstu; ---- local strona_start=stronicowyparser_obiekty_modul.strona_start; local strona_start_ze_spisem_rzeczy_strony=stronicowyparser_obiekty_modul.strona_start_ze_spisem_rzeczy_strony; local strona_start_inne=stronicowyparser_obiekty_modul.strona_start_inne; local szablony_strony_zbiorczej=stronicowyparser_obiekty_modul.strona_zbiorcza; ---- local tab_szablony=stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_kontenerowe; local tab_szablony_stronicowe_niekontenerowe=stronicowyparser_obiekty_modul.szablony_stronicowe_niekontenerowe; local tab_szablony_stronicowe_formatowania_tekstu=stronicowyparser_obiekty_modul.szablony_stronicowe_formatowania_tekstu; local tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego=stronicowyparser_obiekty_modul.szablony_stronicowe_kontenerowe_formatowania_wzorowego; ---- local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne"); local tabela_elementow_strony_kodow={}; -- for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do local function AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego(tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer) if(czy_artykul_korzystany)then if(tabela_parametrow_szablonu)then if((not stronastart)and(self.tabela_listy_danych_analizy_ksiazki.formatowanie==nil))then if(strona_start[nazwa_szablonu_wywolania])then self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak"; self.tabela_listy_danych_analizy_ksiazki.formatowanie=tabela_parametrow_szablonu["formatowanie"]; stronastart=true; local boczne_menu=tabela_parametrow_szablonu["boczne menu"] or ""; local spis_tresci=tabela_parametrow_szablonu["spis treści"] or "TOC"; if((parametry_modul.CzyTak(boczne_menu))or(parametry_modul.CzyTak(spis_tresci)))then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; end; return; elseif(strona_start_ze_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak"; self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak"; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; stronastart=true; return; elseif(strona_start_inne[nazwa_szablonu_wywolania])then self.tabela_listy_danych_analizy_ksiazki.strona_ze_szablonem_strona_start="tak"; self.tabela_listy_danych_analizy_ksiazki.formatowanie="tak"; stronastart=true; return; elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then analiza_stron_korzystanych_zbiorczych=true; local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"]; local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"]; if((not parametry_modul.CzyTak(nazwa_prestreni_nazw))and(not parametry_modul.CzyTak(nazwa_jednostki)))then return; end; end; elseif((strona_zbiorcza)and(not analiza_stron_korzystanych_zbiorczych)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then analiza_stron_korzystanych_zbiorczych=true; local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"]; local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"]; if((not parametry_modul.CzyTak(nazwa_przestrzeni))and(not parametry_modul.CzyTak(nazwa_jednostki)))then return; end; end; end; end; local plik=mw.ustring.match(nazwa_szablonu_wywolania,"^:"); if(plik==nil)then if(tabela_parametrow_szablonu)then if(not parametry_modul.CzyTak(tabela_parametrow_szablonu["bez automatu"]))then local czy_wypowiedzenie=(nazwa_szablonu_wywolania=="Wypowiedzenie"); local czy_linkobiekt; local czy_link;local czy_pobierz; local czy_wypowiedzenie_z_parametrami; local czy_linkobiekt_z_parametrami; if(czy_wypowiedzenie)then czy_linkobiekt=false; czy_link=false; czy_pobierz=false; czy_wypowiedzenie_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["rodzaj"]); else czy_linkobiekt=(nazwa_szablonu_wywolania=="LinkObiekt"); if(czy_linkobiekt)then czy_link=true; czy_pobierz=false; czy_linkobiekt_z_parametrami=parametry_modul.CzyTak(tabela_parametrow_szablonu["typ"]); else czy_link=mw.ustring.match(nazwa_szablonu_wywolania,"^Link"); czy_pobierz=(not czy_link) and mw.ustring.match(nazwa_szablonu_wywolania,"^Pobierz") or nil; end; end; if((not czy_link)and(not czy_pobierz))then local wartosc_elementu;local numer_uchwytu; if(not czy_wypowiedzenie_z_parametrami) then local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania]; if(tab_wartosc_elementu)then wartosc_elementu=tab_wartosc_elementu[1]; numer_uchwytu=tab_wartosc_elementu[2]; end; else local rodzaj=tabela_parametrow_szablonu["rodzaj"]; if(rodzaj)then wartosc_elementu=format_elementowy_obiektowy[rodzaj] and rodzaj or nil; if(wartosc_elementu)then numer_uchwytu=tablica_obiekty[5]; end; end; end; if(wartosc_elementu)then local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(czy_artykul_korzystany)then if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then if(uchwyt_obiektu and (uchwyt_obiektu~=""))then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; end; end; p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); return; end; elseif(czy_artykul_korzystany)then if(czy_link)then local wartosc_elementu; if(not czy_linkobiekt_z_parametrami)then wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_numerowane_obiekty[nazwa_szablonu_wywolania]; else local typ=tabela_parametrow_szablonu["typ"]; if(typ)then typ=format_elementowy_referencji_obiektowy[typ] and typ or nil; if(typ)then wartosc_elementu=mw.getContentLanguage():ucfirst(typ); end; end; end; if(wartosc_elementu)then local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Link"..wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); return; else local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_napisu_wprowadzenia_tekstu[nazwa_szablonu_wywolania]; if(wartosc_elementu)then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil; if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; else self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; end; return; end; end; elseif(czy_pobierz)then local wartosc_elementu=szablony_linkowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania]; if(wartosc_elementu)then local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,wartosc_elementu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie,true); return; end; end; end; if(czy_wypowiedzenie)then local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(czy_artykul_korzystany)then if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="Obiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; end; p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,"Obiekt", czy_artykul_korzystany,tablica_obiekty[5],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); return; elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_wprowadzenia_tekstu[nazwa_szablonu_wywolania])then local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_naglowka[nazwa_szablonu_wywolania]; local wartosc_elementu;local numer_uchwytu; if(tab_wartosc_elementu)then wartosc_elementu=tab_wartosc_elementu[1]; numer_uchwytu=tab_wartosc_elementu[2]; end; local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(czy_artykul_korzystany)then if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then if(uchwyt_obiektu and (uchwyt_obiektu~=""))then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; end; end; local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); p.UchwytyZeiBezNumeracji(self,tabela_elementow_strony_kodow,wartosc_elementu,lista_dwuelementowa,kod); if(czy_artykul_korzystany)then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; end; return; elseif(stronicowyparser_obiekty_modul.szablony_stronicowego_parsera.szablony_tekstu[nazwa_szablonu_wywolania])then local tab_wartosc_elementu=szablony_obiektowe_z_uchwytami_numerowane_i_nienumerowane_nienumerowane_obiekty_tekstu[nazwa_szablonu_wywolania]; local wartosc_elementu;local numer_uchwytu; if(tab_wartosc_elementu)then wartosc_elementu=tab_wartosc_elementu[1]; numer_uchwytu=tab_wartosc_elementu[2]; end; local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(czy_artykul_korzystany)then if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then if(uchwyt_obiektu and (uchwyt_obiektu~=""))then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=wartosc_elementu..":"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; end; end; local lista_dwuelementowa=p.RozpatrywanieSzablonuObiektuDoNumeracji(self,tabela_parametrow_szablonu,tablica_zmiennych, nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu,wartosc_elementu, czy_artykul_korzystany,numer_uchwytu--[[elementy_w_tablicy_obiekty[5]],tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); if(lista_dwuelementowa)then local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu"); local tekst=stronicowyparser_szablonytekstu_modul.ParametrTekstowySzablonuTekstu(tabela_parametrow_szablonu); local bez_preprocess=stronicowyparser_szablonytekstu_modul.SzablonTekstuBezPreProcess(tabela_parametrow_szablonu); local czy_bez_preprocess=parametry_modul.CzyTak(bez_preprocess); if(tekst)then local czy_szablon_wszystko=false; tekst=szablonowe_modul:KompletowanieSzablonoweZakodowanegoTekstu(tekst,nil,tablica_analizy_obiektow_strony_dany_modul, function(szablon,obiekt,kod) if(czy_bez_preprocess)then return nil;end; if(obiekt=="SZABLON")then local wynik=szablonowe_modul.UzyskanieWynikuZOperacjiSzablonowychNaSzablonachZnacznikachParserachZmiennychOrazModyfikatorachZDanychObiektuSZABLON(szablon,tablica_danych_parametrow_szablonu_strony,kod,nazwa_modulu, function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod) if( (tab_szablony[nazwa_szablonu]) or(tab_szablony_stronicowe_niekontenerowe[nazwa_szablonu]) or(tab_szablony_stronicowe_formatowania_tekstu[nazwa_szablonu]) or(tab_szablony_stronicowe_kontenerowe_formatowania_wzorowego[nazwa_szablonu]) )then if(not czy_artykul_korzystany)then tabela_parametrow_szablonu["nazwa przestrzeni nazw"]=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or nazwa_przestrzeni; tabela_parametrow_szablonu["nazwa jednostki"]=tabela_parametrow_szablonu["nazwa jednostki"] or (((nazwa_przestrzeni_ksiazki~="") and (nazwa_przestrzeni_ksiazki.."/") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "")) if(self)then local czy_link_lub_pobierz=mw.ustring.match(nazwa_szablonu,"^Link") or mw.ustring.match(nazwa_szablonu,"^Pobierz"); if(czy_link_lub_pobierz)then p.ZbieranieKontenerowychInformacjiReferencji(self,tabela_parametrow_szablonu,nazwa_modulu_aktualna_czy_biezaca); else p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu); end; end; end; return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true); end; return nil; end, function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod) ---- instrukcje warunkowe; return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true); end, function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod) ---- wywołania ramek Lua w Scribunto return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true); end, function(tabela_parametrow_szablonu,nazwa_szablonu,tabela_modyfikatorow,szablon,obiekt,kod) ---- tagi szablonowe; return szablonowe_modul.KodSymbolicznySzablonu(nazwa_szablonu,tabela_parametrow_szablonu,tabela_modyfikatorow,true); end); czy_szablon_wszystko=czy_szablon_wszystko or true; if(wynik)then return wynik;end; elseif(obiekt=="ZMIENNA")then czy_szablon_wszystko=czy_szablon_wszystko or true; local zawartosc=mw.ustring.match(szablon,"^{{{(.*)}}}$"); if(zawartosc)then zawartosc=mw.ustring.gsub(zawartosc,"|","{{!}}"); return "{{(((}}"..zawartosc.."{{)))}}"; end; end; end); if((czy_szablon_wszystko)and(not bez_preprocess))then local frame=mw.getCurrentFrame(); tekst=frame:preprocess(tekst); end; lista_dwuelementowa[2]=tekst; end; --local __metatabelka=getmetatable(tabela_parametrow_szablonu); --if(__metatabelka)then setmetatable(tabela_parametrow_szablonu,nil);end; stronicowyparser_szablonytekstu_modul.DodawanieDoBazyStronySzablonuTekstu(tablica_zmiennych,wartosc_elementu,lista_dwuelementowa,obiekt,kod,tabela_parametrow_szablonu,nazwa_szablonu_wywolania,modyfikatory_wywolania,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,czy_artykul_korzystany); end; return; elseif(czy_artykul_korzystany)then if(czy_linkobiekt)then local function KtorySzablonMaZwracacKategorie(uchwyt_obiektu,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie="LinkObiekt:"..((uchwyt_obiektu)and uchwyt_obiektu or ""); end; end; p.GeneralneLinkowanie(self,obiekt,kod,tablica_zmiennych,tabela_parametrow_szablonu,"Obiekt",nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,KtorySzablonMaZwracacKategorie); return; else if(stronicowyparser_obiekty_modul.szablony_z_lokalnym_spisem_rzeczy_strony[nazwa_szablonu_wywolania])then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; return; elseif(stronicowyparser_obiekty_modul.bez_uchwytow_spis_rzeczy_strony[nazwa_szablonu_wywolania])then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=true; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then local nazwa_ksiazki=tabela_parametrow_szablonu["nazwa książki"] or tabela_parametrow_szablonu[2] or ""; local artykul=tabela_parametrow_szablonu["nazwa artykułu"] or tabela_parametrow_szablonu[1] or ""; self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu_wywolania..":"..nazwa_ksiazki..((artykul)and ("/"..artykul) or "") end; end; p.ZbieranieInformacjiStronyWoluminowychPozycji(self,tabela_parametrow_szablonu,KtorySzablonMaZwracacKategorie); self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci=nil; if(not self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)then self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane=true; self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; else self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone=nil; end; return; else local function KtorySzablonMaZwracacKategorie(uchwyt,__FUNKCJA_KATEGORIE) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then local nazwy_modul=require("Module:Nazwy"); local nazwa_przestrzeni=tabela_parametrow_szablonu["nazwa przestrzeni nazw"] or ""; local nazwa_jednostki=tabela_parametrow_szablonu["nazwa jednostki"] or ""; local nazwa_symulacyjnej_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_jednostki; local uchwyt=nazwa_szablonu_wywolania..":"..nazwa_symulacyjnej_strony; self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=uchwyt; end; end; if((stronicowyparser_obiekty_modul.szablony_kontenerowe[nazwa_szablonu_wywolania]) or(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]) )then if(szablony_wykorzystywane_przez_strony_zbiorcze[nazwa_szablonu_wywolania])then p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie); else p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,nil,KtorySzablonMaZwracacKategorie); end; return; elseif((strona_zbiorcza)and(szablony_strony_zbiorczej[nazwa_szablonu_wywolania]))then p.ZbieranieKontenerowychInformacji(self,tabela_parametrow_szablonu,true,KtorySzablonMaZwracacKategorie); return; end; end; end; end; end; end; end; end; ---- local function GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer) stronicowyparser_potrzebne_modul:AnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer,nazwa_modulu_aktualna_czy_biezaca,tablica_danych_parametrow_szablonu_strony,AnalizaParametrowaOrazNazwowaStronicowegoIteratoraSzablonowego); end; local function IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu,tab_numer) local iterator=szablonowe_modul:IteratorSzablonowyZakodowanegoTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul); for uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod in iterator do GeneralnaAnalizaSzablonuStronicowegoParsera(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,obiekt,kod,tab_numer); end; end; IterowaniePoElementachTekstu(tekst_rozwiniety_calego_artykulu); ---- local tablica_danych_nazwy_artykulu=tablica_ksiazki.lista_podstron_woluminu[nazwa_artykulu] or {}; tablica_danych_nazwy_artykulu.uchwyty_i_numeracje=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2; ---- local wiki_modul=require("Module:Wiki"); tablica_danych_nazwy_artykulu.link_wikidane={wiki_modul.KodyKlasStronyNaDanejWiki{["strona"]=nazwa_modulu_aktualna_czy_biezaca,["nagłówek"]=true,["aktywny"]=true,},}; ---- if(czy_artykul_korzystany)then if(analiza_stron_korzystanych_zbiorczych)then local stronicowyparser_stronasubst_modul=require("Module:StronicowyParser/StronaSubst"); tekst_rozwiniety_calego_artykulu=stronicowyparser_stronasubst_modul.LiczOperacjeStronZbiorczych(self,tekst_rozwiniety_calego_artykulu,tablica_ksiazki.spis,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony); end; end; local strona; if(czy_artykul_korzystany)then strona="";else strona=nazwa_modulu;end; ---- if(czy_artykul_korzystany)then local stronicowyparser_szablonytekstu_modul=require("Module:StronicowyParser/SzablonyTekstu"); stronicowyparser_szablonytekstu_modul.UstawPobierzKorzystanie(tablica_zmiennych); tekst_rozwiniety_calego_artykulu=stronicowyparser_szablonytekstu_modul.AktualizowanieSzablonowychTekstowychKompletowaniaInformacjiTekstu(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_zmiennych,IterowaniePoElementachTekstu) or tekst_rozwiniety_calego_artykulu; end; ---- local toc; if(((czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_korzystane)) or((not czy_artykul_korzystany)and(self.tabela_listy_danych_analizy_ksiazki.analiza_spis_tresci_doloczone)))then ---- local tablica_obiektow_strony_danych_kodow_specjalnych_modul=nil; ---- tekst_rozwiniety_calego_artykulu,tablica_obiektow_strony_danych_kodow_specjalnych_modul=szablonowe_modul:KodowanieInaczejZakodowanychNormKodowychTekstuWedleJegoTablicyKodowania(tekst_rozwiniety_calego_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,false); ---- local function KtorySzablonMaZwracacKategorieNaglowek(numeracja_aktualna,nazwa_szablonu) if(czy_artykul_korzystany)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej"))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"powtórka nagłowek w stronie korzystanej"); if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or ""); end; end; else stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"powtórka nagłówek w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki) if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or ""); end; end; end; local function KtorySzablonMaZwracacKategorieTekst(numeracja_aktualna,nazwa_szablonu) if(czy_artykul_korzystany)then if(not stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"))then stronicowyparser_problemy_modul.UstawTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"); if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or ""); end; end; else stronicowyparser_problemy_modul.DodawanieProblemowegoElementuDoTablicy(self,"nagłowek w tekście rozdziału w stronie dołączonej",nil,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki); if(not self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then self.tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie=nazwa_szablonu..":"..(numeracja_aktualna or ""); end; end; end; local function CzyJestTakiProblemJakoElementTablicySzablonuNaglowkaPozaNapisemWprowadzeniaTekstu() return stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"nagłówek w tekście rozdziału w stronie korzystanej"); end; local nazwa_naglowka=stronicowyparser_obiekty_modul.nazwa_szablonu_wprowadzenia_tekstu; local stronicowyparser_glownafunkcjazbieraniadanych_modul=require("Module:StronicowyParser/GłównaFunkcjaZbieraniaDanychStron"); local tablica_naglowka_obiekty=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2[nazwa_naglowka]; tablica_naglowka_obiekty.uchwyty_bez_numeracji={}; local toc=stronicowyparser_glownafunkcjazbieraniadanych_modul.SpisRzeczyWedlePodanegoTekstu(self,tekst_rozwiniety_calego_artykulu,strona, czy_artykul_korzystany,nil,tablica_naglowka_obiekty.uchwyty_bez_numeracji, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki, nazwa_ksiazki, nazwa_artykulu,nazwa_modulu_aktualna_czy_biezaca,tablica_analizy_obiektow_strony_dany_modul,tablica_danych_parametrow_szablonu_strony,tablica_obiektow_strony_danych_kodow_specjalnych_modul,{KtorySzablonMaZwracacKategorieNaglowek,KtorySzablonMaZwracacKategorieTekst,CzyJestTakiProblemJakoElementTablicySzablonuNaglowkaPozaNapisemWprowadzeniaTekstu,},nil,tabela_elementow_strony_kodow); tablica_danych_nazwy_artykulu.TOC=toc; end; StronaSubstFunkcja(tablica_danych_nazwy_artykulu,tablica_ksiazki.spis,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki,nazwa_artykulu); if(czy_artykul_korzystany)then self.tabela_listy_danych_analizy_ksiazki.link_wikidane=tablica_danych_nazwy_artykulu.link_wikidane; self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykulu=tablica_zmiennych.tabela_listy_danych_analizy_ksiazki2; self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw=self.tabela_listy_danych_analizy_ksiazki.dane_analizy_stron[nazwa_przestrzeni]; self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_przestrzeni_nazw[nazwa_przestrzeni_ksiazki]; self.tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki=self.tabela_listy_danych_analizy_ksiazki.tablica_ksiazek_w_danej_przestrzeni_nazw_ksiazki[nazwa_ksiazki]; --self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron=tablica_zmiennych; end; if(not czy_artykul_korzystany)then tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=tablica_zmiennych; if(not self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista)then self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista={};end; table.insert(self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista,tablica_danych_nazwy_artykulu); else local dane_zebrane_ze_stron_lista=self.tabela_listy_danych_analizy_ksiazki.dane_zebrane_ze_stron_lista; if(dane_zebrane_ze_stron_lista)then for _,tablica_danych_nazwy_artykulu in ipairs(dane_zebrane_ze_stron_lista)do tablica_danych_nazwy_artykulu.dane_zebrane_ze_stron=nil; end; end; tablica_zmiennych.tablica_szablonu_tekstu_linkowe_korzystane=nil; end; return self.tabela_listy_danych_analizy_ksiazki,tablica_zmiennych,true; end; return p; nycs3332hyggvgo21ae3fl762xkunbk Moduł:StronicowyParser/Kategorie 828 58542 547477 547468 2026-07-10T12:33:56Z Persino 2851 547477 Scribunto text/plain local p={}; function p.InformacjeKategorie() local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; if(not tabela_listy_danych_analizy_ksiazki.problemy)then return nil;end; if(not tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then return nil;end; ----- local stronicowyparser_obiekty_modul=mw.loadData("Module:StronicowyParser/obiekty"); local nazwa_przestrzeni_nazw_strony=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni; local nazwa_przestrzeni_nazw_ksiazki_strony=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu; local nazwa_ksiazki_strony=tabela_listy_danych_analizy_ksiazki.nazwa_woluminu; local nazwy_np_modul=mw.loadData("Module:Nazwy/Np"); ----- 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(nazwa_przestrzeni_nazw_ksiazki_strony,"^([^/]+)$")))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_przestrzeni_nazw_ksiazki_strony,"^%s*[Bb]rudnopis/([^/]+)$")))then strony_z_wielkiej_litery="Strony brudnopisu projektu,"; strony_z_malej_litery="stron brudnopisu projektu"; else strony_z_wielkiej_litery="Strony niepodręcznikowe"; strony_z_malej_litery="stron niepodręcznikowych"; end; ---- local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki) local tablica_element=tablica_nazwy_ksiazki[element]; if(tablica_element)then return true;end; return false; end; local stronicowyparser_problemy_modul=require("Module:StronicowyParser/Problemy"); local self={}; self.tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki; ---- local tabela_kategorii={}; local latki_modul=require("Module:Łatki"); ---- if(tabela_listy_danych_analizy_ksiazki.problemy["problemy książkowe"])then for nazwa_przestrzeni,tablica_przestrzeni in pairs(tabela_listy_danych_analizy_ksiazki.problemy["problemy książkowe"])do for nazwa_przestrzeni_ksiazki,tablica_nazwy_przestrzeni_ksiazki in pairs(tablica_przestrzeni) do for nazwa_ksiazki, tablica_nazwy_ksiazki in pairs(tablica_nazwy_przestrzeni_ksiazki)do local typ_bledu="błędy uchwytów dołączonych stron"; local tablica_bledy=tablica_nazwy_ksiazki[typ_bledu]; if(tablica_bledy)then for _,element_w_podtablicy_kategorii_bledow in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do local wartosc_elementu_pierwszego=element_w_podtablicy_kategorii_bledow[1]; local tablica_bledy=tablica_bledy[wartosc_elementu_pierwszego]; if(tablica_bledy)then ---- if((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_woluminu))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z dołączonymi innymi stronami, w książkach, "..latki_modul.Z(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 parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z dołączonymi ".. ((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(nazwa_przestrzeni_ksiazki,"^([^/]+)$"))) and "stronami użytkowników, " or (((nazwa_przestrzeni==nazwy_np_modul.Wikibooks)and(mw.ustring.match(nazwa_przestrzeni_ksiazki,"^%s*[Bb]rudnopis/([^/]+)$"))) and "stronami brudnopisu projektu, " or "stronami niepodręcznikowymi, ")))).."w innych książkach, "..latki_modul.Z(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; ---- local typ_bledu="brak spisów treści do dołączonych stron"; local tablica_bledy=tablica_nazwy_ksiazki[typ_bledu]; if(tablica_bledy)then local czy_pomijaj=Czy_jest_taki_element_w_tabeli_problemow("brak spisów treści do dołączonych książek na ich stronach głównych", tablica_nazwy_ksiazki) or Czy_jest_taki_element_w_tabeli_problemow("dołączone strony główne nie istnieją", tablica_nazwy_ksiazki); if(not czy_pomijaj)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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 niepodręcznikowych"))))..", "..(((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)) and "stron w książkach" or (((nazwa_przestrzeni==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; ---- local typ_bledu="brak spisów treści do dołączonych książek na ich stronach głównych"; local tablica_bledy=tablica_nazwy_ksiazki[typ_bledu]; if(tablica_bledy)then local czy_pomijaj=Czy_jest_taki_element_w_tabeli_problemow("dołączone strony główne nie istnieją", tablica_nazwy_ksiazki) or((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni) and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)); if(not czy_pomijaj)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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 niepodręcznikowych"))))..", do książek"..((nazwa_przestrzeni==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; ----- local typ_bledu="dołączone strony główne nie istnieją"; local tablica_bledy=tablica_nazwy_ksiazki[typ_bledu]; if(tablica_bledy)then local czy_ta_sama_ksiazka=((nazwa_przestrzeni==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni)and(nazwa_przestrzeni_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni_woluminu)and(nazwa_ksiazki==tabela_listy_danych_analizy_ksiazki.nazwa_woluminu)); if(not czy_ta_sama_ksiazka)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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 niepodręcznikowych"))))..", książek"..((nazwa_przestrzeni==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; local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii) local tablica_bledy=tablica_nazwy_ksiazki[kategoria_bledu]; if(tablica_bledy)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z dołączonymi " ..( (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(nazwa_przestrzeni_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 niepodręcznikowymi" ) ) ) ) .." "..czesc_nazwy_kategorii); end; end; Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); end; end; end; end; ---- for _,element_w_podtablicy_kategorii_bledow in pairs(stronicowyparser_obiekty_modul.tablica_obiektowych_form)do local wartosc_elementu_pierwszego=element_w_podtablicy_kategorii_bledow[1]; local CzyLink=element_w_podtablicy_kategorii_bledow.CzyLink; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",wartosc_elementu_pierwszego))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." "..latki_modul.Z(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; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"błędy uchwytów korzystanych stron",(CzyLink and "Link" or "Pobierz")..wartosc_elementu_pierwszego))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." ze złymi uchwytami do "..element_w_podtablicy_kategorii_bledow[7]); end; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",wartosc_elementu_pierwszego,1))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z pustymi uchwytami w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7]); end; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",wartosc_elementu_pierwszego,2))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z pustymi nazwami artykułów w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7]); end; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"puste parametry szablonów stronicowych linkujących",wartosc_elementu_pierwszego,3))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z pustymi nazwami książek w odnośnikach do "..element_w_podtablicy_kategorii_bledow[7]); end; if(stronicowyparser_problemy_modul.CzyJestTakiProblemowyElement(self,"brak uchwytu",wartosc_elementu_pierwszego))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z odnośnikami, z brakiem uchwytu, do "..element_w_podtablicy_kategorii_bledow[7]); end; end; if((tabela_listy_danych_analizy_ksiazki.problemy["brak spisu treści do korzystanych stron"])and((not tabela_listy_danych_analizy_ksiazki.problemy["brak spisów treści do korzystanych książek na ich stronach głównych"])and(not tabela_listy_danych_analizy_ksiazki.problemy["korzystana strona główna nie istnieje"])))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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; local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii) if(tabela_listy_danych_analizy_ksiazki.problemy[zmienna_korzystane])then if(tabela_listy_danych_analizy_ksiazki.problemy[zmienna_korzystane]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." "..czesc_nazwy_kategorii); end; end; end; Dodaj_kategorie_naglowkuj_ogolne("powtórka nagłowek w stronie korzystanej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_ogolne("nagłówek w tekście rozdziału w stronie korzystanej","z użyciami szablonu nagłówka w tekstach rozdziałów"); if(tabela_listy_danych_analizy_ksiazki.problemy["nieprawidłowe nazwy korzystanych stron"])then if(tabela_listy_danych_analizy_ksiazki.problemy["nieprawidłowe nazwy korzystanych stron"]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z nieprawidłowymi nazwami korzystanych stron"); end; end; if(tabela_listy_danych_analizy_ksiazki.problemy["nieprawidłowe nazwy stron dołączanych do stron"])then if(tabela_listy_danych_analizy_ksiazki.problemy["nieprawidłowe nazwy stron dołączanych do stron"]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z nieprawidłowymi nazwami dołączonych stron"); end; end; if(tabela_listy_danych_analizy_ksiazki.problemy["strona nie istnieje"])then if(tabela_listy_danych_analizy_ksiazki.problemy["strona nie istnieje"]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z dołączonymi nieistniejącymi stronami"); end; end; if(tabela_listy_danych_analizy_ksiazki.problemy["błąd wewnętrzny modułu lua stronicowego parsera"])then if(tabela_listy_danych_analizy_ksiazki.problemy["błąd wewnętrzny modułu lua stronicowego parsera"]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,strony_z_wielkiej_litery.." z błędami wewnętrznymi skryptów"); end; end; if(tabela_listy_danych_analizy_ksiazki.problemy["niedozwolone znaki w spisach treści"])then if(tabela_listy_danych_analizy_ksiazki.problemy["niedozwolone znaki w spisach treści"]==0)then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"Nazwy "..strony_z_malej_litery..", w spisach treści zawierają niedozwolone znaki"); end; end; if((tabela_listy_danych_analizy_ksiazki.problemy["brak spisów treści do korzystanych książek na ich stronach głównych"])and(not tabela_listy_danych_analizy_ksiazki.problemy["korzystana strona główna nie istnieje"]))then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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.problemy["korzystana strona główna nie istnieje"])then parametry_modul.DodajElementDoZbioru(tabela_kategorii,"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_kategorii>0)then local kategorie_modul=require("Module:Kategorie") local lista_wywolan_kategorii=kategorie_modul.Kategorie{args=tabela_kategorii,}; return lista_wywolan_kategorii; end; end; function p.WstawKategorie(frame) local parametry_modul=require("Module:Parametry"); local pf=frame:getParent(); local bez_kategorii=(frame.args["bez kategorii"] or frame.args["dokumentacja"]) or (pf.args["bez kategorii"] or pf.args["dokumentacja"]); bez_kategorii=parametry_modul.CzyTak(bez_kategorii); if(bez_kategorii)then return nil;end; local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; if(not tabela_listy_danych_analizy_ksiazki.problemy)then return nil;end; if(not tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie)then return nil;end; local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); local kod_uchwytu=frame.args[1]; if(not kod_uchwytu)then return nil;end; local html_modul=require("Module:Html"); kod_uchwytu=html_modul.DecodeHtml(frame.args[1],true); local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; 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 stronicowyparser_informacjekategorie_modul=mw.loadData("Module:StronicowyParser/InformacjeKategorie"); local informacje_o_kategoriach_stronicowego_parsera=stronicowyparser_informacjekategorie_modul.informacje_o_kategoriach_stronicowego_parsera; return informacje_o_kategoriach_stronicowego_parsera; end; end; return p; aq2laub94pt8q3tdodv0ryr4hxcf9pe Moduł:StronicowyParser/Problemy 828 60330 547508 529724 2026-07-11T10:42:01Z Persino 2851 547508 Scribunto text/plain local p={}; function p.CzyJestTakiProblemowyElement(self,element,element2,element3) if(not element2)then local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; return ((problemy and problemy[element]) and true or false); else if(not element3)then local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; local problemy_element=problemy and problemy[element]; return ((problemy and problemy_element and problemy_element[element2] ) and true or false); else local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; local problemy_element=problemy and problemy[element]; local problemy_element_element2=problemy_element and problemy_element[element2] return ((problemy and problemy_element and problemy_element_element2 and problemy_element_element2[element3] ) and true or false); end; end; end; function p.UstawTakiProblemowyElement(self,element,element2,element3) if(not self.tabela_listy_danych_analizy_ksiazki.problemy)then self.tabela_listy_danych_analizy_ksiazki.problemy={}; end; local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; if(not element2)then problemy[element]=0; else if(not problemy[element])then problemy[element]={}; end; local problemy_element=problemy[element]; if(not element3)then problemy_element[element2]=0; else if(not problemy_element[element2])then problemy_element[element2]={}; end; local problemy_element_element2=problemy_element[element2]; problemy_element_element2[element3]=0; end; end; end; function p.CzyJestTakiElementTabeliProblemu(self,element_tablicy, nazwa_obiektu, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki) local parametry_modul=require("Module:Parametry"); if(not self.tabela_listy_danych_analizy_ksiazki.problemy)then return false;end; local tabela_problemow=self.tabela_listy_danych_analizy_ksiazki.problemy["problemy książkowe"]; if(not tabela_problemow)then return false;end; local tablica_przestrzeni=tabela_problemow[nazwa_przestrzeni]; if(not tablica_przestrzeni)then return false;end; local tablica_nazwa_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki]; if(not tablica_nazwa_przestrzeni_ksiazki)then return false;end; local tablica_nazwy_ksiazki=tablica_nazwa_przestrzeni_ksiazki[nazwa_ksiazki]; if(not tablica_nazwy_ksiazki)then return false;end; local tab_element=tablica_nazwy_ksiazki[element_tablicy]; if(not tab_element)then return false;end; return true; end; function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki) local tabela_listy_danych_analizy_ksiazki=self.tabela_listy_danych_analizy_ksiazki; if(not tabela_listy_danych_analizy_ksiazki.problemy)then tabela_listy_danych_analizy_ksiazki.problemy={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki.problemy; if(not tabela_listy_danych_analizy_ksiazki["problemy książkowe"])then tabela_listy_danych_analizy_ksiazki["problemy książkowe"]={};end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki["problemy książkowe"]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni])then tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni]={};end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki])then tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki])then tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki]; if(not tabela_listy_danych_analizy_ksiazki[element_tablicy])then tabela_listy_danych_analizy_ksiazki[element_tablicy]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[element_tablicy]; if(nazwa_obiektu)then if(not tabela_listy_danych_analizy_ksiazki[nazwa_obiektu])then tabela_listy_danych_analizy_ksiazki[nazwa_obiektu]={}; end; end; end; return p; h2euefnt5bwgannyq0dpu0iuxr0ekwl 547509 547508 2026-07-11T10:44:04Z Persino 2851 547509 Scribunto text/plain local p={}; function p.CzyJestTakiProblemowyElement(self,element,element2,element3) if(not element2)then local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; return ((problemy and problemy[element]) and true or false); else if(not element3)then local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; local problemy_element=problemy and problemy[element]; return ((problemy and problemy_element and problemy_element[element2] ) and true or false); else local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; local problemy_element=problemy and problemy[element]; local problemy_element_element2=problemy_element and problemy_element[element2] return ((problemy and problemy_element and problemy_element_element2 and problemy_element_element2[element3] ) and true or false); end; end; end; function p.UstawTakiProblemowyElement(self,element,element2,element3) if(not self.tabela_listy_danych_analizy_ksiazki.problemy)then self.tabela_listy_danych_analizy_ksiazki.problemy={}; end; local problemy=self.tabela_listy_danych_analizy_ksiazki.problemy; if(not element2)then problemy[element]=0; else if(not problemy[element])then problemy[element]={}; end; local problemy_element=problemy[element]; if(not element3)then problemy_element[element2]=0; else if(not problemy_element[element2])then problemy_element[element2]={}; end; local problemy_element_element2=problemy_element[element2]; problemy_element_element2[element3]=0; end; end; end; function p.CzyJestTakiElementTabeliProblemu(self,element_tablicy, nazwa_obiektu, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki) local parametry_modul=require("Module:Parametry"); if(not self.tabela_listy_danych_analizy_ksiazki.problemy)then return false;end; local tabela_problemow=self.tabela_listy_danych_analizy_ksiazki.problemy["problemy książkowe"]; if(not tabela_problemow)then return false;end; local tablica_przestrzeni=tabela_problemow[nazwa_przestrzeni]; if(not tablica_przestrzeni)then return false;end; local tablica_nazwa_przestrzeni_ksiazki=tablica_przestrzeni[nazwa_przestrzeni_ksiazki]; if(not tablica_nazwa_przestrzeni_ksiazki)then return false;end; local tablica_nazwy_ksiazki=tablica_nazwa_przestrzeni_ksiazki[nazwa_ksiazki]; if(not tablica_nazwy_ksiazki)then return false;end; local tab_element=tablica_nazwy_ksiazki[element_tablicy]; if(not tab_element)then return false;end; if(nazwa_obiektu)then if(not tab_element[nazwa_obiektu])then return false;end; end; return true; end; function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki) local tabela_listy_danych_analizy_ksiazki=self.tabela_listy_danych_analizy_ksiazki; if(not tabela_listy_danych_analizy_ksiazki.problemy)then tabela_listy_danych_analizy_ksiazki.problemy={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki.problemy; if(not tabela_listy_danych_analizy_ksiazki["problemy książkowe"])then tabela_listy_danych_analizy_ksiazki["problemy książkowe"]={};end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki["problemy książkowe"]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni])then tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni]={};end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki])then tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_przestrzeni_ksiazki]; if(not tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki])then tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[nazwa_ksiazki]; if(not tabela_listy_danych_analizy_ksiazki[element_tablicy])then tabela_listy_danych_analizy_ksiazki[element_tablicy]={}; end; tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki[element_tablicy]; if(nazwa_obiektu)then if(not tabela_listy_danych_analizy_ksiazki[nazwa_obiektu])then tabela_listy_danych_analizy_ksiazki[nazwa_obiektu]={}; end; end; end; return p; g9a3x1iig26t2sa9l4dserlpzk6olh9 Wikibooks:Moduły/StronicowyParser 4 63511 547495 547450 2026-07-10T15:03:02Z Persino 2851 /* Spis treści */ 547495 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje stronicowego parsera służące do analizu uchwytów i ich numerowania, do przydzielenia uchwytom, pewnych rozdziałów, czy nawet pobieranie, za pomocą uchwytów. Też służy do ładowania spisów treści przy pomocy jego funkcji. == Spis treści == * {{lru|Moduły/StronicowyParser}} procedur stronicowego parsera do numeracji obiektów i odniesień do nich, także operowanie na tak zebranych danych. ** {{lr|Moduły/StronicowyParser/Tom I|StronicowyParser - Tom I}} - funkcje główne stronicowego parsera, uruchamiane w stronicowych szablonach, które są zawarte w podkategoriach: {{lk2|Szablony stronicowe}}, * {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy}} - * {{lru|Moduły/StronicowyParser/GłównaFunkcjaZbieraniaDanychStron}} - * {{lru|Moduły/StronicowyParser/Kategorie}} - zwraca kategorie, tylko raz przetworzone i policzone, zgłaszane przez {{m|StronicowyParser}}, * {{lru|Moduły/StronicowyParser/NumerLubNazwaArtykułówKsiążek}} - * {{lru|Moduły/StronicowyParser/NumerLubNazwaNagłówkówKsiążek}} - * {{lru|Moduły/StronicowyParser/NumerObiektu}} - * {{lru|Moduły/StronicowyParser/NumeracjaObiektówStron}} - * {{lru|Moduły/StronicowyParser/Potrzebne}} - * {{lru|Moduły/StronicowyParser/Problemy}} - funkcje sprawdzania, czy jest taki, i dodawania problemów do tablicy, * {{lru|Moduły/StronicowyParser/Rozdziały}} - funkcje, do przygotowania tekstów spisów treści, do dalszej obróbki przez funkcje z: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}, * {{lru|Moduły/StronicowyParser/SpisTreści}} - spis treści dla jego podmodułów, ** {{lr|Moduły/StronicowyParser/SpisTreści/Tom I|SpisTreści - Tom I}} - funkcje do ładowania pojedynczego spisu treści, ** {{lr|Moduły/StronicowyParser/SpisTreści/Tom II|SpisTreści - Tom II}} - funkcje do ładowania jego, wielu, a nawet przygotowania dodatkowych elementów spisów, a mianowicie dalszych artykułów, * {{lru|Moduły/StronicowyParser/StronaSubst}} - strona, a w niej funkcje, do sprawdzania, czy dana podana strona jest stroną zbiorczą, ładuje kod strony zbiorczej dla szablonów {{s|StronaSubst}} i {{s|KsiążkaSubst}}, także przygotowuje wpisy do spisu treści {{s|Spis treści}} ({{s|Spis treści zwinięty}}), czy {{s|TOC}}, a nawet {{s|TOC limit}} * {{lru|Moduły/StronicowyParser/Tekst}} - są to funkcje do ładowania tekstu stron, nawet jego rekurencyjne, * {{lru|Moduły/StronicowyParser/ZbieranieDanychStron}} - moduł do zbierania informacji o aktualnej stronie, nie spisie treści, co do uchwytów pewnych obiektów i dalszych informacji o nich, * {{lru|Moduły/StronicowyParser/SzablonyTekstu}} - funkcje aktualizowania informacji specjalne dla szablonów {{s|PobierzŚródtekst}} na podstawie informacji w szablonach {{s|Śródtekst}} w tym samym lub na innej stronie artykułu książki, czy na innej stronie nieartykularnej (książkowej), * {{lru|Moduły/StronicowyParser/informacje}} - moduł ładujący informacje o danej stronie, dołączony raz na całą nią, * {{lru|Moduły/StronicowyParser/obiekty}} - zestaw stałych tablicowych ładowanych raz na całą stronę. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7c6totyh1dp68382y9jk15ehshfzdq3 547496 547495 2026-07-10T15:11:13Z Persino 2851 /* Spis treści */ 547496 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje stronicowego parsera służące do analizu uchwytów i ich numerowania, do przydzielenia uchwytom, pewnych rozdziałów, czy nawet pobieranie, za pomocą uchwytów. Też służy do ładowania spisów treści przy pomocy jego funkcji. == Spis treści == * {{lru|Moduły/StronicowyParser}} procedur stronicowego parsera do numeracji obiektów i odniesień do nich, także operowanie na tak zebranych danych. ** {{lr|Moduły/StronicowyParser/Tom I|StronicowyParser - Tom I}} - funkcje główne stronicowego parsera, uruchamiane w stronicowych szablonach, które są zawarte w podkategoriach: {{lk2|Szablony stronicowe}}, * {{lru|Moduły/StronicowyParser/AnalizaSpisuRzeczy}} - * {{lru|Moduły/StronicowyParser/GłównaFunkcjaZbieraniaDanychStron}} - * {{lru|Moduły/StronicowyParser/Kategorie}} - zwraca kategorie, tylko raz przetworzone i policzone, zgłaszane przez {{m|StronicowyParser}}, * {{lru|Moduły/StronicowyParser/NumerLubNazwaArtykułówKsiążek}} - * {{lru|Moduły/StronicowyParser/NumerLubNazwaNagłówkówKsiążek}} - * {{lru|Moduły/StronicowyParser/NumerObiektu}} - * {{lru|Moduły/StronicowyParser/NumeracjaObiektówStron}} - * {{lru|Moduły/StronicowyParser/Potrzebne}} - * {{lru|Moduły/StronicowyParser/Problemy}} - funkcje sprawdzania, czy jest taki, i dodawania, problemów do tablicy, * {{lru|Moduły/StronicowyParser/Rozdziały}} - funkcje, do przygotowania tekstów spisów treści, do dalszej obróbki przez funkcje z: {{Code|{{ld2|StronicowyParser/SpisTreści}}}}, * {{lru|Moduły/StronicowyParser/SpisTreści}} - spis treści dla jego podmodułów, ** {{lr|Moduły/StronicowyParser/SpisTreści/Tom I|SpisTreści - Tom I}} - funkcje do ładowania pojedynczego spisu treści, ** {{lr|Moduły/StronicowyParser/SpisTreści/Tom II|SpisTreści - Tom II}} - funkcje do ładowania jego, wielu, a nawet przygotowania dodatkowych elementów spisów, a mianowicie dalszych artykułów, * {{lru|Moduły/StronicowyParser/StronaSubst}} - strona, a w niej funkcje, do sprawdzania, czy dana podana strona jest stroną zbiorczą, ładuje kod strony zbiorczej dla szablonów {{s|StronaSubst}} i {{s|KsiążkaSubst}}, także przygotowuje wpisy do spisu treści {{s|Spis treści}} ({{s|Spis treści zwinięty}}), czy {{s|TOC}}, a nawet {{s|TOC limit}} * {{lru|Moduły/StronicowyParser/Tekst}} - są to funkcje do ładowania tekstu stron, nawet jego rekurencyjne, * {{lru|Moduły/StronicowyParser/ZbieranieDanychStron}} - moduł do zbierania informacji o aktualnej stronie, nie spisie treści, co do uchwytów pewnych obiektów i dalszych informacji o nich, * {{lru|Moduły/StronicowyParser/SzablonyTekstu}} - funkcje aktualizowania informacji specjalne dla szablonów {{s|PobierzŚródtekst}} na podstawie informacji w szablonach {{s|Śródtekst}} w tym samym lub na innej stronie artykułu książki, czy na innej stronie nieartykularnej (książkowej), * {{lru|Moduły/StronicowyParser/informacje}} - moduł ładujący informacje o danej stronie, dołączony raz na całą nią, * {{lru|Moduły/StronicowyParser/obiekty}} - zestaw stałych tablicowych ładowanych raz na całą stronę. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> dj263cgmqbrl6vf5h1jqdu859i9cked Wikibooks:Moduły/StronicowyParser/Kategorie 4 63514 547472 547471 2026-07-10T12:22:00Z Persino 2851 /* Dalszy opis funkcji */ 547472 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> bxtjfnxitbjutc3p3p8w43y3bz5spe1 547473 547472 2026-07-10T12:23:50Z Persino 2851 /* Dalszy opis funkcji */ 547473 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> pc9xnb4oqbm7oslva1ki8jpkz36p0nh 547474 547473 2026-07-10T12:31:17Z Persino 2851 /* Dalszy opis funkcji */ 547474 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 9ngf1enq7uhsa5u627gzbdzvq0seo5d 547475 547474 2026-07-10T12:31:49Z Persino 2851 /* Dalszy opis funkcji */ 547475 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> d3pu6gax30y0tboefw7zmc2efj0alq8 547476 547475 2026-07-10T12:32:46Z Persino 2851 /* Dalszy opis funkcji */ 547476 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> b4xk5jggwb7d9ue3aowhack2pa7r8y1 547478 547476 2026-07-10T12:37:17Z Persino 2851 /* Dalszy opis funkcji */ 547478 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 8zzm6qy5ay4ob841flnvti7xddsbxqy 547479 547478 2026-07-10T12:58:07Z Persino 2851 /* Dalszy opis funkcji */ 547479 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{Code|Link}} i {{Code|Pobierz}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemów}}}}, dla nazwanych i nienazwanych. * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{Code|Link}} i {{Code|Pobierz}}, z brakiem uchwytów do obiektów nazwanych i nienazwanych. === Dalszy opis funkcji - część III === == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> nwmagmrbkeb6jwtat9jelvr8ciyd0oy 547480 547479 2026-07-10T12:58:45Z Persino 2851 /* Dalszy opis funkcji - część II */ 547480 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{Code|Link}} i {{Code|Pobierz}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, dla nazwanych i nienazwanych. * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{Code|Link}} i {{Code|Pobierz}}, z brakiem uchwytów do obiektów nazwanych i nienazwanych. === Dalszy opis funkcji - część III === == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> eavk5eir3fb1i8d07d7mb9qsjgkbppx 547481 547480 2026-07-10T13:00:14Z Persino 2851 /* Dalszy opis funkcji - część II */ 547481 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{Code|Link}} i {{Code|Pobierz}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{Code|Link}} i {{Code|Pobierz}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 495gd8tf3qhxdiv2d0qknlpd057pug1 547482 547481 2026-07-10T13:01:58Z Persino 2851 /* Dalszy opis funkcji - część II */ 547482 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mkf3hlq4uovno0sdsnhiwum1sc6cpw9 547483 547482 2026-07-10T13:09:23Z Persino 2851 /* Dalszy opis funkcji - część III */ 547483 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, sągenerowane kategorie, jeśli są ustawione któreś kodów problemów: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7e5vus30ropd2wkyjqi6h5lb3rsrr8y 547484 547483 2026-07-10T13:10:42Z Persino 2851 /* Dalszy opis funkcji - część III */ 547484 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, sągenerowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2twy6o29b234ghp7sfx1jwb8f7o0cb5 547485 547484 2026-07-10T13:14:53Z Persino 2851 /* Dalszy opis funkcji - część III */ 547485 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. === Dalszy opis funkcji - część IV === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. === Dalszy opis funkcji - zebrane nazwy stron kategorii === Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> b4w6anu197rdjfyy59nsw5fcmdaykvv 547486 547485 2026-07-10T13:36:15Z Persino 2851 /* {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} */ 547486 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. === Dalszy opis funkcji - część IV === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. === Dalszy opis funkcji - zebrane nazwy stron kategorii === Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{Patrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> lslsbev2nmb36oxv6kuh4m2bffvsx6k 547487 547486 2026-07-10T13:37:19Z Persino 2851 /* {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} */ 547487 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. === Dalszy opis funkcji - część IV === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. === Dalszy opis funkcji - zebrane nazwy stron kategorii === Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LInkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 2nk6ty2u8959zv12of1f6w44uilt2pw 547488 547487 2026-07-10T13:38:44Z Persino 2851 /* {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} */ 547488 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. === Dalszy opis funkcji - część IV === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. === Dalszy opis funkcji - zebrane nazwy stron kategorii === Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LInkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 27neynr1cxx7t0xp8uzprdl9qabkz2z 547489 547488 2026-07-10T13:39:09Z Persino 2851 /* {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} */ 547489 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji - część I === {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> === Dalszy opis funkcji - część II === Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. === Dalszy opis funkcji - część III === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. === Dalszy opis funkcji - część IV === Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. === Dalszy opis funkcji - zebrane nazwy stron kategorii === Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 81bcdtklxi7mwsnt6ic73vp0tfem2wi 547490 547489 2026-07-10T13:40:33Z Persino 2851 /* {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} */ 547490 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4ex6c8cbn1lix1ku367x2c3kru4ghyc 547491 547490 2026-07-10T13:42:42Z Persino 2851 /* Dalszy opis funkcji */ 547491 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === Tutaj są opisywane kody, które są wykorzystywane do zgłaszanych nazw kategorii, a te kody są ustawiane przez oprogramowanie '''Stronicowego parsera'''. ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> mds1xrinp0khdw8qphx8w0h134y04gf 547492 547491 2026-07-10T13:43:02Z Persino 2851 /* Dalszy opis funkcji */ 547492 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === Tutaj są opisywane kody, które są wykorzystywane do zgłaszanych nazw kategorii, a te kody są ustawiane przez oprogramowanie '''Stronicowego Parsera'''. ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 6bq0akij47tg0jegfbrzwivmqqw1wix 547493 547492 2026-07-10T13:46:31Z Persino 2851 /* {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} */ 547493 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === Tutaj są opisywane kody, które są wykorzystywane do zgłaszanych nazw kategorii, a te kody są ustawiane przez oprogramowanie '''Stronicowego Parsera'''. ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł, a właściwie funkcję: {{LinkŚródtytuł|p.InformacjeKategorie}}, z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> f618g92fmychytviw4tgzl0pdb6sf32 547497 547493 2026-07-11T04:01:35Z Persino 2851 /* {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} */ 547497 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy Parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === Tutaj są opisywane kody, które są wykorzystywane do zgłaszanych nazw kategorii, a te kody są ustawiane przez oprogramowanie '''Stronicowego Parsera'''. ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy liczba zebranych stron jest niepusta, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł, a właściwie funkcję: {{LinkŚródtytuł|p.InformacjeKategorie}}, z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 3zxe62fpq8gf9jajxqrlgsukbgg1w6z 547498 547497 2026-07-11T05:29:52Z Persino 2851 /* Dalszy opis funkcji - zebrane nazwy stron kategorii */ 547498 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Kategorie}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} Funkcje w tym module służą do zgłaszania kategorii zgłaszanych przez '''Stronicowy Parser''', poprzez proste wywołanie w szablonie: {{Code|{{m|StronicowyParser|WstawKategorie}}}}, który wywołuje funkcję: {{Code|{{m|StronicowyParser/Kategorie|WstawKategorie}}}}. Kategorie są liczone raz na cały moduł poprzez wywołanie w {{lpg|Lua}} w {{lpr|Lua|Scribunto}}, za pomocą funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}. == {{Śródtytuł|p.InformacjeKategorie}}{{Code|p.InformacjeKategorie}} == Funkcja do generowania kategorii generowane przez '''Stronicowy Parser'''. <syntaxhighlight lang="lua"> function p.InformacjeKategorie()...end; </syntaxhighlight> Parametry funkcji: * Brak. Uruchamiana jest funkcja tablicowa ładowana raz na całą stronę: <syntaxhighlight lang="lua"> local tabela_listy_danych_analizy_ksiazki=mw.loadData('Module:StronicowyParser/informacje').tablica_zebranych_danych_woluminowych; </syntaxhighlight> Wytłumaczenie zmiennych: * {{Code|tabela_listy_danych_analizy_ksiazki}} {{Patrz|tabela_listy_danych_analizy_ksiazki}} - tabela, z której są uzyskiwane dane o problemach, by uzyskać z niej wiedzę o kategoriach. Tej zmiennej tablicowej, jeśli nie istnieje jej podtablica o kluczu: {{Code|problemy}} {{Patrz|problemy}}, wtedy ta funkcja jest zakańczana. Ale jeśli dodatkowo jej podtablica o kluczu: {{Code|ktory_szablon_stronicowy_ma_zwracac_kategorie}} {{Patrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, nie istnieje, też wtedy funkcja jest zakańczana, pod warunkiem, jeśli poprzednim razem się nie zakończyła. Funkcja liczy nazwy ksiązki danego artykułu, tzn.: {{Code|nazwa_przestrzeni_nazw_strony}} {{Patrz|nazwa_przestrzeni_nazw_strony}}, {{Code|nazwa_przestrzeni_nazw_ksiazki_strony}} {{Patrz|nazwa_przestrzeni_nazw_ksiazki_strony}} i {{Code|nazwa_ksiazki_strony}} {{Patrz|nazwa_ksiazki_stronynazwa_ksiazki_strony}}, uzyskiwane z {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, z podzmiennych o kluczach kolejno: {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_woluminu}} {{Patrz|nazwa_przestrzeni_woluminu}} i {{Code|nazwa_woluminu}} {{Patrz|nazwa_woluminu}}. Dla poszczególnych przestrzeni książkowych, tzn.: {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{Np|User|link=tak}} (w przestrzeni użytkownika), {{Np|Project|link=tak}} (w niby przestrzeni nazw: '''{{ls2|Brudnopis}}/<użytkownik>/''') i dla innych przestrzeni użytkowych (niepodręcznikowych), są inicjowane zmienne: {{Code|strony_z_wielkiej_litery}} {{Patrz|strony_z_wielkiej_litery}} i {{Code|strony_z_malej_litery}} {{Patrz|strony_z_malej_litery}}, czyli pierwsza nazwa zaczyna się od duzej litery a druga od małej. === {{Śródtytuł|Czy_jest_taki_element_w_tabeli_problemow}}{{Code|Czy_jest_taki_element_w_tabeli_problemow}} === Funkcja sprawdza, czy taki problem istnieje w podanej tabeli. <syntaxhighlight lang="lua"> local function Czy_jest_taki_element_w_tabeli_problemow(element, tablica_nazwy_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|element}} {{Patrz|element}} - klucz danego problemu, * {{Code|tablica_nazwy_ksiazki}} {{Patrz|tablica_nazwy_ksiazki}} - tablica, w której szukamy problemu. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}{{Code|Dodaj_kategorie_naglowkuj_szczegolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony dołączonej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_szczegolne(kategoria_bledu,czesc_nazwy_kategorii)...end; </syntaxhighlight> Definicja skrótowa funkcji: * {{Code|kategoria_bledu}} {{Patrz|kategoria_bledu}} - kod problemu dla zgłaszania błędu w postaci kategorii, * {{Code|czesc_nazwy_kategorii}} {{Patrz|czesc_nazwy_kategorii}} - dokończenie nazwy strony zgłaszanej kategorii. === {{Śródtytuł|Dodaj_kategorie_naglowkuj_ogolne}}{{Code|Dodaj_kategorie_naglowkuj_ogolne}} === Funkcja służy do zgłaszania błędów w przypadku szablonu: {{s|Śródtytuł}} i {{s|LinkŚródtytuł}}, dotyczące strony korzystanej. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> local function Dodaj_kategorie_naglowkuj_ogolne(zmienna_korzystane,czesc_nazwy_kategorii)...end; </syntaxhighlight> Parameetry funkcji: * {{Code|zmienna_korzystane}} {{Patrz|zmienna_korzystane}} - kod problemu zgłaszanej kategorii, * {{Code|czesc_nazwy_kategorii}} - jak w: {{LinkPatrz|czesc_nazwy_kategorii}}. === Dalszy opis funkcji === Tutaj są opisywane kody, które są wykorzystywane do zgłaszanych nazw kategorii, a te kody są ustawiane przez oprogramowanie '''Stronicowego Parsera'''. ==== Dalszy opis funkcji - część I ==== {{Tab}}Dla podtablicy: {{LinkPatrz|problemy}}, dla jej też podtablicy dla klucza o nazwie: {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, sa generowane podkategorie. Kody zgłaszanych problemów: * {{Code|błędy uchwytów dołączonych stron}} {{Patrz|błędy uchwytów dołączonych stron}}, * {{Code|brak spisów treści do dołączonych stron}} {{Patrz|brak spisów treści do dołączonych stron}}, * {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{Patrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, * {{Code|dołączone strony główne nie istnieją}} {{Patrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych stron}}, są generowane kategorie, gdy nie są ustawione problemy: {{Code|brak spisów treści do dołączonych książek na ich stronach głównych}} {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}} i {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|brak spisów treści do dołączonych książek na ich stronach głównych}}, są generowanekategorie, gdy nie są ustawione problemy: {{Code|dołączone strony główne nie istnieją}} {{LinkPatrz|dołączone strony główne nie istnieją}}. Dla: {{LinkPatrz|dołączone strony główne nie istnieją}}, gdy strona (artykuł) nie należą do aktualnej książki. Jest uruchamiana funkcja: {{LinkŚródtytuł|Dodaj_kategorie_naglowkuj_szczegolne}}, którego wywołania są: <syntaxhighlight lang="lua"> Dodaj_kategorie_naglowkuj_szczegolne("powtórka nagłówek w stronie dołączonej","z wielokrotnymi użyciami szablonu nagłówka w jednym nagłówku"); Dodaj_kategorie_naglowkuj_szczegolne("nagłowek w tekście rozdziału w stronie dołączonej","z użyciami szablonu nagłówka w tekstach rozdziałów"); </syntaxhighlight> ==== Dalszy opis funkcji - część II ==== Dla obiektów z tablicy: {{Code|{{sr|#p.tablica_obiektowych_form|p=StronicowyParser/obiekty}}}}, jeśli są ustawione problemy do zgłoszenia, jeśli są ustawione, a one są: Kody zgłaszanych problemów dla elementów nazwanych i nienazwanych: * {{Code|błędy uchwytów korzystanych stron}} {{Patrz|błędy uchwytów korzystanych stron}} - dla wersji {{ZobaczTeż|LinkPobierzObiekt}} bez i z: {{Code|Link}} i {{Code|Pobierz}}, * {{Code|puste parametry szablonów stronicowych linkujących}} {{Patrz|puste parametry szablonów stronicowych linkujących}} - dla obiektów, nie: {{LinkZobaczTeż|LinkPobierzObiekt}}, z trzecim parametrem od: {{Code|1}} do {{Code|3}}, dla funkcji: {{Code|{{sr|#p.CzyJestTakiProblemowyElement|p=StronicowyParser/Problemy}}}}, * {{Code|brak uchwytu}} {{Patrz|brak uchwytu}} - dla elementów z: {{LinkZobaczTeż|LinkPobierzObiekt}}, z brakiem uchwytów do obiektów. ==== Dalszy opis funkcji - część III ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów, jeżeli ich wartości przyjmują wartość {{Code|0}}, czyli: * {{Code|nieprawidłowe nazwy korzystanych stron}} {{Patrz|nieprawidłowe nazwy korzystanych stron}}, * {{Code|nieprawidłowe nazwy stron dołączanych do stron}} {{Patrz|nieprawidłowe nazwy stron dołączanych do stron}}, * {{Code|strona nie istnieje}} {{Patrz|strona nie istnieje}}, * {{Code|błąd wewnętrzny modułu lua stronicowego parsera}} {{Patrz|błąd wewnętrzny modułu lua stronicowego parsera}}, * {{Code|niedozwolone znaki w spisach treści}} {{Patrz|niedozwolone znaki w spisach treści}}. ==== Dalszy opis funkcji - część IV ==== Dla tablicy o kluczu: {{LinkPatrz|problemy}}, są generowane kategorie, jeśli są ustawione któreś kodów problemów dla poszczególnych przestrzeni stron, w któreś one leżą: * {{Code|korzystana strona główna nie istnieje}} {{Patrz|korzystana strona główna nie istnieje}}. ==== Dalszy opis funkcji - zebrane nazwy stron kategorii ==== Gdy zbiór zebranych stron jest niepusty, wtedy te nazwy są wstawiane do funkcji: {{Code|{{sr|#p.Kategorie|p=Kategorie}}}}. == {{Śródtytuł|p.WstawKategorie}}{{Code|p.WstawKategorie}} == Gdy są ustawione zmienne szablonowe dziecka funkcji tej ramki, lub rodzica, wtedy dla zmiennych najpierw tego pierwszego, a później tego drugiego, ale parametrów o nazwach: {{Code|bez kategorii}} {{Patrz|bez kategorii}} i {{Code|dokumentacja}} {{Patrz|dokumentacja}}. Gdy dla {{LinkPatrz|tabela_listy_danych_analizy_ksiazki}}, gdy ustawione nie są problemy: {{LinkPatrz|problemy}} i {{LinkPatrz|ktory_szablon_stronicowy_ma_zwracac_kategorie}}, to funkcja idzie dalej, przeciwnie, ona się zakańcza. Jest liczona nazwa szablonu i kod uchwytu przy pomocy kodów kolejno: <syntaxhighlight lang="lua"> local nazwa_szablonu_rodzica=frame.args[2] or pf.args["nazwa szablonu rodzica"] or require("Module:Szablonowe").NazwaSzablonu(pf:getTitle()); </syntaxhighlight> Jeśli nie ma uchwytu, to funkcja się zakańcza, przeciwnie kod jego jest odkodowany z: {{Code|{{sr|#p.DecodeHtml|p=Html}}}}. Wtedy są liczone zmienne na podstawie: <syntaxhighlight lang="lua"> local ktory_szablon_stronicowy_ma_zwracac_kategorie1=nazwa_szablonu_rodzica..":"..kod_uchwytu; local ktory_szablon_stronicowy_ma_zwracac_kategorie2=tabela_listy_danych_analizy_ksiazki.ktory_szablon_stronicowy_ma_zwracac_kategorie; </syntaxhighlight> Jeżeli obie te zmienne są policzone i są sobie równe, wtedy kod idzie do instrukcji warunkowej, wywołując przy pomocy funkcji: {{Code|{{lz|s=https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/pl|g=mw.loadData|b=tak}}}}, wywołując ten opisywany moduł, a właściwie funkcję: {{LinkŚródtytuł|p.InformacjeKategorie}}, z poziomu modułu: {{Code|{{ld2|StronicowyParser/InformacjeKategorie}}}}, wtedy otrzymujemy tablicę, z którego liczymy podtablicę o kluczu: {{Code|informacje_o_kategoriach_stronicowego_parsera}} {{Patrz|informacje_o_kategoriach_stronicowego_parsera}}, który zawiera policzone raz na stronę wszystkie kategorie zgłoszone przez '''Stronicowy Parser''', które są zwracane przez tą funkcję. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> lxmja6h6lra9bwdq5gealbrgii7in9r Wikibooks:Moduły/StronicowyParser/Problemy 4 63520 547494 542190 2026-07-10T14:37:26Z Persino 2851 547494 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> nsymlhsni536oixycwc2njw24yqg1xl 547499 547494 2026-07-11T09:42:21Z Persino 2851 /* {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} */ 547499 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 1ya0k0vhe0gp63rcc31yvffew1nwk0d 547500 547499 2026-07-11T09:47:10Z Persino 2851 /* {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} */ 547500 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 7nyedg6dlgq5stimurii0rwyplnpkkw 547501 547500 2026-07-11T09:47:51Z Persino 2851 /* {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} */ 547501 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> ef2mhvmq9t44hq81yflacqsroyq206l 547502 547501 2026-07-11T09:48:31Z Persino 2851 /* {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} */ 547502 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 4lp3hqq9aaocssqdxzyba1cjgdcmpde 547503 547502 2026-07-11T10:02:32Z Persino 2851 /* {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} */ 547503 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja ustawia dany problem dla pewnych nazw charakteryzujący daną książkę. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - kod danego problemu, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element}}, jest sprawdzane, czy taki element iostnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> cv3z2dbadr6o8zk91932ow5toaos71g 547504 547503 2026-07-11T10:04:12Z Persino 2851 /* {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} */ 547504 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja sprawdza, czy taki dany problem dla pewnych nazw charakteryzujący daną książkę jest ustawiony w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - kod danego problemu, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element}}, jest sprawdzane, czy taki element iostnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> 48ixqb8ctle7dz85hqy32hm47wbxkpx 547505 547504 2026-07-11T10:22:56Z Persino 2851 /* {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} */ 547505 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja sprawdza, czy taki dany problem dla pewnych nazw charakteryzujący daną książkę jest ustawiony w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - kod danego problemu, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element}}, jest sprawdzane, czy taki element iostnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == Funkcja ustawia, taki dany problem dla pewnych nazw charakteryzujący daną książkę, w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} - jak w: {{LinkPatrz|element_tablicy}}, * {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa obiektu, jeśli istnieje, * {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} - kolejno jak w: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza problemu: {{LinkPatrz|element}}, dla nazwy obiektu, jeśli istnieje: {{LinkPatrz|nazwa_obiektu}}, jest ustawiana tablica pusta, aby ustawić dany problem. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> tcw6s9z9r6n7yt2dq76w0rip1ugvns3 547506 547505 2026-07-11T10:24:08Z Persino 2851 /* {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} */ 547506 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja sprawdza, czy taki dany problem dla pewnych nazw charakteryzujący daną książkę jest ustawiony w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element, nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - kod danego problemu, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element}}, jest sprawdzane, czy taki element iostnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == Funkcja ustawia, taki dany problem dla pewnych nazw charakteryzujący daną książkę, w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} {{Patrz|element_tablicy}} - kod danego problemu, * {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa obiektu, jeśli istnieje, * {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} - kolejno jak w: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{LinkPatrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza problemu: {{LinkPatrz|element}}, dla nazwy obiektu, jeśli istnieje: {{LinkPatrz|nazwa_obiektu}}, jest ustawiana tablica pusta, aby ustawić dany problem. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> aoxp6fthyeorr2sw8sbapzdvv47lsco 547510 547506 2026-07-11T10:50:58Z Persino 2851 547510 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja sprawdza, czy taki dany problem dla pewnych nazw charakteryzujący daną książkę jest ustawiony w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} - kod danego problemu, * {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa obiektu, jeśli istnieje, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element_tablicy}}, jest sprawdzane, czy taki element istnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach, i jest zwracane przez funkcję wartość, czy takie jest, co zrewidowano, a jeśli dalszy element do {{LinkPatrz|nazwa_obiektu}}, nie istnieje, przeciwnie dla: {{LinkPatrz|nazwa_obiektu}}, jeśli został podany, sprawdzane jest, czy taki element istnieje, i jest zwracany tego wynik. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == Funkcja ustawia, taki dany problem dla pewnych nazw charakteryzujący daną książkę, w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} - jak w: {{LinkPatrz|element_tablicy}}, * {{Code|nazwa_obiektu}} -jak w: {{LinkPatrz|nazwa_obiektu}}, * {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} - kolejno jak w: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{LinkPatrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza problemu: {{LinkPatrz|element}}, dla nazwy obiektu, jeśli istnieje: {{LinkPatrz|nazwa_obiektu}}, jest ustawiana tablica pusta, aby ustawić dany problem. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> rsu1c30mfmh70s9vjw6btd889qv6wps 547511 547510 2026-07-11T10:51:38Z Persino 2851 /* {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} */ 547511 wikitext text/x-wiki <noinclude>{{ProstaStronaStart | nagłówek = {{Podrozdział|{{ld2|StronicowyParser/Problemy}}|Dokumentacja modułów {{lpg|Lua}} w {{lpr|Lua|Scribunto}}.}}{{Autonawigacja|Pomoc:Spis treści}} | stopka strony = {{StopkaSpisTreści}}{{Podrozdział|Koniec}} }}</noinclude> {{Spis treści}} == {{Śródtytuł|p.CzyJestTakiProblemowyElement}}{{Code|p.CzyJestTakiProblemowyElement}} == Funkcja sprawdza maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, czy taki problem istnieje. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} {{Patrz|self}} - zmienna obiektowa funkcji modułu danej tablicy, * {{Code|element}} {{Patrz|element}} - pierwszy {{ZobaczTeż|element}} element tablicy wielowymiarowej kluczy problemów, on na pewno musi istnieć, * {{Code|element2}} {{Patrz|element2}} - drugi, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}, przeciwnie, dalszych nie uwzględniamy, * {{Code|element3}} {{Patrz|element3}} - trzeci, jeśli istnieje, element traktowany podobnie jak w: {{LinkZobaczTeż|element}}. Funkcja dla tablicy: {{Code|self.tabela_listy_danych_analizy_ksiazki}} {{Patrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{Code|problemy}} {{Patrz|problemy}}, jest sprawdzana elementami kluczy wielowymiarych, czy taki problem istnieje. == {{Śródtytuł|p.UstawTakiProblemowyElement}}{{Code|p.UstawTakiProblemowyElement}} == Funkcja ustawia maksymalnie od jednego do trzech elementów kluczy tablicy wielowymiarowej, dany kod problemu w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.UstawTakiProblemowyElement(self,element,element2,element3)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element}} - jak w: {{LinkPatrz|element}}, * {{Code|element2}} - jak w: {{LinkPatrz|element2}}, * {{Code|element3}} - jak w: {{LinkPatrz|element3}}. Funkcja dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla jej podtablicy o kluczu: {{LinkPatrz|problemy}}, ustawia dany kod problemu. == {{Śródtytuł|p.CzyJestTakiElementTabeliProblemu}}{{Code|p.CzyJestTakiElementTabeliProblemu}} == Funkcja sprawdza, czy taki dany problem dla pewnych nazw charakteryzujący daną książkę jest ustawiony w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.CzyJestTakiElementTabeliProblemu(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni, nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} {{Patrz|element_tablicy}} - kod danego problemu, * {{Code|nazwa_obiektu}} {{Patrz|nazwa_obiektu}} - nazwa obiektu, jeśli istnieje, * {{Code|nazwa_przestrzeni}} {{Patrz|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} {{Patrz|nazwa_przestrzeni_ksiazki}}, {{Code|nazwa_ksiazki}} {{Patrz|nazwa_ksiazki}} - kolejno: nazwa przestrzeni nazw, nazwa przestrzeni książki i nazwa książki. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{Patrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza: {{LinkPatrz|element_tablicy}}, jest sprawdzane, czy taki element istnieje, jeżeli w ogólne wcześniejsze elementy kluczy zostały ustawione w większych podtablicach, i jest zwracane przez funkcję wartość, czy takie jest, co zrewidowano, a jeśli dalszy element do {{LinkPatrz|nazwa_obiektu}}, nie istnieje, przeciwnie dla: {{LinkPatrz|nazwa_obiektu}}, jeśli został podany, sprawdzane jest, czy taki element istnieje, i jest zwracany tego wynik. == {{Śródtytuł|p.DodawanieProblemowegoElementuDoTablicy}}{{Code|p.DodawanieProblemowegoElementuDoTablicy}} == Funkcja ustawia, taki dany problem dla pewnych nazw charakteryzujący daną książkę, w tablicy problemów. Definicja skrótowa funkcji: <syntaxhighlight lang="lua"> function p.DodawanieProblemowegoElementuDoTablicy(self,element_tablicy,nazwa_obiektu,nazwa_przestrzeni,nazwa_przestrzeni_ksiazki,nazwa_ksiazki)...end; </syntaxhighlight> Parametry funkcji: * {{Code|self}} - jak w: {{LinkPatrz|self}}, * {{Code|element_tablicy}} - jak w: {{LinkPatrz|element_tablicy}}, * {{Code|nazwa_obiektu}} -jak w: {{LinkPatrz|nazwa_obiektu}}, * {{Code|nazwa_przestrzeni}}, {{Code|nazwa_przestrzeni_ksiazki}} i {{Code|nazwa_ksiazki}} - kolejno jak w: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}. Dla tablicy: {{LinkPatrz|self.tabela_listy_danych_analizy_ksiazki}}, dla podtablicy o kluczu wielowymiarowej: {{LinkPatrz|problemy}} i {{Code|problemy książkowe}} {{LinkPatrz|problemy książkowe}}, dla innych elementów tej tablicy kluczy nazw: {{LinkPatrz|nazwa_przestrzeni}}, {{LinkPatrz|nazwa_przestrzeni_ksiazki}} i {{LinkPatrz|nazwa_ksiazki}}, dla dalszego klucza problemu: {{LinkPatrz|element}}, dla nazwy obiektu, jeśli istnieje: {{LinkPatrz|nazwa_obiektu}}, jest ustawiana tablica pusta, aby ustawić dany problem. {{BrClear}} <noinclude><!-- -->{{ProstaStronaKoniec}}<!-- -->{{Kategoria|Opisy funkcji, w Lua w Scribunto, w modułach}}<!-- --></noinclude> oohbs3m2sqp9j4nifx6kxvazem24uhr